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

web-interface.assets.57e33c6c-120.11b9f72925818240e61d.js.map Maven / Gradle / Ivy

There is a newer version: 6.0.1
Show newest version
{"version":3,"sources":["webpack:///./src/components/streams/StreamForm.jsx","webpack:///./src/components/streams/CreateStreamButton.jsx","webpack:///./src/components/streamrules/CollapsibleStreamRuleList.jsx","webpack:///./src/components/streams/StreamThroughput.jsx","webpack:///./src/components/streams/StreamMetaData.jsx","webpack:///./src/components/streams/StreamControls.jsx","webpack:///./src/components/streams/StreamStateBadge.jsx","webpack:///./src/components/streams/Stream.jsx","webpack:///./src/components/streams/StreamList.jsx","webpack:///./src/components/streams/StreamComponent.jsx","webpack:///./src/pages/StreamsPage.jsx"],"names":["IndexSetsActions","CombinedProvider","get","StreamForm","props","setState","_getValuesFromProps","defaultIndexSetId","stream","index_set_id","indexSets","length","defaultIndexSet","find","indexSet","id","title","description","removeMatchesFromDefaultStream","remove_matches_from_default_stream","indexSetId","state","onSubmit","modal","close","_resetValues","list","open","filter","can_be_default","map","value","label","selection","event","change","target","name","FormsUtils","AppConfig","isCloud","help","inputId","placeholder","options","_formatSelectOptions","matchProp","onChange","_onIndexSetSelect","undefined","this","propTitle","BootstrapModalForm","ref","c","onSubmitForm","_onSubmit","submitButtonText","type","required","handleChange","autoFocus","_indexSetSelect","checked","React","Component","PropTypes","func","isRequired","object","string","array","CreateStreamButton","streamForm","bsSize","bsStyle","buttonText","className","onSave","onClick","RuleWrapper","styled","div","CollapsibleStreamRuleList","expanded","permissions","streamRuleTypes","in","timeout","StreamRuleList","propTypes","bool","defaultProps","MetricsStore","StoreProvider","getStore","MetricsActions","ActionsProvider","getActions","StreamThroughput","createReactClass","displayName","streamId","mixins","Reflux","connect","UNSAFE_componentWillMount","addGlobal","_metricName","componentWillUnmount","removeGlobal","_calculateThroughput","Object","keys","metrics","nodeId","metricDefinition","metric","reduce","throughput1","throughput2","render","StreamMetaDataWrapper","StreamMetaData","verbalMatchingType","isDefaultStream","useState","setExpanded","toggleText","is_default","rules","matching_type","plural","singular","key","shape","arrayOf","StartpageStore","StreamControls","user","onDelete","onClone","onQuickAdd","onUpdate","disabled","PermissionsMixin","getDefaultProps","_onDelete","_onEdit","_onClone","cloneForm","_onCloneSubmit","_","_onQuickAdd","_setStartpage","set","pullRight","onSelect","HideOnCloud","href","Routes","stream_outputs","read_only","divider","StreamStateBadge","StreamsStore","StreamRulesStore","StreamListItem","li","theme","css","colors","variant","light","info","ToggleButton","Button","Stream","showStreamRuleForm","showEntityShareModal","window","confirm","remove","response","UserNotification","success","loading","resume","update","cloneStream","pause","streamRuleId","streamRule","create","editRulesLink","manageAlertsLink","toggleStreamLink","isNotEditable","is_editable","defaultStreamTooltip","isPermitted","overlay","placement","useOverlay","to","stream_edit","stream_alerts","isAnyPermitted","_onResume","_onPause","createdFromContentPack","content_pack","streamControls","_onUpdate","_openStreamRuleForm","is","indexSetDetails","entityId","entityType","_openEntityShareModal","stream_search","StreamRuleForm","onClose","_closeStreamRuleForm","_onSaveStreamRule","EntityShareModal","entityTitle","_closeEntityShareModal","StreamsList","ul","StreamList","streams","getInitialState","_formatStream","streamList","StreamComponent","callback","pagination","page","perPage","query","searchPaginated","then","newPage","newPerPage","newPagination","assign","loadData","resetLoadingCallback","count","total","types","unregister","currentUser","onStreamSave","_isLoading","style","marginLeft","Spinner","createStreamButton","noStreams","streamsList","streamListComp","_onPageChange","activePage","totalItems","marginBottom","onSearch","_onSearch","onReset","_onReset","queryHelpComponent","QueryHelper","entityName","useLoadingState","CurrentUserStore","IndexSetsStore","StreamsPage","componentDidMount","_onSave","save","PageHeader","DocumentationLink","DocsHelper","PAGES","STREAMS","text","md"],"mappings":"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","file":"57e33c6c-120.11b9f72925818240e61d.js","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';\n\nimport BootstrapModalForm from 'components/bootstrap/BootstrapModalForm';\nimport { Input } from 'components/bootstrap';\nimport { Select, Spinner } from 'components/common';\nimport CombinedProvider from 'injection/CombinedProvider';\nimport * as FormsUtils from 'util/FormsUtils';\nimport AppConfig from 'util/AppConfig';\n\nconst { IndexSetsActions } = CombinedProvider.get('IndexSets');\n\nclass StreamForm extends React.Component {\n  static propTypes = {\n    onSubmit: PropTypes.func.isRequired,\n    stream: PropTypes.object,\n    title: PropTypes.string.isRequired,\n    indexSets: PropTypes.array.isRequired,\n  };\n\n  static defaultProps = {\n    stream: {\n      title: '',\n      description: '',\n      remove_matches_from_default_stream: false,\n    },\n  };\n\n  constructor(props) {\n    super(props);\n\n    this.state = this._getValuesFromProps(props);\n    this.modal = undefined;\n  }\n\n  _resetValues = () => {\n    this.setState(this._getValuesFromProps(this.props));\n  };\n\n  _getValuesFromProps = (props) => {\n    let defaultIndexSetId = props.stream.index_set_id;\n\n    if (!defaultIndexSetId && props.indexSets && props.indexSets.length > 0) {\n      const defaultIndexSet = props.indexSets.find((indexSet) => indexSet.default);\n\n      if (defaultIndexSet) {\n        defaultIndexSetId = defaultIndexSet.id;\n      }\n    }\n\n    return {\n      title: props.stream.title,\n      description: props.stream.description,\n      removeMatchesFromDefaultStream: props.stream.remove_matches_from_default_stream,\n      indexSetId: defaultIndexSetId,\n    };\n  };\n\n  _onSubmit = () => {\n    const { title, description, removeMatchesFromDefaultStream, indexSetId } = this.state;\n    const { onSubmit, stream } = this.props;\n\n    onSubmit(stream.id,\n      {\n        title,\n        description,\n        remove_matches_from_default_stream: removeMatchesFromDefaultStream,\n        index_set_id: indexSetId,\n      });\n\n    this.modal.close();\n  };\n\n  open = () => {\n    this._resetValues();\n    IndexSetsActions.list(false);\n    this.modal.open();\n  };\n\n  close = () => {\n    this.modal.close();\n  };\n\n  _formatSelectOptions = () => {\n    const { indexSets } = this.props;\n\n    return indexSets.filter((indexSet) => indexSet.can_be_default).map((indexSet) => {\n      return { value: indexSet.id, label: indexSet.title };\n    });\n  };\n\n  _onIndexSetSelect = (selection) => {\n    this.setState({ indexSetId: selection });\n  };\n\n  handleChange = (event) => {\n    const change = {};\n\n    change[event.target.name] = FormsUtils.getValueFromInput(event.target);\n    this.setState(change);\n  };\n\n  _indexSetSelect = () => {\n    const { indexSetId } = this.state;\n    const { indexSets } = this.props;\n\n    if (AppConfig.isCloud()) {\n      return null;\n    }\n\n    if (indexSets) {\n      return (\n        \n          \n        \n        {this._indexSetSelect()}\n        Remove messages that match this stream from the ‘All messages’ stream which is assigned to every message by default.} />\n      \n    );\n  }\n}\n\nexport default StreamForm;\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 } from 'components/graylog';\nimport StreamForm from 'components/streams/StreamForm';\n\nclass CreateStreamButton extends React.Component {\n  static propTypes = {\n    buttonText: PropTypes.string,\n    bsStyle: PropTypes.string,\n    bsSize: PropTypes.string,\n    className: PropTypes.string,\n    onSave: PropTypes.func.isRequired,\n    indexSets: PropTypes.array.isRequired,\n  };\n\n  static defaultProps = {\n    buttonText: 'Create Stream',\n    bsSize: undefined,\n    bsStyle: undefined,\n    className: undefined,\n  };\n\n  onClick = () => {\n    this.streamForm.open();\n  };\n\n  render() {\n    const { bsSize, bsStyle, buttonText, className, indexSets, onSave } = this.props;\n\n    return (\n      \n        \n         { this.streamForm = streamForm; }}\n                    title=\"Creating Stream\"\n                    indexSets={indexSets}\n                    onSubmit={onSave} />\n      \n    );\n  }\n}\n\nexport default CreateStreamButton;\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 styled from 'styled-components';\n\nimport { Collapse } from 'components/graylog';\nimport StreamRuleList from 'components/streamrules/StreamRuleList';\n\nconst RuleWrapper = styled.div`\n  margin: 12px 0 0;\n`;\n\nconst CollapsibleStreamRuleList = ({ expanded, permissions, stream, streamRuleTypes }) => {\n  return (\n    \n      \n        \n      \n    \n  );\n};\n\nCollapsibleStreamRuleList.propTypes = {\n  expanded: PropTypes.bool,\n  permissions: PropTypes.array.isRequired,\n  stream: PropTypes.object.isRequired,\n  streamRuleTypes: PropTypes.array.isRequired,\n};\n\nCollapsibleStreamRuleList.defaultProps = {\n  expanded: false,\n};\n\nexport default CollapsibleStreamRuleList;\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';\n\nimport StoreProvider from 'injection/StoreProvider';\nimport ActionsProvider from 'injection/ActionsProvider';\nimport { Spinner } from 'components/common';\n\nconst MetricsStore = StoreProvider.getStore('Metrics');\nconst MetricsActions = ActionsProvider.getActions('Metrics');\n\nconst StreamThroughput = createReactClass({\n  displayName: 'StreamThroughput',\n\n  propTypes: {\n    streamId: PropTypes.string.isRequired,\n  },\n\n  mixins: [Reflux.connect(MetricsStore)],\n\n  UNSAFE_componentWillMount() {\n    MetricsActions.addGlobal(this._metricName());\n  },\n\n  componentWillUnmount() {\n    MetricsActions.removeGlobal(this._metricName());\n  },\n\n  _metricName() {\n    return `org.graylog2.plugin.streams.Stream.${this.props.streamId}.incomingMessages.1-sec-rate`;\n  },\n\n  _calculateThroughput() {\n    return Object.keys(this.state.metrics)\n      .map((nodeId) => {\n        const metricDefinition = this.state.metrics[nodeId][this._metricName()];\n\n        return metricDefinition !== undefined ? metricDefinition.metric.value : 0;\n      })\n      .reduce((throughput1, throughput2) => throughput1 + throughput2, 0);\n  },\n\n  render() {\n    if (!this.state.metrics) {\n      return ;\n    }\n\n    return (\n      {this._calculateThroughput()} messages/second\n    );\n  },\n});\n\nexport default StreamThroughput;\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, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nimport CollapsibleStreamRuleList from 'components/streamrules/CollapsibleStreamRuleList';\nimport { Pluralize } from 'components/common';\nimport { Button } from 'components/graylog';\n\nimport StreamThroughput from './StreamThroughput';\n\nconst StreamMetaDataWrapper = styled.div`\n  display: flex;\n  align-items: center;\n`;\n\nconst StreamMetaData = ({ isDefaultStream, stream, streamRuleTypes, permissions }) => {\n  let verbalMatchingType;\n  const [expanded, setExpanded] = useState(false);\n  const toggleText = expanded ? 'Hide' : 'Show';\n\n  if (stream.is_default) {\n    return 'The default stream contains all messages.';\n  }\n\n  if (stream.rules.length === 0) {\n    return 'No configured rules.';\n  }\n\n  switch (stream.matching_type) {\n    case 'OR': verbalMatchingType = 'at least one'; break;\n    default:\n    case 'AND': verbalMatchingType = 'all'; break;\n  }\n\n  const _onHandleToggle = () => {\n    setExpanded(!expanded);\n  };\n\n  return (\n    <>\n      \n        .\n\n        \n         Must match {verbalMatchingType} of the {stream.rules.length} configured stream \n          .\n        \n\n        {!isDefaultStream && (\n          \n        )}\n      \n\n      {!isDefaultStream && (\n        \n      )}\n    \n  );\n};\n\nStreamMetaData.propTypes = {\n  isDefaultStream: PropTypes.bool,\n  stream: PropTypes.shape({\n    id: PropTypes.string,\n    is_default: PropTypes.bool,\n    rules: PropTypes.array,\n    matching_type: PropTypes.string,\n  }).isRequired,\n  streamRuleTypes: PropTypes.arrayOf(PropTypes.object).isRequired,\n  permissions: PropTypes.array.isRequired,\n};\n\nStreamMetaData.defaultProps = {\n  isDefaultStream: false,\n};\n\nexport default StreamMetaData;\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// eslint-disable-next-line no-restricted-imports\nimport createReactClass from 'create-react-class';\n\nimport Routes from 'routing/Routes';\nimport { DropdownButton, MenuItem } from 'components/graylog';\nimport { IfPermitted } from 'components/common';\nimport PermissionsMixin from 'util/PermissionsMixin';\nimport StoreProvider from 'injection/StoreProvider';\nimport HideOnCloud from 'util/conditional/HideOnCloud';\n\nimport StreamForm from './StreamForm';\n\nconst StartpageStore = StoreProvider.getStore('Startpage');\n\nconst StreamControls = createReactClass({\n  displayName: 'StreamControls',\n\n  propTypes: {\n    stream: PropTypes.object.isRequired,\n    user: PropTypes.object.isRequired,\n    indexSets: PropTypes.array.isRequired,\n    onDelete: PropTypes.func.isRequired,\n    onClone: PropTypes.func.isRequired,\n    onQuickAdd: PropTypes.func.isRequired,\n    onUpdate: PropTypes.func.isRequired,\n    isDefaultStream: PropTypes.bool,\n    disabled: PropTypes.bool,\n  },\n\n  mixins: [PermissionsMixin],\n\n  getDefaultProps() {\n    return {\n      disabled: false,\n      isDefaultStream: false,\n    };\n  },\n\n  _onDelete() {\n    const { onDelete, stream } = this.props;\n    onDelete(stream);\n  },\n\n  _onEdit() {\n    this.streamForm.open();\n  },\n\n  _onClone() {\n    this.cloneForm.open();\n  },\n\n  _onCloneSubmit(_, stream) {\n    const { onClone, stream: propsStream } = this.props;\n    onClone(propsStream.id, stream);\n  },\n\n  _onQuickAdd() {\n    const { onQuickAdd, stream } = this.props;\n    onQuickAdd(stream.id);\n  },\n\n  _setStartpage() {\n    const { user, stream } = this.props;\n    StartpageStore.set(user.id, 'stream', stream.id);\n  },\n\n  render() {\n    const { stream, disabled, isDefaultStream, user, onUpdate, indexSets } = this.props;\n\n    return (\n      \n        \n          \n            \n              Edit stream\n            \n          \n          \n            \n              Quick add rule\n            \n          \n          \n            \n              Clone this stream\n            \n          \n          \n            \n              \n                Manage Outputs\n              \n            \n          \n          \n            Set as startpage\n          \n\n          \n            \n          \n          \n            \n              Delete this stream\n            \n          \n        \n         { this.streamForm = streamForm; }} title=\"Editing Stream\" onSubmit={onUpdate} stream={stream} indexSets={indexSets} />\n         { this.cloneForm = cloneForm; }} title=\"Cloning Stream\" onSubmit={this._onCloneSubmit} indexSets={indexSets} />\n      \n    );\n  },\n});\n\nexport default StreamControls;\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 { Label } from 'components/graylog';\n\nclass StreamStateBadge extends React.Component {\n  static propTypes = {\n    stream: PropTypes.object.isRequired,\n  };\n\n  render() {\n    if (this.props.stream.is_default) {\n      return ;\n    }\n\n    if (!this.props.stream.disabled) {\n      return null;\n    }\n\n    return ;\n  }\n}\n\nexport default StreamStateBadge;\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 styled, { css } from 'styled-components';\n\nimport EntityShareModal from 'components/permissions/EntityShareModal';\nimport { Link, LinkContainer } from 'components/graylog/router';\nimport { Button, Tooltip } from 'components/graylog';\nimport { Icon, OverlayElement, ShareButton } from 'components/common';\nimport StreamRuleForm from 'components/streamrules/StreamRuleForm';\nimport { isAnyPermitted, isPermitted } from 'util/PermissionsMixin';\nimport UserNotification from 'util/UserNotification';\nimport StoreProvider from 'injection/StoreProvider';\nimport Routes from 'routing/Routes';\n\nimport StreamMetaData from './StreamMetaData';\nimport StreamControls from './StreamControls';\nimport StreamStateBadge from './StreamStateBadge';\n\nconst StreamsStore = StoreProvider.getStore('Streams');\nconst StreamRulesStore = StoreProvider.getStore('StreamRules');\n\nconst StreamListItem = styled.li(({ theme }) => css`\n  display: block;\n  padding: 15px 0;\n\n  &:not(:last-child) {\n    border-bottom: 1px solid ${theme.colors.variant.light.info};\n  }\n\n  .stream-data {\n    margin-top: 8px;\n\n    .stream-actions {\n      position: relative;\n      float: right;\n      right: 0;\n      bottom: 20px;\n\n      form.action-form {\n        display: inline-block;\n      }\n\n      .btn-delete {\n        margin-left: 15px;\n        margin-right: 15px;\n\n        &.last {\n          margin-right: 0;\n        }\n      }\n    }\n  }\n\n  .stream-description {\n    margin-bottom: 3px;\n\n    .fa-cube {\n      margin-right: 5px;\n    }\n  }\n`);\n\nconst ToggleButton = styled(Button)`\n  min-width: 8.8em;\n`;\n\nclass Stream extends React.Component {\n  static propTypes = {\n    stream: PropTypes.object.isRequired,\n    permissions: PropTypes.arrayOf(PropTypes.string).isRequired,\n    streamRuleTypes: PropTypes.array.isRequired,\n    user: PropTypes.object.isRequired,\n    indexSets: PropTypes.array.isRequired,\n  };\n\n  constructor(props) {\n    super(props);\n\n    this.state = {\n      loading: false,\n      showStreamRuleForm: false,\n      showEntityShareModal: false,\n    };\n  }\n\n  _closeStreamRuleForm = () => {\n    this.setState({ showStreamRuleForm: false });\n  };\n\n  _openStreamRuleForm = () => {\n    this.setState({ showStreamRuleForm: true });\n  };\n\n  _closeEntityShareModal = () => {\n    this.setState({ showEntityShareModal: false });\n  };\n\n  _openEntityShareModal = () => {\n    this.setState({ showEntityShareModal: true });\n  };\n\n  _onDelete= (stream) => {\n    // eslint-disable-next-line no-alert\n    if (window.confirm('Do you really want to remove this stream?')) {\n      StreamsStore.remove(stream.id, (response) => {\n        UserNotification.success(`Stream '${stream.title}' was deleted successfully.`, 'Success');\n\n        return response;\n      });\n    }\n  }\n\n  _onResume = () => {\n    const { stream } = this.props;\n\n    this.setState({ loading: true });\n\n    StreamsStore.resume(stream.id, (response) => response)\n      .finally(() => this.setState({ loading: false }));\n  }\n\n  _onUpdate = (streamId, stream) => {\n    StreamsStore.update(streamId, stream, (response) => {\n      UserNotification.success(`Stream '${stream.title}' was updated successfully.`, 'Success');\n\n      return response;\n    });\n  }\n\n  _onClone = (streamId, stream) => {\n    StreamsStore.cloneStream(streamId, stream, (response) => {\n      UserNotification.success(`Stream was successfully cloned as '${stream.title}'.`, 'Success');\n\n      return response;\n    });\n  }\n\n  _onPause = () => {\n    const { stream } = this.props;\n\n    // eslint-disable-next-line no-alert\n    if (window.confirm(`Do you really want to pause stream '${stream.title}'?`)) {\n      this.setState({ loading: true });\n\n      StreamsStore.pause(stream.id, (response) => response)\n        .finally(() => this.setState({ loading: false }));\n    }\n  }\n\n  _onSaveStreamRule = (streamRuleId, streamRule) => {\n    const { stream } = this.props;\n\n    StreamRulesStore.create(stream.id, streamRule, () => UserNotification.success('Stream rule was created successfully.', 'Success'));\n  }\n\n  render() {\n    const { indexSets, stream, permissions, streamRuleTypes, user } = this.props;\n    const { loading, showStreamRuleForm, showEntityShareModal } = this.state;\n\n    const isDefaultStream = stream.is_default;\n    const isNotEditable = !stream.is_editable;\n    const defaultStreamTooltip = isDefaultStream\n      ? Action not available for the default stream : null;\n\n    let editRulesLink;\n    let manageAlertsLink;\n\n    if (isPermitted(permissions, [`streams:edit:${stream.id}`])) {\n      editRulesLink = (\n        \n          \n            \n          \n        \n      );\n\n      manageAlertsLink = (\n        \n          \n        \n      );\n    }\n\n    let toggleStreamLink;\n\n    if (isAnyPermitted(permissions, [`streams:changestate:${stream.id}`, `streams:edit:${stream.id}`])) {\n      if (stream.disabled) {\n        toggleStreamLink = (\n          \n            \n               {loading ? 'Starting...' : 'Start Stream'}\n            \n          \n        );\n      } else {\n        toggleStreamLink = (\n          \n            \n               {loading ? 'Pausing...' : 'Pause Stream'}\n            \n          \n        );\n      }\n    }\n\n    const createdFromContentPack = (stream.content_pack\n      ?  : null);\n\n    const streamControls = (\n      \n        \n      \n    );\n\n    const indexSet = indexSets.find((is) => is.id === stream.index_set_id) || indexSets.find((is) => is.is_default);\n    const indexSetDetails = isPermitted(permissions, ['indexsets:read']) && indexSet ? index set {indexSet.title}   : null;\n\n    return (\n      \n        
\n {editRulesLink}{' '}\n {manageAlertsLink}{' '}\n \n {toggleStreamLink}{' '}\n\n {streamControls}\n
\n\n

\n {stream.title}\n {' '}\n {indexSetDetails}\n

\n\n
\n
\n {createdFromContentPack}\n\n {stream.description}\n
\n \n
\n {showStreamRuleForm && (\n \n )}\n {showEntityShareModal && (\n \n )}\n
\n );\n }\n}\n\nexport default Stream;\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 styled from 'styled-components';\n\nimport { Alert } from 'components/graylog';\nimport { Icon } from 'components/common';\nimport PermissionsMixin from 'util/PermissionsMixin';\n\nimport Stream from './Stream';\n\nconst StreamsList = styled.ul`\n padding: 0;\n margin: 0;\n`;\n\nconst StreamList = createReactClass({\n displayName: 'StreamList',\n\n propTypes: {\n streams: PropTypes.array.isRequired,\n streamRuleTypes: PropTypes.array.isRequired,\n indexSets: PropTypes.array.isRequired,\n user: PropTypes.object.isRequired,\n permissions: PropTypes.array.isRequired,\n },\n\n mixins: [PermissionsMixin],\n\n getInitialState() {\n return {};\n },\n\n _formatStream(stream) {\n return (\n \n );\n },\n\n render() {\n if (this.props.streams.length > 0) {\n const streamList = this.props.streams.map(this._formatStream);\n\n return (\n \n {streamList}\n \n );\n }\n\n return (\n \n  No streams match your search filter.\n \n );\n },\n});\n\nexport default StreamList;\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 { Alert } from 'components/graylog';\nimport { Icon, IfPermitted, PaginatedList, SearchForm } from 'components/common';\nimport StoreProvider from 'injection/StoreProvider';\nimport Spinner from 'components/common/Spinner';\nimport QueryHelper from 'components/common/QueryHelper';\n\nimport StreamList from './StreamList';\nimport CreateStreamButton from './CreateStreamButton';\n\nconst StreamsStore = StoreProvider.getStore('Streams');\nconst StreamRulesStore = StoreProvider.getStore('StreamRules');\n\nclass StreamComponent extends React.Component {\n static propTypes = {\n currentUser: PropTypes.object.isRequired,\n onStreamSave: PropTypes.func.isRequired,\n indexSets: PropTypes.array.isRequired,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n pagination: {\n page: 1,\n perPage: 10,\n count: 0,\n total: 0,\n query: '',\n },\n };\n }\n\n componentDidMount() {\n this.loadData();\n\n StreamRulesStore.types().then((types) => {\n this.setState({ streamRuleTypes: types });\n });\n\n StreamsStore.onChange(this.loadData);\n StreamRulesStore.onChange(this.loadData);\n }\n\n componentWillUnmount() {\n StreamsStore.unregister(this.loadData);\n StreamRulesStore.unregister(this.loadData);\n }\n\n loadData = (callback) => {\n const { state } = this;\n const { page, perPage, query } = state.pagination;\n\n StreamsStore.searchPaginated(page, perPage, query)\n .then(({ streams, pagination }) => {\n this.setState({\n streams: streams,\n pagination: pagination,\n });\n })\n .then(() => {\n if (callback) {\n callback();\n }\n });\n };\n\n _isLoading = () => {\n const { state } = this;\n\n return !(state.streams && state.streamRuleTypes);\n };\n\n _onPageChange = (newPage, newPerPage) => {\n const { pagination } = this.state;\n const newPagination = Object.assign(pagination, {\n page: newPage,\n perPage: newPerPage,\n });\n\n this.setState({ pagination: newPagination }, this.loadData);\n };\n\n _onSearch = (query, resetLoadingCallback) => {\n const { pagination } = this.state;\n const newPagination = { ...pagination, query: query, page: 1 };\n\n this.setState({ pagination: newPagination }, () => this.loadData(resetLoadingCallback));\n };\n\n _onReset = () => {\n const { pagination } = this.state;\n const newPagination = { ...pagination, query: '', page: 1 };\n\n this.setState({ pagination: newPagination }, this.loadData);\n };\n\n render() {\n const { streams, pagination, streamRuleTypes } = this.state;\n const { currentUser, onStreamSave, indexSets } = this.props;\n\n if (this._isLoading()) {\n return (\n
\n \n
\n );\n }\n\n const createStreamButton = (\n \n \n \n );\n\n const noStreams = (\n \n  No streams found. {createStreamButton}\n \n );\n\n const streamsList = (\n \n );\n\n const streamListComp = streams.length === 0\n ? noStreams\n : streamsList;\n\n return (\n
\n \n
\n }\n useLoadingState />\n
\n
{streamListComp}
\n
\n
\n );\n }\n}\n\nexport default StreamComponent;\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';\nimport createReactClass from 'create-react-class';\nimport Reflux from 'reflux';\n\nimport { Row, Col } from 'components/graylog';\nimport CreateStreamButton from 'components/streams/CreateStreamButton';\nimport StreamComponent from 'components/streams/StreamComponent';\nimport DocumentationLink from 'components/support/DocumentationLink';\nimport PageHeader from 'components/common/PageHeader';\nimport { DocumentTitle, IfPermitted, Spinner } from 'components/common';\nimport DocsHelper from 'util/DocsHelper';\nimport UserNotification from 'util/UserNotification';\nimport StoreProvider from 'injection/StoreProvider';\nimport ActionsProvider from 'injection/ActionsProvider';\n\nconst CurrentUserStore = StoreProvider.getStore('CurrentUser');\nconst StreamsStore = StoreProvider.getStore('Streams');\nconst IndexSetsStore = StoreProvider.getStore('IndexSets');\nconst IndexSetsActions = ActionsProvider.getActions('IndexSets');\n\nconst StreamsPage = createReactClass({\n displayName: 'StreamsPage',\n mixins: [Reflux.connect(CurrentUserStore), Reflux.connect(IndexSetsStore)],\n\n getInitialState() {\n return {\n indexSets: undefined,\n };\n },\n\n componentDidMount() {\n IndexSetsActions.list(false);\n },\n\n _isLoading() {\n return !this.state.currentUser || !this.state.indexSets;\n },\n\n _onSave(_, stream) {\n StreamsStore.save(stream, () => {\n UserNotification.success('Stream has been successfully created.', 'Success');\n });\n },\n\n render() {\n if (this._isLoading()) {\n return ;\n }\n\n return (\n \n
\n \n \n You can route incoming messages into streams by applying rules against them. Messages matching\n the rules of a stream are routed into it. A message can also be routed into multiple streams.\n \n\n \n Read more about streams in the .\n \n\n \n \n \n \n\n \n \n \n \n \n
\n
\n );\n },\n});\n\nexport default StreamsPage;\n"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy