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

web-interface.assets.1255d548-5716.58343bcf97921e07b4ab.js.map Maven / Gradle / Ivy

There is a newer version: 6.1.4
Show newest version
{"version":3,"file":"1255d548-5716.58343bcf97921e07b4ab.js","mappings":"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","sources":["webpack://graylog-web-interface/./src/views/components/searchbar/queryinput/ace.ts","webpack://graylog-web-interface/./src/views/components/searchbar/queryinput/StyledAceEditor.tsx","webpack://graylog-web-interface/./src/views/components/searchbar/queryinput/BasicQueryInput.tsx","webpack://graylog-web-interface/./src/views/components/searchbar/SearchBarAutocompletions.ts","webpack://graylog-web-interface/./src/views/components/searchbar/queryinput/QueryInput.tsx","webpack://graylog-web-interface/./src/views/components/searchbar/queryinput/ace-queryinput.js","webpack://graylog-web-interface/./src/views/components/searchbar/queryinput/custom-lucene-mode.js","webpack://graylog-web-interface/./node_modules/lodash/uniqBy.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 AceEditor from 'react-ace';\n\nimport './ace-queryinput';\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport './custom-lucene-mode';\nimport 'ace-builds/webpack-resolver';\n\nexport default AceEditor;\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 styled, { css } from 'styled-components';\nimport type { DefaultTheme } from 'styled-components';\n\nimport { INPUT_BORDER_RADIUS } from 'theme/constants';\n\nimport AceEditor from './ace';\n\ntype Props = {\n  $height: number,\n  $scTheme: DefaultTheme,\n  disabled: boolean,\n};\n\nconst StyledAceEditor = styled(AceEditor)(({ $scTheme, $height, disabled }) => css`\n  &.ace-queryinput {\n    ${$height ? `height: ${$height}px !important` : ''}\n    min-height: 34px;\n    width: 100% !important;\n    background-color: ${$scTheme.colors.input.background};\n    color: ${$scTheme.utils.contrastingColor($scTheme.colors.input.background, 'AAA')};\n    border: 1px solid ${$scTheme.colors.variant.light.default};\n    border-radius: ${INPUT_BORDER_RADIUS};\n\n    &.ace_multiselect .ace_selection.ace_start {\n      box-shadow: 0 0 3px 0 ${$scTheme.colors.input.background};\n    }\n\n    .ace_gutter {\n      background: ${$scTheme.colors.input.background};\n      color: ${$scTheme.utils.contrastingColor($scTheme.colors.input.background, 'AAA')};\n    }\n\n    .ace_print-margin {\n      width: 1px;\n      background: ${$scTheme.colors.input.background};\n    }\n\n    .ace_cursor {\n      color: ${$scTheme.colors.gray[50]};\n      display: ${disabled ? 'none' : 'block'} !important;\n    }\n\n    .ace_marker-layer .ace_selection {\n      background: ${$scTheme.colors.variant.lightest.default};\n    }\n\n    .ace_marker-layer .ace_step {\n      background: ${$scTheme.colors.variant.warning};\n    }\n\n    .ace_marker-layer .ace_bracket {\n      margin: -1px 0 0 -1px;\n      border: none;\n    }\n\n    .ace_marker-layer .ace_active-line {\n      background: ${$scTheme.colors.input.background};\n    }\n\n    .ace_gutter-active-line {\n      background-color: ${$scTheme.colors.input.background};\n    }\n\n    .ace_marker-layer .ace_selected-word {\n      border: 1px solid ${$scTheme.colors.gray[80]};\n    }\n\n    .ace_invisible {\n      color: ${$scTheme.colors.input.background};\n    }\n\n    .ace_keyword,\n    .ace_meta,\n    .ace_storage,\n    .ace_storage.ace_type,\n    .ace_support.ace_type {\n      color: ${$scTheme.colors.variant.info};\n    }\n\n    .ace_keyword.ace_operator {\n      color: ${$scTheme.colors.global.textDefault};\n    }\n\n    .ace_constant.ace_character,\n    .ace_constant.ace_language,\n    .ace_constant.ace_numeric,\n    .ace_keyword.ace_other.ace_unit,\n    .ace_support.ace_constant,\n    .ace_variable.ace_parameter {\n      color: ${$scTheme.colors.variant.dark.danger};\n    }\n\n    .ace_constant.ace_other {\n      color: ${$scTheme.colors.variant.default};\n    }\n\n    .ace_invalid {\n      color: ${$scTheme.utils.readableColor($scTheme.colors.brand.primary)};\n      background-color: ${$scTheme.colors.brand.primary};\n    }\n\n    .ace_invalid.ace_deprecated {\n      color: ${$scTheme.utils.readableColor($scTheme.colors.brand.primary)};\n      background-color: ${$scTheme.colors.variant.dark.primary};\n    }\n\n    .ace_fold {\n      background-color: ${$scTheme.colors.variant.info};\n      border-color: ${$scTheme.utils.contrastingColor($scTheme.colors.input.background, 'AAA')};\n    }\n\n    .ace_entity.ace_name.ace_function,\n    .ace_support.ace_function,\n    .ace_variable,\n    .ace_term {\n      color: ${$scTheme.colors.variant.darker.info};\n    }\n\n    .ace_support.ace_class,\n    .ace_support.ace_type {\n      color: ${$scTheme.colors.variant.dark.warning};\n    }\n\n    .ace_heading,\n    .ace_markup.ace_heading,\n    .ace_string {\n      color: ${$scTheme.colors.variant.dark.success};\n    }\n\n    .ace_entity.ace_name.ace_tag,\n    .ace_entity.ace_other.ace_attribute-name,\n    .ace_meta.ace_tag,\n    .ace_string.ace_regexp,\n    .ace_variable {\n      color: ${$scTheme.colors.brand.primary};\n    }\n\n    .ace_comment {\n      color: ${$scTheme.colors.gray[60]};\n    }\n\n    .ace_indent-guide {\n      background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bdu3f/BwAlfgctduB85QAAAABJRU5ErkJggg==') right repeat-y;\n    }\n\n    .ace_placeholder {\n      left: 0;\n      right: 0;\n      padding: 0;\n      margin-top: 6px;\n      margin-left: 4px;\n      margin-right: 4px;\n      transform: none;\n      opacity: 1;\n      z-index: auto !important;\n      font-family: ${$scTheme.fonts.family.monospace} !important;\n      font-size: ${$scTheme.fonts.size.body};\n      color: ${$scTheme.colors.input.placeholder};\n      text-overflow: ellipsis;\n      max-width: 100%;\n      overflow: hidden;\n    }\n\n    .ace_marker {\n      border-bottom: 2px dashed;\n      position: absolute;\n      border-radius: 0;\n      margin-top: 1px;\n    }\n\n    .ace_marker.ace_validation_error {\n      border-color: ${$scTheme.colors.variant.danger};\n    }\n\n    .ace_marker.ace_validation_warning {\n      border-color: ${$scTheme.colors.variant.dark.warning};\n    }\n  }\n`);\n\nexport default StyledAceEditor;\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 * as React from 'react';\nimport { forwardRef, useMemo, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { useTheme } from 'styled-components';\nimport type { IMarker } from 'react-ace';\n\nimport type { QueryValidationState } from 'views/components/searchbar/queryvalidation/types';\n\nimport StyledAceEditor from './StyledAceEditor';\nimport type { Editor } from './ace-types';\n\nconst ACE_THEME = 'ace-queryinput';\n\nexport type BaseProps = {\n  className?: string\n  error?: QueryValidationState,\n  height?: number,\n  maxLines?: number,\n  onLoad?: (editor: Editor) => void,\n  placeholder?: string,\n  value: string,\n  warning?: QueryValidationState,\n  wrapEnabled?: boolean,\n  inputId?: string,\n};\n\ntype EnabledInputProps = BaseProps & {\n  disabled: false,\n  enableAutocompletion?: boolean,\n  onBlur?: (query: string) => void,\n  onChange: (query: string) => Promise,\n  onExecute: (editor: Editor) => void,\n};\ntype DisabledInputProps = BaseProps & { disabled: true };\ntype Props = EnabledInputProps | DisabledInputProps\n\nconst isEnabledInput = (props: Props): props is EnabledInputProps => !props.disabled;\nconst isDisabledInput = (props: Props): props is DisabledInputProps => props.disabled;\n\nconst getMarkers = (errors: QueryValidationState | undefined, warnings: QueryValidationState | undefined) => {\n  const markerClassName = 'ace_marker';\n  const createMarkers = (explanations: QueryValidationState['explanations'] = [], className: string = ''): IMarker[] => explanations.map(({\n    beginLine,\n    beginColumn,\n    endLine,\n    endColumn,\n  }) => ({\n    startRow: beginLine,\n    startCol: beginColumn,\n    endRow: endLine,\n    endCol: endColumn,\n    type: 'text',\n    className,\n  }));\n\n  return [\n    ...createMarkers(errors?.explanations, `${markerClassName} ace_validation_error`),\n    ...createMarkers(warnings?.explanations, `${markerClassName} ace_validation_warning`),\n  ];\n};\n\n// Basic query input component which is being implemented by the `QueryInput` component.\n// This is just a very basic query input which can be implemented for example to display a read only query.\nconst BasicQueryInput = forwardRef((props, ref) => {\n  const {\n    className,\n    disabled,\n    error,\n    height,\n    maxLines,\n    placeholder,\n    value,\n    warning,\n    wrapEnabled,\n    onLoad,\n    inputId,\n  } = props;\n  const theme = useTheme();\n  const markers = useMemo(() => getMarkers(error, warning), [error, warning]);\n  const _onLoad = useCallback((editor) => {\n    if (editor) {\n      editor.renderer.setScrollMargin(7, 6);\n      editor.renderer.setPadding(12);\n\n      if (inputId) {\n        editor.textInput.getElement().setAttribute('id', inputId);\n      }\n\n      onLoad?.(editor);\n    }\n  }, [inputId, onLoad]);\n  const editorProps = useMemo(() => ({ $blockScrolling: Infinity, selectionStyle: 'line' }), []);\n  const setOptions = useMemo(() => ({ indentedSoftWrap: false }), []);\n\n  const commonProps = {\n    $height: height,\n    $scTheme: theme,\n    theme: ACE_THEME,\n    className: `${className} ${ACE_THEME}`,\n    disabled,\n    editorProps,\n    fontSize: theme.fonts.size.small,\n    highlightActiveLine: false,\n    markers,\n    maxLines,\n    minLines: 1,\n    mode: 'lucene',\n    name: 'QueryEditor',\n    placeholder,\n    readOnly: disabled,\n    ref,\n    setOptions,\n    showGutter: false,\n    showPrintMargin: false,\n    value,\n    wrapEnabled,\n    onLoad: _onLoad,\n  };\n\n  if (isDisabledInput(props)) {\n    return ;\n  }\n\n  if (isEnabledInput(props)) {\n    const {\n      onBlur,\n      onChange,\n      enableAutocompletion,\n    } = props;\n\n    return (\n      \n    );\n  }\n\n  return null;\n});\n\nBasicQueryInput.propTypes = {\n  className: PropTypes.string,\n  // @ts-ignore\n  disabled: PropTypes.bool,\n  enableAutocompletion: PropTypes.bool,\n  error: PropTypes.any,\n  height: PropTypes.number,\n  inputId: PropTypes.string,\n  maxLines: PropTypes.number,\n  onBlur: PropTypes.func,\n  onChange: PropTypes.func,\n  onLoad: PropTypes.func,\n  placeholder: PropTypes.string,\n  value: PropTypes.string,\n  warning: PropTypes.any,\n  wrapEnabled: PropTypes.bool,\n};\n\nBasicQueryInput.defaultProps = {\n  className: '',\n  disabled: false,\n  enableAutocompletion: false,\n  error: undefined,\n  height: undefined,\n  inputId: undefined,\n  maxLines: 4,\n  onBlur: undefined,\n  onChange: undefined,\n  onLoad: undefined,\n  placeholder: '',\n  value: '',\n  warning: undefined,\n  wrapEnabled: true,\n};\n\nexport default React.memo(BasicQueryInput);\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 sortBy from 'lodash/sortBy';\nimport uniqBy from 'lodash/uniqBy';\n\nimport type { TimeRange, NoTimeRangeOverride } from 'views/logic/queries/Query';\nimport type FieldTypeMapping from 'views/logic/fieldtypes/FieldTypeMapping';\nimport type View from 'views/logic/views/View';\n\nimport type {\n  Editor,\n  ResultsCallback,\n  Session,\n  Position,\n  CompletionResult,\n  AutoCompleter,\n  Token,\n  Line,\n} from './queryinput/ace-types';\n\nexport type FieldTypes = { all: FieldIndex, query: FieldIndex };\ntype FieldIndex = { [fieldName: string]: FieldTypeMapping };\n\nexport type CompleterContext = Readonly<{\n  currentToken: Token | undefined | null,\n  prevToken: Token | undefined | null,\n  prefix: string,\n  tokens: Array,\n  currentTokenIdx: number,\n  timeRange?: TimeRange | NoTimeRangeOverride,\n  streams?: Array,\n  fieldTypes?: FieldTypes,\n  userTimezone: string,\n  view: View,\n}>;\n\nexport interface Completer {\n  getCompletions(context: CompleterContext): Array | Promise>;\n  shouldShowCompletions?: (currentLine: number, lines: Array>) => boolean;\n  identifierRegexps?: RegExp[];\n}\n\nconst onCompleterError = (error: Error) => {\n  // eslint-disable-next-line no-console\n  console.warn('Exception thrown in completer: ', error);\n};\n\nconst getCurrentTokenIdx = (session: Session, pos: Position) => {\n  let idx = 0;\n\n  for (let rowIdx = 0; rowIdx <= pos.row; rowIdx += 1) {\n    const row = session.getTokens(rowIdx);\n\n    if (rowIdx === pos.row) {\n      const currentToken = session.getTokenAt(pos.row, pos.column);\n      const idxInActiveLine = row.findIndex((t) => (t === currentToken));\n      idx += idxInActiveLine;\n    } else {\n      idx += row.length;\n    }\n  }\n\n  return idx;\n};\n\nconst formatTokens = (session: Session, pos: Position) => {\n  const rowAmount = session.getLength();\n  const allTokens = [...Array(rowAmount).keys()]\n    .map((_, index) => session.getTokens(index))\n    .filter((line) => !!line?.length)\n    .flat();\n  const currentTokenIdx = getCurrentTokenIdx(session, pos);\n  const currentToken = allTokens[currentTokenIdx];\n  const prevToken = allTokens[currentTokenIdx - 1] ?? null;\n\n  return {\n    tokens: allTokens,\n    currentTokenIdx,\n    currentToken,\n    prevToken,\n  };\n};\n\nexport default class SearchBarAutoCompletions implements AutoCompleter {\n  private readonly completers: Array;\n\n  private readonly timeRange: TimeRange | NoTimeRangeOverride | undefined;\n\n  private readonly streams: Array;\n\n  private readonly fieldTypes: FieldTypes;\n\n  private readonly userTimezone: string;\n\n  private readonly view: View;\n\n  constructor(\n    completers: Array,\n    timeRange: TimeRange | NoTimeRangeOverride | undefined,\n    streams: Array,\n    fieldTypes: FieldTypes,\n    userTimezone: string,\n    view: View,\n  ) {\n    this.completers = completers;\n    this.timeRange = timeRange;\n    this.streams = streams;\n    this.fieldTypes = fieldTypes;\n    this.userTimezone = userTimezone;\n    this.view = view;\n  }\n\n  getCompletions = async (editor: Editor, _session: Session, pos: Position, prefix: string, callback: ResultsCallback) => {\n    const { tokens, currentToken, currentTokenIdx, prevToken } = formatTokens(editor.session, pos);\n\n    const results = await Promise.all(\n      this.completers\n        .map(async (completer) => {\n          try {\n            return await completer.getCompletions({\n              currentToken,\n              prevToken,\n              prefix,\n              tokens,\n              currentTokenIdx,\n              timeRange: this.timeRange,\n              streams: this.streams,\n              fieldTypes: this.fieldTypes,\n              userTimezone: this.userTimezone,\n              view: this.view,\n            });\n          } catch (e) {\n            onCompleterError(e);\n          }\n\n          return [];\n        }),\n    );\n    const uniqResults = uniqBy(sortBy(results.flat(), ['score', 'name']), 'name');\n\n    callback(null, uniqResults);\n  };\n\n  get identifierRegexps() { return this.completers.map((completer) => completer.identifierRegexps ?? []).flat(); }\n}\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 * as React from 'react';\nimport { useCallback, useMemo, useContext, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport type { FormikErrors } from 'formik';\nimport styled, { css } from 'styled-components';\n\nimport UserPreferencesContext from 'contexts/UserPreferencesContext';\nimport type { TimeRange, NoTimeRangeOverride } from 'views/logic/queries/Query';\nimport QueryValidationActions from 'views/actions/QueryValidationActions';\nimport type { QueryValidationState } from 'views/components/searchbar/queryvalidation/types';\nimport useFieldTypes from 'views/logic/fieldtypes/useFieldTypes';\nimport { DEFAULT_TIMERANGE } from 'views/Constants';\nimport { isNoTimeRangeOverride } from 'views/typeGuards/timeRange';\nimport usePluginEntities from 'hooks/usePluginEntities';\nimport useUserDateTime from 'hooks/useUserDateTime';\nimport type View from 'views/logic/views/View';\nimport useView from 'views/hooks/useView';\n\nimport type { AutoCompleter, Editor, Command } from './ace-types';\nimport type { BaseProps } from './BasicQueryInput';\nimport BasicQueryInput from './BasicQueryInput';\n\nimport SearchBarAutoCompletions from '../SearchBarAutocompletions';\nimport type { Completer, FieldTypes } from '../SearchBarAutocompletions';\n\nconst defaultCompleterFactory = (...args: ConstructorParameters) => new SearchBarAutoCompletions(...args);\n\nconst Container = styled.div<{ $hasValue: boolean }>(({ $hasValue }) => css`\n  width: 100%;\n\n  .ace_hidden-cursors {\n    display: ${$hasValue ? 'block' : 'none'};\n  }\n`);\n\nconst displayValidationErrors = () => {\n  QueryValidationActions.displayValidationErrors();\n};\n\nconst handleExecution = ({\n  editor,\n  onExecute,\n  value,\n  error,\n  disableExecution,\n  isValidating,\n  validate,\n}: {\n  editor: Editor,\n  onExecute: (query: string) => void,\n  value: string,\n  error: QueryValidationState | undefined,\n  disableExecution: boolean,\n  isValidating: boolean,\n  validate: () => Promise>,\n}) => {\n  const execute = () => {\n    if (editor?.completer && editor.completer.popup) {\n      editor.completer.detach();\n    }\n\n    onExecute(value);\n  };\n\n  if (isValidating) {\n    validate().then((errors) => {\n      if (isEmpty(errors)) {\n        execute();\n      } else {\n        displayValidationErrors();\n      }\n    });\n\n    return;\n  }\n\n  if (error) {\n    displayValidationErrors();\n  }\n\n  if (disableExecution || error) {\n    return;\n  }\n\n  execute();\n};\n\n// This function takes care of all editor configuration options, which do not rely on external data.\n// It will only run once, on mount, which is important for e.g. the event listeners.\nconst _onLoadEditor = (editor: Editor, isInitialTokenizerUpdate: React.MutableRefObject) => {\n  if (editor) {\n    editor.commands.removeCommands(['find', 'indent', 'outdent']);\n\n    editor.session.on('tokenizerUpdate', () => {\n      if (editor.isFocused() && !editor.completer?.activated && !isInitialTokenizerUpdate.current) {\n        editor.execCommand('startAutocomplete');\n      }\n\n      if (isInitialTokenizerUpdate.current) {\n        // eslint-disable-next-line no-param-reassign\n        isInitialTokenizerUpdate.current = false;\n      }\n    });\n  }\n};\n\n// This function takes care of updating the editor config on every render.\n// This is necessary for configuration options which rely on external data.\n// Unfortunately it is not possible to configure for example the command once\n// with the `onLoad` or `commands` prop, because the reference for the related function will be outdated.\nconst _updateEditorConfiguration = (node: { editor: Editor; }, completer: AutoCompleter, commands: Array) => {\n  const editor = node && node.editor;\n\n  if (editor) {\n    editor.commands.on('afterExec', () => {\n      if (editor.completer?.autoSelect) {\n        editor.completer.autoSelect = false;\n      }\n\n      const completerCommandKeyBinding = editor.completer?.keyboardHandler?.commandKeyBinding;\n\n      if (completerCommandKeyBinding?.tab && completerCommandKeyBinding.tab.name !== 'improved-tab') {\n        editor.completer.keyboardHandler.addCommand({\n          name: 'improved-tab',\n          bindKey: { win: 'Tab', mac: 'Tab' },\n          exec: (currentEditor: Editor) => {\n            const result = currentEditor.completer.insertMatch();\n\n            if (!result && !currentEditor.tabstopManager) {\n              currentEditor.completer.goTo('down');\n\n              return currentEditor.completer.insertMatch();\n            }\n\n            return result;\n          },\n        });\n      }\n    });\n\n    commands.forEach((command) => editor.commands.addCommand(command));\n    editor.completers = [completer];\n  }\n};\n\nconst useCompleter = ({ streams, timeRange, completerFactory, userTimezone }: Pick & { userTimezone: string }) => {\n  const completers = usePluginEntities('views.completers');\n  const { data: queryFields } = useFieldTypes(streams, isNoTimeRangeOverride(timeRange) ? DEFAULT_TIMERANGE : timeRange);\n  const { data: allFields } = useFieldTypes([], DEFAULT_TIMERANGE);\n  const fieldTypes = useMemo(() => {\n    const queryFieldsByName = Object.fromEntries((queryFields ?? []).map((field) => [field.name, field]));\n    const allFieldsByName = Object.fromEntries((allFields ?? []).map((field) => [field.name, field]));\n\n    return { all: allFieldsByName, query: queryFieldsByName };\n  }, [allFields, queryFields]);\n  const view = useView();\n\n  return useMemo(() => completerFactory(completers ?? [], timeRange, streams, fieldTypes, userTimezone, view),\n    [completerFactory, completers, timeRange, streams, fieldTypes, userTimezone, view]);\n};\n\ntype Props = BaseProps & {\n  commands?: Array,\n  completerFactory?: (\n    completers: Array,\n    timeRange: TimeRange | NoTimeRangeOverride | undefined,\n    streams: Array,\n    fieldTypes: FieldTypes,\n    userTimezone: string,\n    view: View,\n  ) => AutoCompleter,\n  disableExecution?: boolean,\n  isValidating?: boolean,\n  name: string,\n  onBlur?: (query: string) => void,\n  onChange: (changeEvent: { target: { value: string, name: string } }) => Promise,\n  onExecute: (query: string) => void,\n  streams?: Array | undefined,\n  timeRange?: TimeRange | NoTimeRangeOverride | undefined,\n  validate: () => Promise>,\n};\n\nconst QueryInput = ({\n  className,\n  commands,\n  completerFactory = defaultCompleterFactory,\n  disableExecution,\n  error,\n  height,\n  inputId,\n  isValidating,\n  maxLines,\n  onBlur,\n  onChange,\n  onExecute: onExecuteProp,\n  placeholder,\n  streams,\n  timeRange,\n  value,\n  validate,\n  warning,\n  wrapEnabled,\n  name,\n}: Props) => {\n  const { userTimezone } = useUserDateTime();\n  const isInitialTokenizerUpdate = useRef(true);\n  const { enableSmartSearch } = useContext(UserPreferencesContext);\n  const completer = useCompleter({ streams, timeRange, completerFactory, userTimezone });\n  const onLoadEditor = useCallback((editor: Editor) => _onLoadEditor(editor, isInitialTokenizerUpdate), []);\n  const onExecute = useCallback((editor: Editor) => handleExecution({\n    editor,\n    onExecute: onExecuteProp,\n    value,\n    error,\n    disableExecution,\n    isValidating,\n    validate,\n  }), [onExecuteProp, value, error, disableExecution, isValidating, validate]);\n  const _commands = useMemo(() => [...commands, {\n    name: 'Execute',\n    bindKey: { win: 'Enter', mac: 'Enter' },\n    exec: onExecute,\n  }], [commands, onExecute]);\n  const updateEditorConfiguration = useCallback((node: { editor: Editor }) => _updateEditorConfiguration(node, completer, _commands), [_commands, completer]);\n  const _onChange = useCallback((newQuery: string) => {\n    onChange({ target: { value: newQuery, name } });\n\n    return Promise.resolve(newQuery);\n  }, [name, onChange]);\n\n  return (\n    \n      \n    \n  );\n};\n\nQueryInput.propTypes = {\n  className: PropTypes.string,\n  completerFactory: PropTypes.func,\n  disableExecution: PropTypes.bool,\n  error: PropTypes.any,\n  inputId: PropTypes.string,\n  height: PropTypes.number,\n  isValidating: PropTypes.bool.isRequired,\n  maxLines: PropTypes.number,\n  onBlur: PropTypes.func,\n  onChange: PropTypes.func.isRequired,\n  onExecute: PropTypes.func.isRequired,\n  placeholder: PropTypes.string,\n  streams: PropTypes.array,\n  timeRange: PropTypes.object,\n  value: PropTypes.string,\n  warning: PropTypes.any,\n  wrapEnabled: PropTypes.bool,\n  validate: PropTypes.func.isRequired,\n};\n\nQueryInput.defaultProps = {\n  className: '',\n  commands: [],\n  completerFactory: defaultCompleterFactory,\n  disableExecution: false,\n  error: undefined,\n  height: undefined,\n  inputId: undefined,\n  maxLines: undefined,\n  onBlur: undefined,\n  placeholder: '',\n  streams: undefined,\n  timeRange: undefined,\n  value: '',\n  warning: undefined,\n  wrapEnabled: undefined,\n};\n\nexport default QueryInput;\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 */\n// eslint-disable-next-line no-undef\nace.define('ace/theme/ace-queryinput', ['require', 'exports', 'module', 'ace/lib/dom'], (acequire, exports) => {\n  /* eslint-disable no-param-reassign */\n  exports.isDark = false;\n\n  exports.cssClass = 'ace-queryinput';\n  /* eslint-enable no-param-reassign */\n\n  const dom = acequire('../lib/dom');\n\n  dom.importCssString(exports.cssText, exports.cssClass);\n});\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 */\n// eslint-disable-next-line no-undef\nace.define('ace/mode/lucene_highlight_rules', ['require', 'exports', 'module', 'ace/lib/oop', 'ace/mode/text_highlight_rules'], (require, exports) => {\n  const oop = require('../lib/oop');\n  const { TextHighlightRules } = require('./text_highlight_rules');\n\n  // eslint-disable-next-line func-names\n  const LuceneHighlightRules = function () {\n    this.$rules = {\n      start: [\n        {\n          token: 'constant.language.escape',\n          regex: /\\\\[-+&|!(){}[\\]^\"~*?:\\\\]/,\n        }, {\n          token: 'constant.character.negation',\n          regex: '\\\\-',\n        }, {\n          token: 'constant.character.interro',\n          regex: '\\\\?',\n        }, {\n          token: 'constant.character.required',\n          regex: '\\\\+',\n        }, {\n          token: 'constant.character.asterisk',\n          regex: '\\\\*',\n        }, {\n          token: 'constant.character.proximity',\n          regex: '~(?:0\\\\.[0-9]+|[0-9]+)?',\n        }, {\n          token: 'keyword.operator',\n          regex: '(AND|OR|NOT|TO)\\\\b',\n        }, {\n          token: (value) => [{\n            type: 'paren.lparen',\n            value: value,\n          }],\n          regex: '[\\\\(\\\\{\\\\[]',\n        }, {\n          token: (value) => [{\n            type: 'paren.rparen',\n            value: value,\n          }],\n          regex: '[\\\\)\\\\}\\\\]]',\n        }, {\n          token: 'keyword.operator',\n          regex: /[><=^]/,\n        }, {\n          token: 'constant.numeric',\n          regex: /\\d[\\d.-]*/,\n        }, {\n          token: 'string',\n          regex: /\"(?:\\\\\"|[^\"])*\"/,\n        }, {\n          token: 'keyword',\n          regex: /(?:\\\\.|[^\\s\\-+&|!(){}[\\]^\"~*?:\\\\])+:/,\n          next: 'maybeRegex',\n        }, {\n          token: 'term',\n          regex: /[\\w\\\\/]+/,\n        }, {\n          token: 'text',\n          regex: /\\s+/,\n        },\n      ],\n      maybeRegex: [{\n        token: 'text',\n        regex: /\\s+/,\n      }, {\n        token: 'string.regexp.start',\n        regex: '/',\n        next: 'regex',\n      }, {\n        regex: '',\n        next: 'start',\n      }],\n      regex: [\n        {\n          token: 'regexp.keyword.operator',\n          regex: '\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)',\n        }, {\n          token: 'string.regexp.end',\n          regex: '/[sxngimy]*',\n          next: 'start',\n        }, {\n          token: 'invalid',\n          regex: /\\{\\d+\\b,?\\d*\\}[+*]|[+*$^?][+*]|[$^][?]|\\?{3,}/,\n        }, {\n          token: 'constant.language.escape',\n          regex: /\\(\\?[:=!]|\\)|\\{\\d+\\b,?\\d*\\}|[+*]\\?|[()$^+*?.]/,\n        }, {\n          token: 'constant.language.escape',\n          // eslint-disable-next-line no-useless-escape\n          regex: '<\\d+-\\d+>|[~&@]',\n        }, {\n          token: 'constant.language.delimiter',\n          regex: /\\|/,\n        }, {\n          token: 'constant.language.escape',\n          regex: /\\[\\^?/,\n          next: 'regex_character_class',\n        }, {\n          token: 'empty',\n          regex: '$',\n          next: 'start',\n        }, {\n          defaultToken: 'string.regexp',\n        },\n      ],\n      regex_character_class: [\n        {\n          token: 'regexp.charclass.keyword.operator',\n          regex: '\\\\\\\\(?:u[\\\\da-fA-F]{4}|x[\\\\da-fA-F]{2}|.)',\n        }, {\n          token: 'constant.language.escape',\n          regex: ']',\n          next: 'regex',\n        }, {\n          token: 'constant.language.escape',\n          regex: '-',\n        }, {\n          token: 'empty',\n          regex: '$',\n          next: 'start',\n        }, {\n          defaultToken: 'string.regexp.charachterclass',\n        },\n      ],\n    };\n  };\n\n  oop.inherits(LuceneHighlightRules, TextHighlightRules);\n\n  // eslint-disable-next-line no-param-reassign\n  exports.LuceneHighlightRules = LuceneHighlightRules;\n});\n\n// eslint-disable-next-line no-undef\nace.define('ace/mode/lucene', ['require', 'exports', 'module', 'ace/lib/oop', 'ace/mode/text', 'ace/mode/lucene_highlight_rules'], (require, exports) => {\n  const oop = require('../lib/oop');\n  const TextMode = require('./text').Mode;\n  const { LuceneHighlightRules } = require('./lucene_highlight_rules');\n\n  // eslint-disable-next-line func-names\n  const Mode = function () {\n    this.HighlightRules = LuceneHighlightRules;\n    this.$behaviour = this.$defaultBehaviour;\n  };\n\n  oop.inherits(Mode, TextMode);\n\n  // eslint-disable-next-line func-names\n  (function () {\n    this.$id = 'ace/mode/lucene';\n  }).call(Mode.prototype);\n\n  // eslint-disable-next-line no-param-reassign\n  exports.Mode = Mode;\n});\n\n// eslint-disable-next-line func-names\n(function () {\n  // eslint-disable-next-line no-undef\n  ace.require(['ace/mode/lucene'], (m) => {\n    if (typeof module === 'object' && typeof exports === 'object' && module) {\n      module.exports = m;\n    }\n  });\n}());\n","var baseIteratee = require('./_baseIteratee'),\n    baseUniq = require('./_baseUniq');\n\n/**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\nfunction uniqBy(array, iteratee) {\n  return (array && array.length) ? baseUniq(array, baseIteratee(iteratee, 2)) : [];\n}\n\nmodule.exports = uniqBy;\n"],"names":["$scTheme","$height","disabled","ACE_THEME","isEnabledInput","props","isDisabledInput","getMarkers","errors","warnings","markerClassName","createMarkers","explanations","className","beginLine","beginColumn","endLine","endColumn","BasicQueryInput","ref","error","height","maxLines","placeholder","value","warning","wrapEnabled","onLoad","inputId","theme","markers","_onLoad","editor","editorProps","setOptions","commonProps","onBlur","onChange","enableAutocompletion","onCompleterError","getCurrentTokenIdx","session","pos","idx","rowIdx","row","currentToken","idxInActiveLine","t","formatTokens","rowAmount","allTokens","_","index","line","currentTokenIdx","prevToken","SearchBarAutoCompletions","completers","timeRange","streams","fieldTypes","userTimezone","view","_session","prefix","callback","tokens","results","completer","e","uniqResults","defaultCompleterFactory","args","Container","$hasValue","displayValidationErrors","QueryValidationActions","handleExecution","onExecute","disableExecution","isValidating","validate","execute","_onLoadEditor","isInitialTokenizerUpdate","_updateEditorConfiguration","node","commands","completerCommandKeyBinding","currentEditor","result","command","useCompleter","completerFactory","usePluginEntities","queryFields","useFieldTypes","allFields","queryFieldsByName","field","useView","QueryInput","onExecuteProp","name","useUserDateTime","enableSmartSearch","UserPreferencesContext","onLoadEditor","_commands","updateEditorConfiguration","_onChange","newQuery","acequire","exports","require","oop","TextHighlightRules","LuceneHighlightRules","TextMode","Mode","m","module","baseIteratee","baseUniq","uniqBy","array","iteratee"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy