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

web-interface.assets.b999a7e7-17.9472d5d0a285679cf68d.js.map Maven / Gradle / Ivy

There is a newer version: 6.0.2
Show newest version
{"version":3,"sources":["webpack:///./src/components/messageloaders/RecentMessageLoader.jsx","webpack:///./src/components/messageloaders/LoaderTabs.jsx","webpack:///./src/components/inputs/InputDropdown.jsx","webpack:///./src/components/extractors/MessageLoader.jsx"],"names":["UniversalSearchStore","StoreProvider","getStore","RecentMessageLoader","loading","inputId","props","inputs","get","UserNotification","error","setState","promise","search","range","undefined","then","response","total_results","onMessageLoaded","messages","helpMessage","this","selectedInputId","style","marginTop","InputDropdown","preselectedInputId","onLoadMessage","onClick","title","state","disabled","React","Component","PropTypes","object","func","isRequired","string","InputsStore","StreamsStore","InputsActions","ActionsProvider","getActions","LoaderTabs","recent","messageId","raw","message","list","listStreams","streams","forEach","stream","id","Immutable","tabKey","tabs","indexOf","activeTab","index","_isTabVisible","TAB_KEYS","selectedTab","messageLoaders","push","key","eventKey","marginBottom","MessageLoader","ref","messageLoader","hidden","hideText","RawMessageLoader","loadData","submit","customFieldActions","displayMessage","md","MessageShow","activeKey","_getActiveTab","onSelect","_changeActiveTab","animation","_formatMessageLoaders","propTypes","oneOfType","oneOf","arrayOf","node","defaultProps","connect","inputsAsMap","input","value","type","input1","input2","localeCompare","selectedInput","float","width","marginRight","event","target","PLACEHOLDER","_formatStaticInput","bsStyle","_onLoadMessage","sort","_sortByTitle","map","_formatInput","onChange","onSelectedInputChange","placeholder","toArray","bool","MessagesActions","_focusMessageLoaderForm","focus","loadMessage","triggerPromise","data","preventDefault","submitButton","click","explanatoryText","className","toggleMessageForm","loadMessageForm","onSubmit","required"],"mappings":"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","file":"b999a7e7-17.9472d5d0a285679cf68d.js","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport InputDropdown from 'components/inputs/InputDropdown';\nimport UserNotification from 'util/UserNotification';\n\nimport StoreProvider from 'injection/StoreProvider';\n\nconst UniversalSearchStore = StoreProvider.getStore('UniversalSearch');\n\nclass RecentMessageLoader extends React.Component {\n  static propTypes = {\n    inputs: PropTypes.object,\n    onMessageLoaded: PropTypes.func.isRequired,\n    selectedInputId: PropTypes.string,\n  };\n\n  state = {\n    loading: false,\n  };\n\n  onClick = (inputId) => {\n    const input = this.props.inputs.get(inputId);\n    if (!input) {\n      UserNotification.error(`Invalid input selected: ${inputId}`,\n        `Could not load message from invalid Input ${inputId}`);\n    }\n    this.setState({ loading: true });\n    const promise = UniversalSearchStore.search('relative', `gl2_source_input:${inputId} OR gl2_source_radio_input:${inputId}`,\n      { range: 3600 }, undefined, 1, undefined, undefined, undefined, false);\n    promise.then((response) => {\n      if (response.total_results > 0) {\n        this.props.onMessageLoaded(response.messages[0]);\n      } else {\n        UserNotification.error('Input did not return a recent message.');\n        this.props.onMessageLoaded(undefined);\n      }\n    });\n    promise.finally(() => this.setState({ loading: false }));\n  };\n\n  render() {\n    let helpMessage;\n    if (this.props.selectedInputId) {\n      helpMessage = 'Click on \"Load Message\" to load the most recent message received by this input within the last hour.';\n    } else {\n      helpMessage = 'Select an Input from the list below and click \"Load Message\" to load the most recent message received by this input within the last hour.';\n    }\n    return (\n      
\n {helpMessage}\n \n
\n );\n }\n}\n\nexport default RecentMessageLoader;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { Col, Tab, Tabs } from 'components/graylog';\nimport * as Immutable from 'immutable';\n\nimport connect from 'stores/connect';\nimport StoreProvider from 'injection/StoreProvider';\nimport ActionsProvider from 'injection/ActionsProvider';\n\nimport MessageShow from 'components/search/MessageShow';\nimport MessageLoader from 'components/extractors/MessageLoader';\nimport RawMessageLoader from './RawMessageLoader';\nimport RecentMessageLoader from './RecentMessageLoader';\n\nconst InputsStore = StoreProvider.getStore('Inputs');\nconst StreamsStore = StoreProvider.getStore('Streams');\nconst InputsActions = ActionsProvider.getActions('Inputs');\n\nclass LoaderTabs extends React.Component {\n TAB_KEYS = {\n recent: 1,\n messageId: 2,\n raw: 3,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n activeTab: undefined,\n message: undefined,\n };\n }\n\n componentDidMount() {\n this.loadData();\n const { messageId, index } = this.props;\n if (messageId && index) {\n this.messageLoader.submit(messageId, index);\n }\n }\n\n onMessageLoaded = (message) => {\n this.setState({ message });\n const { onMessageLoaded } = this.props;\n if (onMessageLoaded) {\n onMessageLoaded(message);\n }\n };\n\n loadData = () => {\n InputsActions.list();\n StreamsStore.listStreams().then((response) => {\n const streams = {};\n response.forEach((stream) => {\n streams[stream.id] = stream;\n });\n this.setState({ streams: Immutable.Map(streams) });\n });\n };\n\n _isTabVisible = (tabKey) => {\n const { tabs } = this.props;\n return tabs === tabKey || tabs.indexOf(tabKey) !== -1;\n };\n\n _getActiveTab = () => {\n const { activeTab } = this.state;\n if (activeTab) {\n return activeTab;\n }\n\n const { messageId, index } = this.props;\n if (this._isTabVisible('messageId') && messageId && index) {\n return this.TAB_KEYS.messageId;\n }\n\n if (this._isTabVisible('recent')) {\n return this.TAB_KEYS.recent;\n }\n if (this._isTabVisible('messageId')) {\n return this.TAB_KEYS.messageId;\n }\n return this.TAB_KEYS.raw;\n };\n\n _changeActiveTab = (selectedTab) => {\n const { activeTab } = this.state;\n if (activeTab !== selectedTab) {\n this.setState({ activeTab: selectedTab, message: undefined });\n }\n };\n\n _formatMessageLoaders = () => {\n const messageLoaders = [];\n\n if (this._isTabVisible('recent')) {\n const { inputs, selectedInputId } = this.props;\n messageLoaders.push(\n \n \n ,\n );\n }\n\n if (this._isTabVisible('messageId')) {\n messageLoaders.push(\n \n
\n Please provide the id and index of the message that you want to load in this form:\n
\n\n { this.messageLoader = messageLoader; }} onMessageLoaded={this.onMessageLoaded} hidden={false} hideText />\n
,\n );\n }\n\n if (this._isTabVisible('raw')) {\n messageLoaders.push(\n \n
\n Load a message from text, as if it was sent by a log source.\n
\n\n \n
,\n );\n }\n\n return messageLoaders;\n };\n\n render() {\n const { streams, message } = this.state;\n const { customFieldActions, inputs } = this.props;\n const displayMessage = message && inputs\n ? (\n \n \n \n )\n : null;\n\n return (\n
\n \n {this._formatMessageLoaders()}\n \n {displayMessage}\n
\n );\n }\n}\n\nLoaderTabs.propTypes = {\n tabs: PropTypes.oneOfType([\n PropTypes.oneOf(['recent', 'messageId', 'raw']),\n PropTypes.arrayOf(PropTypes.oneOf(['recent', 'messageId', 'raw'])),\n ]),\n messageId: PropTypes.string,\n index: PropTypes.string,\n onMessageLoaded: PropTypes.func,\n selectedInputId: PropTypes.string,\n customFieldActions: PropTypes.node,\n inputs: PropTypes.object,\n};\n\nLoaderTabs.defaultProps = {\n tabs: ['recent', 'messageId'],\n index: undefined,\n messageId: undefined,\n onMessageLoaded: undefined,\n selectedInputId: undefined,\n customFieldActions: undefined,\n inputs: undefined,\n};\n\nexport default connect(\n LoaderTabs,\n { inputs: InputsStore },\n ({ inputs: { inputs } }) => ({ inputs: inputs ? Immutable.Map(InputsStore.inputsAsMap(inputs)) : undefined }),\n);\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Button } from 'components/graylog';\nimport { Input } from 'components/bootstrap';\nimport Spinner from 'components/common/Spinner';\n\nclass InputDropdown extends React.Component {\n static propTypes = {\n inputs: PropTypes.object,\n title: PropTypes.string,\n preselectedInputId: PropTypes.string,\n onLoadMessage: PropTypes.func,\n disabled: PropTypes.bool,\n };\n\n PLACEHOLDER = 'placeholder';\n\n _formatInput = (input) => {\n return ;\n };\n\n _sortByTitle = (input1, input2) => {\n return input1.title.localeCompare(input2.title);\n };\n\n _onLoadMessage = () => {\n this.props.onLoadMessage(this.state.selectedInput);\n };\n\n _formatStaticInput = (input) => {\n return (\n \n \n \n );\n };\n\n onSelectedInputChange = (event) => {\n this.setState({ selectedInput: event.target.value });\n };\n\n state = {\n selectedInput: this.props.preselectedInputId || this.PLACEHOLDER,\n };\n\n render() {\n const { selectedInput } = this.state;\n // When an input is pre-selected, show a static dropdown\n if (this.props.inputs && this.props.preselectedInputId) {\n return (\n
\n {this._formatStaticInput(this.props.inputs.get(this.props.preselectedInputId))}\n\n \n
\n );\n }\n\n if (this.props.inputs) {\n const inputs = this.props.inputs.sort(this._sortByTitle).map(this._formatInput);\n return (\n
\n \n \n {inputs.toArray()}\n \n\n \n
\n );\n }\n\n return ;\n }\n}\n\nexport default InputDropdown;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport ActionsProvider from 'injection/ActionsProvider';\n\nimport StoreProvider from 'injection/StoreProvider';\n\nconst MessagesActions = ActionsProvider.getActions('Messages');\n// eslint-disable-next-line no-unused-vars\nconst MessagesStore = StoreProvider.getStore('Messages');\n\nclass MessageLoader extends React.Component {\n static propTypes = {\n hidden: PropTypes.bool,\n hideText: PropTypes.bool,\n onMessageLoaded: PropTypes.func,\n };\n\n static defaultProps = {\n hidden: true,\n };\n\n state = {\n hidden: this.props.hidden,\n loading: false,\n };\n\n toggleMessageForm = () => {\n this.setState({ hidden: !this.state.hidden }, this._focusMessageLoaderForm);\n };\n\n _focusMessageLoaderForm = () => {\n if (!this.state.hidden) {\n this.messageId.focus();\n }\n };\n\n loadMessage = (event) => {\n const messageId = this.messageId.value;\n const index = this.index.value;\n if (messageId === '' || index === '') {\n return;\n }\n this.setState({ loading: true });\n const promise = MessagesActions.loadMessage.triggerPromise(index, messageId);\n promise.then((data) => this.props.onMessageLoaded(data));\n promise.finally(() => this.setState({ loading: false }));\n\n event.preventDefault();\n };\n\n submit = (messageId, index) => {\n this.messageId.value = messageId;\n this.index.value = index;\n this.submitButton.click();\n };\n\n render() {\n let explanatoryText;\n if (!this.props.hideText) {\n explanatoryText = (\n

\n Wrong example? You can{' '}\n .\n

\n );\n }\n const loadMessageForm = (\n
\n
\n { this.messageId = messageId; }} className=\"form-control message-id-input\" placeholder=\"Message ID\" required />\n { this.index = index; }} className=\"form-control\" placeholder=\"Index\" required />\n \n
\n
\n );\n return (\n
\n {explanatoryText}\n {this.state.hidden ? null : loadMessageForm}\n
\n );\n }\n}\n\nexport default MessageLoader;\n"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy