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

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

There is a newer version: 6.0.2
Show newest version
{"version":3,"sources":["webpack:///./src/pages/ShowMessagePage.tsx"],"names":["NodesActions","ActionsProvider","getActions","InputsActions","MessagesActions","StreamsStore","StoreProvider","getStore","FieldTypesProvider","streams","timestamp","children","fieldTypes","useFieldTypes","type","from","to","data","fieldTypesList","Immutable","types","all","queryFields","query","Provider","value","ShowMessagePage","params","index","messageId","Error","useState","setStreams","allStreams","setAllStreams","useEffect","listStreams","then","newStreams","streamsMap","reduce","prev","stream","id","useStreams","message","setMessage","inputs","setInputs","loadMessage","_message","source_input_id","get","Promise","resolve","input","newInputs","useMessage","list","useMemo","undefined","fields","messageStreams","fieldTypesStreams","filter","streamId","has","title","className","md","disableSurroundingSearch","data-testid","propTypes","PropTypes","exact","string","isRequired","withParams"],"mappings":"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","file":"57e33c6c-111.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, { useEffect, useMemo, useState } from 'react';\nimport * as Immutable from 'immutable';\n\nimport ActionsProvider from 'injection/ActionsProvider';\nimport StoreProvider from 'injection/StoreProvider';\nimport DocumentTitle from 'components/common/DocumentTitle';\nimport Spinner from 'components/common/Spinner';\nimport { Col, Row } from 'components/graylog';\nimport InteractiveContext from 'views/components/contexts/InteractiveContext';\nimport MessageDetail from 'views/components/messagelist/MessageDetail';\nimport withParams from 'routing/withParams';\nimport { Stream } from 'views/stores/StreamsStore';\nimport { Input } from 'components/messageloaders/Types';\nimport useFieldTypes from 'views/logic/fieldtypes/useFieldTypes';\nimport { Message } from 'views/components/messagelist/Types';\nimport FieldTypesContext from 'views/components/contexts/FieldTypesContext';\nimport WindowDimensionsContextProvider from 'contexts/WindowDimensionsContextProvider';\n\nconst NodesActions = ActionsProvider.getActions('Nodes');\nconst InputsActions = ActionsProvider.getActions('Inputs');\nconst MessagesActions = ActionsProvider.getActions('Messages');\nconst StreamsStore = StoreProvider.getStore('Streams');\n\ntype Props = {\n  params: {\n    index: string | undefined | null,\n    messageId: string | undefined | null,\n  },\n};\n\nconst useStreams = () => {\n  const [streams, setStreams] = useState>();\n  const [allStreams, setAllStreams] = useState>();\n\n  useEffect(() => {\n    StreamsStore.listStreams().then((newStreams) => {\n      if (newStreams) {\n        const streamsMap = newStreams.reduce((prev, stream) => ({ ...prev, [stream.id]: stream }), {});\n\n        setStreams(Immutable.Map(streamsMap));\n        setAllStreams(Immutable.List(newStreams));\n      }\n    });\n  }, [setStreams, setAllStreams]);\n\n  return { streams, allStreams };\n};\n\nconst useMessage = (index: string, messageId: string) => {\n  const [message, setMessage] = useState();\n  const [inputs, setInputs] = useState>(Immutable.Map());\n\n  useEffect(() => {\n    MessagesActions.loadMessage(index, messageId)\n      .then((_message) => {\n        setMessage(_message);\n\n        return _message.source_input_id ? InputsActions.get(_message.source_input_id) : Promise.resolve();\n      })\n      .then((input) => {\n        if (input) {\n          const newInputs = Immutable.Map({ [input.id]: input });\n\n          setInputs(newInputs);\n        }\n      });\n  }, [index, messageId, setMessage, setInputs]);\n\n  return { message, inputs };\n};\n\ntype FieldTypesProviderProps = {\n  children: React.ReactNode,\n  streams: Array,\n  timestamp: string,\n};\n\nconst FieldTypesProvider = ({ streams, timestamp, children }: FieldTypesProviderProps) => {\n  const { data: fieldTypes } = useFieldTypes(streams, { type: 'absolute', from: timestamp, to: timestamp });\n  const fieldTypesList = Immutable.List(fieldTypes);\n  const types = { all: fieldTypesList, queryFields: Immutable.Map({ query: fieldTypesList }) };\n\n  return (\n    \n      {children}\n    \n  );\n};\n\ntype MessageFields = {\n  streams: Array,\n  timestamp: string,\n};\n\nconst ShowMessagePage = ({ params: { index, messageId } }: Props) => {\n  if (!index || !messageId) {\n    throw new Error('index and messageId need to be specified!');\n  }\n\n  const { streams, allStreams } = useStreams();\n  const { message, inputs } = useMessage(index, messageId);\n\n  useEffect(() => { NodesActions.list(); }, []);\n\n  const isLoaded = useMemo(() => (message !== undefined\n    && streams !== undefined\n    && inputs !== undefined\n    && allStreams !== undefined), [message, streams, inputs, allStreams]);\n\n  if (isLoaded) {\n    const { streams: messageStreams, timestamp } = message.fields as MessageFields;\n    const fieldTypesStreams = messageStreams.filter((streamId) => streams.has(streamId));\n\n    return (\n      \n        \n          \n            \n              \n                \n                  \n                \n              \n            \n          \n        \n      \n    );\n  }\n\n  return ;\n};\n\nShowMessagePage.propTypes = {\n  params: PropTypes.exact({\n    index: PropTypes.string.isRequired,\n    messageId: PropTypes.string.isRequired,\n  }).isRequired,\n};\n\nexport default withParams(ShowMessagePage);\n"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy