All Downloads are FREE. Search and download functionalities are using the official Maven repository.

web-interface.assets.b6fe2bb5-2556.4595b8063f0f31cb9324.js.map Maven / Gradle / Ivy

{"version":3,"file":"b6fe2bb5-2556.4595b8063f0f31cb9324.js","mappings":"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","sources":["webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/SourceViewModal.jsx","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/ImportsViewModal.jsx","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/ConfigurationForm.jsx","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/TemplatesHelper.jsx","webpack://graylog-web-interface/./src/stores/sidecars/ConfigurationVariableStore.js","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/ConfigurationHelper.css?5d5b","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/EditConfigurationVariableModal.jsx","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/ConfigurationVariablesHelper.jsx","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/ConfigurationHelper.jsx","webpack://graylog-web-interface/./src/components/sidecars/configuration-forms/ConfigurationHelper.css"],"sourcesContent":["/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport lodash from 'lodash';\n\nimport { Modal, Button, BootstrapModalWrapper } from 'components/bootstrap';\nimport { CollectorConfigurationsActions } from 'stores/sidecars/CollectorConfigurationsStore';\n\nclass SourceViewModal extends React.Component {\n  static propTypes = {\n    configurationId: PropTypes.string,\n    templateString: PropTypes.string,\n  };\n\n  static defaultProps = {\n    configurationId: undefined,\n    templateString: undefined,\n  };\n\n  static initialState = {\n    source: undefined,\n    name: undefined,\n  };\n\n  constructor(props) {\n    super(props);\n    this.state = SourceViewModal.initialState;\n  }\n\n  componentDidUpdate(prevProps) {\n    if (!lodash.isEqual(this.state, SourceViewModal.initialState) && !lodash.isEqual(prevProps, this.props)) {\n      this.resetState();\n    }\n  }\n\n  resetState = () => {\n    this.setState(SourceViewModal.initialState);\n  };\n\n  open = () => {\n    this._loadConfiguration();\n    this.sourceModal.open();\n  };\n\n  hide = () => {\n    this.sourceModal.close();\n  };\n\n  _loadConfiguration = () => {\n    // Don't load anything if neither template nor configuration ID are set\n    if (!this.props.templateString && !this.props.configurationId) {\n      return;\n    }\n\n    if (this.props.templateString) {\n      CollectorConfigurationsActions.renderPreview(this.props.templateString)\n        .then(\n          (response) => {\n            this.setState({ source: response.preview, name: 'preview' });\n          },\n          (error) => {\n            this.setState({ source: `Error rendering preview: ${error.responseMessage ? error.responseMessage : error}` });\n          },\n        );\n    } else {\n      CollectorConfigurationsActions.getConfiguration(this.props.configurationId)\n        .then(\n          (configuration) => {\n            this.setState({ source: configuration.template, name: configuration.name });\n          },\n          (error) => {\n            this.setState({ source: `Error fetching configuration: ${error.responseMessage || error}` });\n          },\n        );\n    }\n  };\n\n  render() {\n    return (\n       { this.sourceModal = c; }}>\n        \n          Configuration {this.state.name}\n        \n        \n          
\n
\n              {this.state.source || ''}\n            
\n
\n
\n \n \n \n
\n );\n }\n}\n\nexport default SourceViewModal;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Button, Alert, Modal, Tooltip } from 'components/bootstrap';\nimport { OverlayTrigger, PaginatedList, Spinner, Timestamp, Icon } from 'components/common';\nimport BootstrapModalWrapper from 'components/bootstrap/BootstrapModalWrapper';\nimport UserNotification from 'util/UserNotification';\nimport { CollectorConfigurationsActions } from 'stores/sidecars/CollectorConfigurationsStore';\n\nclass ImportsViewModal extends React.Component {\n static propTypes = {\n onApply: PropTypes.func.isRequired,\n };\n\n static initialState = {\n uploads: undefined,\n totalUploads: 0,\n pagination: {\n page: 1,\n },\n };\n\n constructor(props) {\n super(props);\n this.state = ImportsViewModal.initialState;\n }\n\n PAGE_SIZE = 10;\n\n open = () => {\n this._loadUploads(this.state.pagination.page);\n this.uploadsModal.open();\n };\n\n hide = () => {\n this.uploadsModal.close();\n };\n\n _isLoading = () => {\n return !this.state.uploads;\n };\n\n _loadUploads = (page) => {\n CollectorConfigurationsActions.listUploads({ page: page })\n .then(\n (uploads) => {\n this.setState({ uploads: uploads.uploads, totalUploads: uploads.total });\n },\n (error) => {\n this.setState({ uploads: [], totalUploads: 0 });\n\n UserNotification.error(`Fetching uploads failed with error: ${error}`,\n 'Could not get configuration uploads');\n },\n );\n };\n\n _onApplyButton = (selectedUpload) => {\n this.props.onApply(selectedUpload);\n };\n\n _buildVariableName = (name) => {\n return `\\${sidecar.${name}}`;\n };\n\n _formatUpload(upload) {\n const tooltip = {upload.collector_id};\n\n return (\n \n \n \n {upload.node_id}\n \n \n {upload.collector_name}\n \n \n \n \n \n );\n }\n\n _formatModalBody() {\n if (this._isLoading()) {\n return (\n \n );\n }\n\n const pageSize = this.PAGE_SIZE;\n const { uploads, totalUploads } = this.state;\n const formattedUploads = uploads.map((upload) => (this._formatUpload(upload)));\n\n if (totalUploads === 0) {\n return (\n \n  \n There are no configuration uploads available. Please go to System -> Collectors (legacy) -> Details -> Import Configuration and import your first configuration. You need at least Sidecar version 0.1.8 to make this feature available.\n \n );\n }\n\n return (\n \n \n \n \n \n \n {formattedUploads}\n \n
SidecarCollectorCreatedAction
\n
\n );\n }\n\n render() {\n return (\n { this.uploadsModal = c; }}>\n \n Imports from the old Collector system\n Edit the imported configuration after pressing the Apply button by hand. Dynamic values like the node ID can be replaced with the variables system, e.g. {this._buildVariableName('nodeId')}\n \n \n {this._formatModalBody()}\n \n \n \n \n \n );\n }\n}\n\nexport default ImportsViewModal;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport createReactClass from 'create-react-class';\nimport Reflux from 'reflux';\nimport lodash from 'lodash';\n\nimport { ColorPickerPopover, Select, SourceCodeEditor } from 'components/common';\nimport { Button, ButtonToolbar, Col, ControlLabel, FormControl, FormGroup, HelpBlock, Row, Input } from 'components/bootstrap';\nimport history from 'util/History';\nimport Routes from 'routing/Routes';\nimport ColorLabel from 'components/sidecars/common/ColorLabel';\nimport { CollectorConfigurationsActions } from 'stores/sidecars/CollectorConfigurationsStore';\nimport { CollectorsActions, CollectorsStore } from 'stores/sidecars/CollectorsStore';\n\nimport SourceViewModal from './SourceViewModal';\nimport ImportsViewModal from './ImportsViewModal';\n\nconst ConfigurationForm = createReactClass({\n displayName: 'ConfigurationForm',\n\n propTypes: {\n action: PropTypes.oneOf(['create', 'edit']),\n configuration: PropTypes.object,\n configurationSidecars: PropTypes.object,\n },\n\n mixins: [Reflux.connect(CollectorsStore)],\n\n getDefaultProps() {\n return {\n action: 'edit',\n configuration: {\n color: '#FFFFFF',\n template: '',\n },\n configurationSidecars: {},\n };\n },\n\n getInitialState() {\n const { configuration } = this.props;\n\n return {\n error: false,\n validation_errors: {},\n formData: {\n id: configuration.id,\n name: configuration.name,\n color: configuration.color,\n collector_id: configuration.collector_id,\n template: configuration.template || '',\n },\n };\n },\n\n UNSAFE_componentWillMount() {\n this._debouncedValidateFormData = lodash.debounce(this._validateFormData, 200);\n },\n\n componentDidMount() {\n CollectorsActions.all();\n },\n\n defaultTemplates: {},\n\n _isTemplateSet(template) {\n return template !== undefined && template !== '';\n },\n\n _hasErrors() {\n const { error, formData } = this.state;\n\n return error || !this._isTemplateSet(formData.template);\n },\n\n _validateFormData(nextFormData, checkForRequiredFields) {\n CollectorConfigurationsActions.validate(nextFormData).then((validation) => {\n const nextValidation = lodash.clone(validation);\n\n if (checkForRequiredFields && !this._isTemplateSet(nextFormData.template)) {\n nextValidation.errors.template = ['Please fill out the configuration field.'];\n nextValidation.failed = true;\n }\n\n this.setState({ validation_errors: nextValidation.errors, error: nextValidation.failed });\n });\n },\n\n _save() {\n const { action } = this.props;\n const { formData } = this.state;\n\n if (this._hasErrors()) {\n // Ensure we display an error on the template field, as this is not validated by the browser\n this._validateFormData(formData, true);\n\n return;\n }\n\n if (action === 'create') {\n CollectorConfigurationsActions.createConfiguration(formData)\n .then(() => history.push(Routes.SYSTEM.SIDECARS.CONFIGURATION));\n } else {\n CollectorConfigurationsActions.updateConfiguration(formData);\n }\n },\n\n _formDataUpdate(key) {\n const { formData } = this.state;\n\n return (nextValue, _, hideCallback) => {\n const nextFormData = lodash.cloneDeep(formData);\n\n nextFormData[key] = nextValue;\n this._debouncedValidateFormData(nextFormData, false);\n this.setState({ formData: nextFormData }, hideCallback);\n };\n },\n\n replaceConfigurationVariableName(oldname, newname) {\n const { formData } = this.state;\n\n if (oldname === '' || oldname === newname) {\n return;\n }\n\n // replaceAll without having to use a Regex\n const updatedTemplate = formData.template.split(`\\${user.${oldname}}`).join(`\\${user.${newname}}`);\n\n this._onTemplateChange(updatedTemplate);\n },\n\n _onNameChange(event) {\n const nextName = event.target.value;\n\n this._formDataUpdate('name')(nextName);\n },\n\n _getCollectorDefaultTemplate(collectorId) {\n const storedTemplate = this.defaultTemplates[collectorId];\n\n if (storedTemplate !== undefined) {\n return new Promise((resolve) => resolve(storedTemplate));\n }\n\n return CollectorsActions.getCollector(collectorId).then((collector) => {\n this.defaultTemplates[collectorId] = collector.default_template;\n\n return collector.default_template;\n });\n },\n\n _onCollectorChange(nextId) {\n const { formData } = this.state;\n\n // Start loading the request to get the default template, so it is available asap.\n const defaultTemplatePromise = this._getCollectorDefaultTemplate(nextId);\n\n const nextFormData = lodash.cloneDeep(formData);\n\n nextFormData.collector_id = nextId;\n\n // eslint-disable-next-line no-alert\n if (!nextFormData.template || window.confirm('Do you want to use the default template for the selected Configuration?')) {\n // Wait for the promise to resolve and then update the whole formData state\n defaultTemplatePromise.then((defaultTemplate) => {\n this._onTemplateChange(defaultTemplate);\n nextFormData.template = defaultTemplate;\n });\n }\n\n this.setState({ formData: nextFormData });\n },\n\n _onTemplateImport(nextTemplate) {\n const { formData } = this.state;\n\n const nextFormData = lodash.cloneDeep(formData);\n\n // eslint-disable-next-line no-alert\n if (!nextFormData.template || window.confirm('Do you want to overwrite your current work with this Configuration?')) {\n this._onTemplateChange(nextTemplate);\n }\n },\n\n _onTemplateChange(nextTemplate) {\n this._formDataUpdate('template')(nextTemplate);\n },\n\n _onSubmit(event) {\n event.preventDefault();\n this._save();\n },\n\n _onCancel() {\n history.goBack();\n },\n\n _onShowSource() {\n this.previewModal.open();\n },\n\n _onShowImports() {\n this.uploadsModal.open();\n },\n\n _formatCollector(collector) {\n return collector ? `${collector.name} on ${lodash.upperFirst(collector.node_operating_system)}` : 'Unknown collector';\n },\n\n _formatCollectorOptions() {\n const { collectors } = this.state;\n\n const options = [];\n\n if (collectors) {\n collectors.forEach((collector) => {\n options.push({ value: collector.id, label: this._formatCollector(collector) });\n });\n } else {\n options.push({ value: 'none', label: 'Loading collector list...', disable: true });\n }\n\n return options;\n },\n\n _formatValidationMessage(fieldName, defaultText) {\n const { validation_errors: validationErrors } = this.state;\n\n if (validationErrors[fieldName]) {\n return {validationErrors[fieldName][0]};\n }\n\n return {defaultText};\n },\n\n _validationState(fieldName) {\n const { validation_errors: validationErrors } = this.state;\n\n if (validationErrors[fieldName]) {\n return 'error';\n }\n\n return null;\n },\n\n _renderCollectorTypeField(collectorId, collectors, configurationSidecars) {\n const isConfigurationInUse = configurationSidecars.sidecar_ids && configurationSidecars.sidecar_ids.length > 0;\n\n if (isConfigurationInUse) {\n const collector = collectors ? collectors.find((c) => c.id === collectorId) : undefined;\n\n return (\n \n {this._formatCollector(collector)}\n \n Note: Log Collector cannot change while the Configuration is in use. Clone the Configuration\n to test it using another Collector.\n \n \n );\n }\n\n return (\n \n \n\n \n Configuration color\n
\n \n
\n Change color}\n onChange={this._formDataUpdate('color')} />\n
\n
\n Choose a color to use for this configuration.\n
\n\n \n Collector\n {this._renderCollectorTypeField(formData.collector_id, collectors, configurationSidecars)}\n \n\n \n Configuration\n \n \n \n \n {this._formatValidationMessage('template', 'Required. Collector configuration, see quick reference for more information.')}\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n { this.previewModal = c; }}\n templateString={formData.template} />\n { this.uploadsModal = c; }}\n onApply={this._onTemplateImport} />\n
\n );\n },\n});\n\nexport default ConfigurationForm;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport React from 'react';\n\nimport { Table } from 'components/bootstrap';\n\nclass TemplatesHelper extends React.Component {\n _buildVariableName = (name) => {\n return `\\${sidecar.${name}}`;\n };\n\n render() {\n return (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
NameDescription
{this._buildVariableName('operatingSystem')}Name of the operating system the sidecar is running on, e.g. "Linux", "Windows"
{this._buildVariableName('nodeName')}The name of the sidecar, defaults to hostname if not set.
{this._buildVariableName('nodeId')}UUID of the sidecar.
{this._buildVariableName('sidecarVersion')}Version string of the running sidecar.
\n
\n );\n }\n}\n\nexport default TemplatesHelper;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport Reflux from 'reflux';\nimport lodash from 'lodash';\n\nimport * as URLUtils from 'util/URLUtils';\nimport UserNotification from 'util/UserNotification';\nimport fetch from 'logic/rest/FetchProvider';\nimport { singletonStore, singletonActions } from 'logic/singleton';\n\nexport const ConfigurationVariableActions = singletonActions(\n 'core.ConfigurationVariable',\n () => Reflux.createActions({\n all: { asyncResult: true },\n save: { asyncResult: true },\n delete: { asyncResult: true },\n validate: { asyncResult: true },\n getConfigurations: { asyncResult: true },\n }),\n);\n\nexport const ConfigurationVariableStore = singletonStore(\n 'core.ConfigurationVariable',\n () => Reflux.createStore({\n listenables: [ConfigurationVariableActions],\n sourceUrl: '/sidecar/configuration_variables',\n\n all() {\n const promise = fetch('GET', URLUtils.qualifyUrl(this.sourceUrl));\n\n promise\n .catch(\n (error) => {\n UserNotification.error(`Fetching configuration variables failed with status: ${error}`,\n 'Could not retrieve configuration variables');\n },\n );\n\n ConfigurationVariableActions.all.promise(promise);\n },\n\n save(configurationVariable) {\n const request = {\n id: configurationVariable.id,\n name: configurationVariable.name,\n description: configurationVariable.description,\n content: configurationVariable.content,\n };\n\n let url = URLUtils.qualifyUrl(`${this.sourceUrl}`);\n let method;\n let action;\n\n if (configurationVariable.id === '') {\n method = 'POST';\n action = 'created';\n } else {\n url += `/${configurationVariable.id}`;\n method = 'PUT';\n action = 'updated';\n }\n\n const promise = fetch(method, url, request);\n\n promise\n .then(() => {\n UserNotification.success(`Configuration variable \"${configurationVariable.name}\" successfully ${action}`);\n }, (error) => {\n UserNotification.error(`Saving variable \"${configurationVariable.name}\" failed with status: ${error.message}`,\n 'Could not save variable');\n });\n\n ConfigurationVariableActions.save.promise(promise);\n },\n\n getConfigurations(configurationVariable) {\n const url = URLUtils.qualifyUrl(`${this.sourceUrl}/${configurationVariable.id}/configurations`);\n const promise = fetch('GET', url);\n\n promise.catch(\n (error) => {\n UserNotification.error(`Fetching configurations for this variable failed with status: ${error}`);\n },\n );\n\n ConfigurationVariableActions.getConfigurations.promise(promise);\n },\n\n delete(configurationVariable) {\n const url = URLUtils.qualifyUrl(`${this.sourceUrl}/${configurationVariable.id}`);\n const promise = fetch('DELETE', url);\n\n promise\n .then(() => {\n UserNotification.success(`Configuration variable \"${configurationVariable.name}\" successfully deleted`);\n }, (error) => {\n UserNotification.error(`Deleting variable \"${configurationVariable.name}\" failed with status: ${error.message}`,\n 'Could not delete variable');\n });\n\n ConfigurationVariableActions.delete.promise(promise);\n },\n\n validate(configurationVariable) {\n // set minimum api defaults for faster validation feedback\n const payload = {\n id: ' ',\n name: ' ',\n content: ' ',\n };\n\n lodash.merge(payload, configurationVariable);\n\n const promise = fetch('POST', URLUtils.qualifyUrl(`${this.sourceUrl}/validate`), payload);\n\n promise.catch(\n (error) => {\n UserNotification.error(`Validating variable \"${configurationVariable.name}\" failed with status: ${error.message}`,\n 'Could not validate variable');\n },\n );\n\n ConfigurationVariableActions.validate.promise(promise);\n },\n\n }),\n);\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!./ConfigurationHelper.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!./ConfigurationHelper.css\";\n export default content && content.locals ? content.locals : undefined;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport { debounce, cloneDeep } from 'lodash';\nimport React from 'react';\n\nimport { Button, BootstrapModalForm, Input } from 'components/bootstrap';\nimport { ConfigurationVariableActions } from 'stores/sidecars/ConfigurationVariableStore';\n\nimport ConfigurationHelperStyle from './ConfigurationHelper.css';\n\nclass EditConfigurationVariableModal extends React.Component {\n static propTypes = {\n create: PropTypes.bool,\n id: PropTypes.string,\n name: PropTypes.string,\n description: PropTypes.string,\n content: PropTypes.string,\n saveConfigurationVariable: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n create: false,\n id: '',\n name: '',\n description: '',\n content: '',\n };\n\n constructor(props) {\n super(props);\n this.state = this._cleanState();\n }\n\n _cleanState = () => {\n const { name, id, description, content } = this.props;\n\n return {\n error: false,\n validation_errors: {},\n savedName: name,\n formData: {\n id,\n name,\n description,\n content,\n },\n };\n };\n\n _hasErrors = () => {\n const { error } = this.state;\n\n return error;\n };\n\n openModal = () => {\n this.setState(this._cleanState());\n this.modal.open();\n };\n\n _getId = (prefixIdName) => {\n const { id } = this.state;\n\n return `${prefixIdName} ${id}` || 'new';\n };\n\n _saved = () => {\n this.modal.close();\n };\n\n _validateFormData = (nextFormData) => {\n ConfigurationVariableActions.validate(nextFormData).then((validation) => {\n this.setState({ validation_errors: validation.errors, error: validation.failed });\n });\n };\n\n // Needs to be after _validateFormData is defined\n // eslint-disable-next-line react/sort-comp\n _debouncedValidateFormData = debounce(this._validateFormData, 200);\n\n _formDataUpdate = (key) => {\n const { formData } = this.state;\n\n return (nextValue) => {\n const nextFormData = cloneDeep(formData);\n\n nextFormData[key] = nextValue;\n this._debouncedValidateFormData(nextFormData);\n this.setState({ formData: nextFormData });\n };\n };\n\n _save = () => {\n const { formData, savedName } = this.state;\n const { saveConfigurationVariable } = this.props;\n\n if (this._hasErrors()) {\n // Ensure we display an error on the content field, as this is not validated by the browser\n this._validateFormData(formData);\n\n return;\n }\n\n saveConfigurationVariable(formData, savedName, this._saved);\n };\n\n _handleInputChange = (event) => {\n this._formDataUpdate(event.target.name)(event.target.value);\n };\n\n _formatValidationMessage = (fieldName, defaultText) => {\n const { validation_errors: validationErrors } = this.state;\n\n if (validationErrors[fieldName]) {\n return {validationErrors[fieldName][0]};\n }\n\n return {defaultText};\n };\n\n _validationState = (fieldName) => {\n const { validation_errors: validationErrors } = this.state;\n\n if (validationErrors[fieldName]) {\n return 'error';\n }\n\n return null;\n };\n\n render() {\n const { create } = this.props;\n const { formData } = this.state;\n\n let triggerButtonContent;\n\n if (create) {\n triggerButtonContent = 'Create Variable';\n } else {\n triggerButtonContent = Edit;\n }\n\n return (\n <>\n \n { this.modal = ref; }}\n title={<>{create ? 'Create' : 'Edit'} Variable ${user.{formData.name}}}\n onSubmitForm={this._save}\n onModalClose={this._cleanState}\n submitButtonDisabled={this._hasErrors()}\n submitButtonText=\"Save\">\n
\n \n Description (Optional)}\n name=\"description\"\n defaultValue={formData.description}\n onChange={this._handleInputChange}\n help=\"Type a description for this variable\"\n spellCheck={false} />\n \n
\n
\n \n );\n }\n}\n\nexport default EditConfigurationVariableModal;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport Routes from 'routing/Routes';\nimport { Spinner } from 'components/common';\nimport { Button, Alert, Table, Modal, BootstrapModalConfirm, BootstrapModalWrapper } from 'components/bootstrap';\nimport { ConfigurationVariableActions } from 'stores/sidecars/ConfigurationVariableStore';\n\nimport EditConfigurationVariableModal from './EditConfigurationVariableModal';\nimport ConfigurationHelperStyle from './ConfigurationHelper.css';\n\nclass ConfigurationVariablesHelper extends React.Component {\n static propTypes = {\n onVariableRename: PropTypes.func.isRequired,\n };\n\n state = {\n configurationVariables: undefined,\n errorModalContent: {},\n variableToDelete: {},\n };\n\n componentDidMount() {\n this._reloadVariables();\n }\n\n _reloadVariables = () => {\n ConfigurationVariableActions.all()\n .then((configurationVariables) => {\n this.setState({ configurationVariables: configurationVariables });\n });\n };\n\n _closeErrorModal = () => {\n this.errorModal.close();\n };\n\n _renderConfigList = (configurations) => {\n return (\n \n );\n };\n\n _handleDeleteConfirm = () => {\n const { variableToDelete } = this.state;\n\n ConfigurationVariableActions.delete(variableToDelete)\n .then(() => this._onSuccessfulUpdate(() => this.deleteConfirmModal.close()));\n };\n\n _handleDeleteCheck = (configVar) => {\n return () => {\n this.setState({ variableToDelete: configVar });\n\n ConfigurationVariableActions.getConfigurations(configVar).then((response) => {\n // Variable still in use: Report error\n if (response.length > 0) {\n this.setState({ errorModalContent: this._renderConfigList(response) });\n this.errorModal.open();\n // Not in use, ask for confirmation\n } else {\n this.deleteConfirmModal.open();\n }\n });\n };\n };\n\n _configurationVariableListBuilder = () => {\n const variableRows = [];\n const { configurationVariables } = this.state;\n\n Object.values(configurationVariables).forEach((configVar) => {\n const escapedName = `\\${user.${configVar.name}}`;\n\n variableRows.push(\n \n {escapedName}\n {configVar.description}\n \n \n  \n \n \n ,\n );\n });\n\n return variableRows;\n };\n\n _isLoading = () => {\n const { configurationVariables } = this.state;\n\n return !configurationVariables;\n };\n\n _saveConfigurationVariable = (configurationVariable, oldName, callback) => {\n const { onVariableRename } = this.props;\n\n ConfigurationVariableActions.save.triggerPromise(configurationVariable)\n .then(() => this._onSuccessfulUpdate(() => {\n onVariableRename(oldName, configurationVariable.name);\n callback();\n }));\n };\n\n _onSuccessfulUpdate = (callback) => {\n if (typeof callback === 'function') {\n callback();\n }\n\n this._reloadVariables();\n };\n\n render() {\n if (this._isLoading()) {\n return ;\n }\n\n const { variableToDelete, errorModalContent } = this.state;\n\n return (\n
\n \n
\n
\n \n \n \n \n \n \n \n \n \n {this._configurationVariableListBuilder()}\n \n
NameDescriptionActions
\n
\n\n { this.errorModal = modal; }}>\n \n Error deleting configuration variable ${user.{variableToDelete.name}}\n \n \n \n

\n Cannot delete this configuration variable as it is still in use. Please remove the variable from\n the following configurations and try again.\n {errorModalContent}\n

\n
\n
\n \n \n \n
\n\n { this.deleteConfirmModal = c; }}\n title=\"Delete Configuration Variable?\"\n onConfirm={this._handleDeleteConfirm}\n onCancel={this._closeErrorModal}>\n

Are you sure you want to remove the configuration variable {variableToDelete.name}?

\n
\n
\n );\n }\n}\n\nexport default ConfigurationVariablesHelper;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Col, Panel, Row, Tab, Tabs } from 'components/bootstrap';\n\nimport TemplatesHelper from './TemplatesHelper';\nimport ConfigurationVariablesHelper from './ConfigurationVariablesHelper';\nimport ConfigurationHelperStyle from './ConfigurationHelper.css';\n\nclass ConfigurationHelper extends React.Component {\n static propTypes = {\n onVariableRename: PropTypes.func.isRequired,\n };\n\n _getId = (idName, index) => {\n const idIndex = index !== undefined ? `. ${index}` : '';\n\n return idName + idIndex;\n };\n\n render() {\n const { onVariableRename } = this.props;\n\n return (\n /* eslint-disable no-template-curly-in-string */\n \n\n \n \n \n \n

\n These variables will be filled with the runtime information from each Sidecar\n

\n \n
\n \n

\n Use variables to share text snippets across multiple configurations.\n
\n If your configuration format needs to use literals like ${foo},\n which shall not act as a variable, you will have to write it as\n ${'$'}{foo}.\n

\n \n
\n \n \n \n

\n We provide collector configuration templates to get you started.
\n For further information please refer to the official documentation of your collector.\n

\n \n \n
\n
\n
\n \n
\n
\n );\n /* eslint-enable no-template-curly-in-string */\n }\n}\n\nexport default ConfigurationHelper;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".xPV2VE7mx5w5RbxBVwcf {\\n margin-top: 20px;\\n}\\n\\n.vjxO58xdx2DWfSbCtDqn {\\n margin-top: 10px;\\n}\\n\\n.nV67tChjqzGMJgFSXjEh {\\n white-space: pre-wrap;\\n}\\n\\n.panel-body h3 {\\n margin-bottom: 5px;\\n}\\n\\n.Ljky5PvbEjtFMEvWjPom {\\n\\tmax-height: 400px;\\n}\\n\\n.cqjNB6UHuqa0fd42yYFA {\\n font-family: \\\"Roboto Mono\\\", Menlo, Monaco, Consolas, \\\"Courier New\\\", monospace;\\n}\\n\\n.heyPYufeKzilLrTBlkcz {\\n list-style-type: disc;\\n padding-left: 20px;\\n padding-top: 20px;\\n}\\n\\n.IukKgOWYiWDLjEX1JJif {\\n width: 120px;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/sidecars/configuration-forms/ConfigurationHelper.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,gBAAgB;AACpB;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,qBAAqB;AACzB;;AAEA;IACI,kBAAkB;AACtB;;AAEA;CACC,iBAAiB;AAClB;;AAEA;IACI,6EAA6E;AACjF;;AAEA;IACI,qBAAqB;IACrB,kBAAkB;IAClB,iBAAiB;AACrB;;AAEA;IACI,YAAY;AAChB\",\"sourcesContent\":[\":local(.marginQuickReferenceText) {\\n margin-top: 20px;\\n}\\n\\n:local(.marginTab) {\\n margin-top: 10px;\\n}\\n\\n:local(.exampleFunction) {\\n white-space: pre-wrap;\\n}\\n\\n.panel-body h3 {\\n margin-bottom: 5px;\\n}\\n\\n:local(.tableMaxHeight) {\\n\\tmax-height: 400px;\\n}\\n\\n:local(.monoSpaceFont) {\\n font-family: \\\"Roboto Mono\\\", Menlo, Monaco, Consolas, \\\"Courier New\\\", monospace;\\n}\\n\\n:local(.ulStyle) {\\n list-style-type: disc;\\n padding-left: 20px;\\n padding-top: 20px;\\n}\\n\\n:local(.actionsColumn) {\\n width: 120px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"marginQuickReferenceText\": \"xPV2VE7mx5w5RbxBVwcf\",\n\t\"marginTab\": \"vjxO58xdx2DWfSbCtDqn\",\n\t\"exampleFunction\": \"nV67tChjqzGMJgFSXjEh\",\n\t\"tableMaxHeight\": \"Ljky5PvbEjtFMEvWjPom\",\n\t\"monoSpaceFont\": \"cqjNB6UHuqa0fd42yYFA\",\n\t\"ulStyle\": \"heyPYufeKzilLrTBlkcz\",\n\t\"actionsColumn\": \"IukKgOWYiWDLjEX1JJif\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["SourceViewModal","props","setState","initialState","_loadConfiguration","sourceModal","open","close","templateString","configurationId","CollectorConfigurationsActions","then","response","source","preview","name","error","responseMessage","configuration","template","state","prevProps","lodash","this","resetState","ref","c","closeButton","className","type","onClick","hide","React","PropTypes","undefined","ImportsViewModal","_loadUploads","pagination","page","uploadsModal","uploads","totalUploads","total","UserNotification","selectedUpload","onApply","upload","tooltip","id","collector_id","key","placement","overlay","rootClose","node_id","collector_name","dateTime","created","bsStyle","bsSize","_onApplyButton","rendered_configuration","_isLoading","pageSize","PAGE_SIZE","formattedUploads","map","_formatUpload","totalItems","showPageSizeSelect","onChange","BootstrapModalWrapper","_buildVariableName","_formatModalBody","createReactClass","displayName","propTypes","action","configurationSidecars","mixins","Reflux","CollectorsStore","getDefaultProps","color","getInitialState","validation_errors","formData","UNSAFE_componentWillMount","_debouncedValidateFormData","_validateFormData","componentDidMount","CollectorsActions","defaultTemplates","_isTemplateSet","_hasErrors","nextFormData","checkForRequiredFields","validation","nextValidation","errors","failed","_save","history","Routes","_formDataUpdate","nextValue","_","hideCallback","replaceConfigurationVariableName","oldname","newname","updatedTemplate","split","join","_onTemplateChange","_onNameChange","event","nextName","target","value","_getCollectorDefaultTemplate","collectorId","storedTemplate","Promise","resolve","collector","default_template","_onCollectorChange","nextId","defaultTemplatePromise","window","confirm","defaultTemplate","_onTemplateImport","nextTemplate","_onSubmit","preventDefault","_onCancel","_onShowSource","previewModal","_onShowImports","_formatCollector","node_operating_system","_formatCollectorOptions","collectors","options","forEach","push","label","disable","_formatValidationMessage","fieldName","defaultText","validationErrors","_validationState","_renderCollectorTypeField","sidecar_ids","length","find","bsClass","inputId","placeholder","required","render","onSubmit","help","autoFocus","controlId","ColorLabel","style","display","marginLeft","triggerNode","validationState","height","md","disabled","TemplatesHelper","responsive","ConfigurationVariableActions","singletonActions","all","asyncResult","save","delete","validate","getConfigurations","singletonStore","listenables","sourceUrl","promise","fetch","URLUtils","configurationVariable","method","request","description","content","url","message","payload","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","EditConfigurationVariableModal","savedName","_cleanState","modal","prefixIdName","debounce","cloneDeep","saveConfigurationVariable","_saved","triggerButtonContent","create","openModal","title","onSubmitForm","onModalClose","submitButtonDisabled","submitButtonText","_getId","defaultValue","_handleInputChange","spellCheck","rows","ConfigurationHelperStyle","ConfigurationVariablesHelper","configurationVariables","errorModalContent","variableToDelete","errorModal","configurations","conf","href","_onSuccessfulUpdate","deleteConfirmModal","configVar","_renderConfigList","variableRows","Object","values","escapedName","_handleDeleteCheck","_saveConfigurationVariable","oldName","callback","onVariableRename","triggerPromise","_reloadVariables","_configurationVariableListBuilder","_closeErrorModal","onConfirm","_handleDeleteConfirm","onCancel","ConfigurationHelper","idName","index","header","defaultActiveKey","animation","eventKey","rel","___CSS_LOADER_EXPORT___","module","locals"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy