diff --git a/.buildkite/ftr_platform_stateful_configs.yml b/.buildkite/ftr_platform_stateful_configs.yml index fc46fa24f257f..301670605a0dd 100644 --- a/.buildkite/ftr_platform_stateful_configs.yml +++ b/.buildkite/ftr_platform_stateful_configs.yml @@ -44,8 +44,7 @@ enabled: - test/api_integration/config.js - test/examples/config.js - test/functional/apps/bundles/config.ts - - test/functional/apps/console/monaco/config.ts - - test/functional/apps/console/ace/config.ts + - test/functional/apps/console/config.ts - test/functional/apps/context/config.ts - test/functional/apps/dashboard_elements/controls/common/config.ts - test/functional/apps/dashboard_elements/controls/options_list/config.ts @@ -352,6 +351,7 @@ enabled: - x-pack/performance/journeys_e2e/tsdb_logs_data_visualizer.ts - x-pack/performance/journeys_e2e/promotion_tracking_dashboard.ts - x-pack/performance/journeys_e2e/web_logs_dashboard.ts + - x-pack/performance/journeys_e2e/web_logs_dashboard_esql.ts - x-pack/performance/journeys_e2e/data_stress_test_lens.ts - x-pack/performance/journeys_e2e/ecommerce_dashboard_saved_search_only.ts - x-pack/performance/journeys_e2e/ecommerce_dashboard_tsvb_gauge_only.ts diff --git a/.buildkite/ftr_security_serverless_configs.yml b/.buildkite/ftr_security_serverless_configs.yml index 89ebb4aa12cd4..6d42c030b2d4f 100644 --- a/.buildkite/ftr_security_serverless_configs.yml +++ b/.buildkite/ftr_security_serverless_configs.yml @@ -81,6 +81,7 @@ enabled: - x-pack/test/security_solution_api_integration/test_suites/genai/knowledge_base/entries/trial_license_complete_tier/configs/serverless.config.ts - x-pack/test/security_solution_api_integration/test_suites/entity_analytics/risk_engine/trial_license_complete_tier/configs/serverless.config.ts - x-pack/test/security_solution_api_integration/test_suites/entity_analytics/risk_engine/basic_license_essentials_tier/configs/serverless.config.ts + - x-pack/test/security_solution_api_integration/test_suites/entity_analytics/entity_store/trial_license_complete_tier/configs/serverless.config.ts - x-pack/test/security_solution_api_integration/test_suites/lists_and_exception_lists/exception_lists_items/trial_license_complete_tier/configs/serverless.config.ts - x-pack/test/security_solution_api_integration/test_suites/lists_and_exception_lists/lists_items/trial_license_complete_tier/configs/serverless.config.ts - x-pack/test/security_solution_api_integration/test_suites/explore/hosts/trial_license_complete_tier/configs/serverless.config.ts diff --git a/.buildkite/ftr_security_stateful_configs.yml b/.buildkite/ftr_security_stateful_configs.yml index 77a8c57029096..a2390fa2bd27f 100644 --- a/.buildkite/ftr_security_stateful_configs.yml +++ b/.buildkite/ftr_security_stateful_configs.yml @@ -62,6 +62,7 @@ enabled: - x-pack/test/security_solution_api_integration/test_suites/detections_response/user_roles/trial_license_complete_tier/configs/ess.config.ts - x-pack/test/security_solution_api_integration/test_suites/entity_analytics/risk_engine/trial_license_complete_tier/configs/ess.config.ts - x-pack/test/security_solution_api_integration/test_suites/entity_analytics/risk_engine/basic_license_essentials_tier/configs/ess.config.ts + - x-pack/test/security_solution_api_integration/test_suites/entity_analytics/entity_store/trial_license_complete_tier/configs/ess.config.ts - x-pack/test/security_solution_api_integration/test_suites/lists_and_exception_lists/exception_lists_items/trial_license_complete_tier/configs/ess.config.ts - x-pack/test/security_solution_api_integration/test_suites/lists_and_exception_lists/lists_items/trial_license_complete_tier/configs/ess.config.ts - x-pack/test/security_solution_api_integration/test_suites/explore/hosts/trial_license_complete_tier/configs/ess.config.ts diff --git a/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts b/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts index b58f2728a8706..6f751e86057f7 100755 --- a/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts +++ b/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts @@ -38,7 +38,6 @@ async function main() { const preamble = locationFileLines.slice(0, 1); - // eslint-disable-next-line @kbn/eslint/no_unsafe_js_yaml const locationObj = jsYaml.load( locationFileLines.slice(1).join('\n') ) as BackstageLocationResource; @@ -46,7 +45,6 @@ async function main() { (fileName) => `${resourceDefinitionsBaseUrl}/${fileName}` ); - // eslint-disable-next-line @kbn/eslint/no_unsafe_js_yaml const locationYaml = jsYaml.dump(locationObj, { lineWidth: 400 }); fs.writeFileSync(locationFile, `${preamble.join('\n')}\n${locationYaml}`); diff --git a/.buildkite/pipeline-utils/agent_images.ts b/.buildkite/pipeline-utils/agent_images.ts index cfe93ba67a1f4..a87ea8dca6234 100644 --- a/.buildkite/pipeline-utils/agent_images.ts +++ b/.buildkite/pipeline-utils/agent_images.ts @@ -7,7 +7,6 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -// eslint-disable-next-line @kbn/eslint/no_unsafe_js_yaml import { dump } from 'js-yaml'; import { BuildkiteClient, BuildkiteCommandStep } from './buildkite'; diff --git a/.buildkite/pipeline-utils/buildkite/client.ts b/.buildkite/pipeline-utils/buildkite/client.ts index ac5fa4756bdaf..f96f18c7ee6cc 100644 --- a/.buildkite/pipeline-utils/buildkite/client.ts +++ b/.buildkite/pipeline-utils/buildkite/client.ts @@ -10,7 +10,6 @@ import axios, { AxiosInstance } from 'axios'; import { execSync, ExecSyncOptions } from 'child_process'; -// eslint-disable-next-line @kbn/eslint/no_unsafe_js_yaml import { dump } from 'js-yaml'; import { parseLinkHeader } from './parse_link_header'; diff --git a/.buildkite/pipeline-utils/ci-stats/pick_test_group_run_order.ts b/.buildkite/pipeline-utils/ci-stats/pick_test_group_run_order.ts index 1f50bccbf8049..0ccc991c1def9 100644 --- a/.buildkite/pipeline-utils/ci-stats/pick_test_group_run_order.ts +++ b/.buildkite/pipeline-utils/ci-stats/pick_test_group_run_order.ts @@ -12,7 +12,6 @@ import * as Fs from 'fs'; import * as globby from 'globby'; import minimatch from 'minimatch'; -// eslint-disable-next-line @kbn/eslint/no_unsafe_js_yaml import { load as loadYaml } from 'js-yaml'; import { BuildkiteClient, BuildkiteStep } from '../buildkite'; @@ -197,6 +196,32 @@ function getEnabledFtrConfigs(patterns?: string[]) { } } +/** + * Collects environment variables from labels on the PR + * TODO: extract this (and other functions from this big file) to a separate module + */ +function collectEnvFromLabels() { + const LABEL_MAPPING: Record> = { + 'ci:use-chrome-beta': { + USE_CHROME_BETA: 'true', + }, + }; + + const envFromlabels: Record = {}; + if (!process.env.GITHUB_PR_LABELS) { + return envFromlabels; + } else { + const labels = process.env.GITHUB_PR_LABELS.split(','); + labels.forEach((label) => { + const env = LABEL_MAPPING[label]; + if (env) { + Object.assign(envFromlabels, env); + } + }); + return envFromlabels; + } +} + export async function pickTestGroupRunOrder() { const bk = new BuildkiteClient(); const ciStats = new CiStatsClient(); @@ -273,9 +298,10 @@ export async function pickTestGroupRunOrder() { .filter(Boolean) : ['build']; - const FTR_EXTRA_ARGS: Record = process.env.FTR_EXTRA_ARGS + const ftrExtraArgs: Record = process.env.FTR_EXTRA_ARGS ? { FTR_EXTRA_ARGS: process.env.FTR_EXTRA_ARGS } : {}; + const envFromlabels: Record = collectEnvFromLabels(); const { defaultQueue, ftrConfigsByQueue } = getEnabledFtrConfigs(FTR_CONFIG_PATTERNS); @@ -514,7 +540,8 @@ export async function pickTestGroupRunOrder() { agents: expandAgentQueue(queue), env: { FTR_CONFIG_GROUP_KEY: key, - ...FTR_EXTRA_ARGS, + ...ftrExtraArgs, + ...envFromlabels, }, retry: { automatic: [ diff --git a/.buildkite/scripts/steps/esql_generate_function_metadata.sh b/.buildkite/scripts/steps/esql_generate_function_metadata.sh index 837a962b3c42b..07de4bc9bd04c 100755 --- a/.buildkite/scripts/steps/esql_generate_function_metadata.sh +++ b/.buildkite/scripts/steps/esql_generate_function_metadata.sh @@ -2,7 +2,7 @@ set -euo pipefail VALIDATION_PACKAGE_DIR="packages/kbn-esql-validation-autocomplete" -EDITOR_PACKAGE_DIR="packages/kbn-text-based-editor" +EDITOR_PACKAGE_DIR="packages/kbn-language-documentation-popover" GIT_SCOPE="$VALIDATION_PACKAGE_DIR/**/* $EDITOR_PACKAGE_DIR/**/*" report_main_step () { diff --git a/.buildkite/scripts/steps/functional/performance_playwright.sh b/.buildkite/scripts/steps/functional/performance_playwright.sh index d84bf77ed54cf..2787d6f5b68a0 100644 --- a/.buildkite/scripts/steps/functional/performance_playwright.sh +++ b/.buildkite/scripts/steps/functional/performance_playwright.sh @@ -39,8 +39,13 @@ if [ "$BUILDKITE_PIPELINE_SLUG" == "kibana-performance-data-set-extraction" ]; t node scripts/run_performance.js --kibana-install-dir "$KIBANA_BUILD_LOCATION" --skip-warmup else # pipeline should use bare metal static worker - echo "--- Running performance tests" - node scripts/run_performance.js --kibana-install-dir "$KIBANA_BUILD_LOCATION" + if [[ -z "${JOURNEYS_GROUP+x}" ]]; then + echo "--- Running performance tests" + node scripts/run_performance.js --kibana-install-dir "$KIBANA_BUILD_LOCATION" + else + echo "--- Running performance tests: '$JOURNEYS_GROUP' group" + node scripts/run_performance.js --kibana-install-dir "$KIBANA_BUILD_LOCATION" --group "$JOURNEYS_GROUP" + fi fi echo "--- Upload journey step screenshots" diff --git a/.buildkite/scripts/steps/storybooks/build_and_upload.ts b/.buildkite/scripts/steps/storybooks/build_and_upload.ts index 96208bc02b310..148742c2ae046 100644 --- a/.buildkite/scripts/steps/storybooks/build_and_upload.ts +++ b/.buildkite/scripts/steps/storybooks/build_and_upload.ts @@ -22,7 +22,6 @@ const STORYBOOKS = [ 'coloring', 'chart_icons', 'content_management_examples', - 'controls', 'custom_integrations', 'dashboard_enhanced', 'dashboard', diff --git a/.buildkite/scripts/steps/test/ftr_configs.sh b/.buildkite/scripts/steps/test/ftr_configs.sh index e9500a2244707..67fbfd9c95b20 100755 --- a/.buildkite/scripts/steps/test/ftr_configs.sh +++ b/.buildkite/scripts/steps/test/ftr_configs.sh @@ -57,6 +57,19 @@ while read -r config; do start=$(date +%s) + if [[ "${USE_CHROME_BETA:-}" =~ ^(1|true)$ ]]; then + echo "USE_CHROME_BETA was set - using google-chrome-beta" + export TEST_BROWSER_BINARY_PATH="$(which google-chrome-beta)" + + # download the beta version of chromedriver + export CHROMEDRIVER_VERSION=$(curl https://googlechromelabs.github.io/chrome-for-testing/last-known-good-versions.json -s | jq -r '.channels.Beta.version') + export DETECT_CHROMEDRIVER_VERSION=false + node node_modules/chromedriver/install.js --chromedriver-force-download + + # set annotation on the build + buildkite-agent annotate --style info --context chrome-beta "This build uses Google Chrome Beta @ ${CHROMEDRIVER_VERSION}" + fi + # prevent non-zero exit code from breaking the loop set +e; node ./scripts/functional_tests \ diff --git a/.devcontainer/.env.template b/.devcontainer/.env.template index 3ca02c49bfa9c..b812dc9659a02 100644 --- a/.devcontainer/.env.template +++ b/.devcontainer/.env.template @@ -1,4 +1,5 @@ # /bin/bash or /bin/zsh (oh-my-zsh is installed by default as well) SHELL=/bin/bash -# Switch to 1 to enable FIPS environment, any other value to disable +# Switch to 1 to enable FIPS environment, any other value to disable, +# then close and reopen a new terminal to setup the environment FIPS=0 diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 539e23a4a3a31..5f925468ac716 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -4,7 +4,6 @@ ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 ENV HOME=/home/vscode ENV NVM_DIR=${HOME}/nvm ENV NVM_VERSION=v0.39.1 -ENV KBN_DIR=/workspaces/kibana ENV OPENSSL_PATH=${HOME}/openssl # Only specific versions are FIPS certified. ENV OPENSSL_VERSION='3.0.8' @@ -49,6 +48,10 @@ WORKDIR ${KBN_DIR} # Node and NVM setup COPY .node-version /tmp/ + +# Mac will have permissions issues if Node and NVM are installed as root +USER vscode + RUN mkdir -p $NVM_DIR && \ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/${NVM_VERSION}/install.sh | bash && \ . "$NVM_DIR/nvm.sh" && \ @@ -61,6 +64,8 @@ RUN mkdir -p $NVM_DIR && \ echo "source $NVM_DIR/nvm.sh" >> ${HOME}/.zshrc && \ chown -R 1000:1000 "${HOME}/.npm" +USER root + # Reload the env everytime a new shell is opened incase the .env file changed. RUN echo "source $KBN_DIR/.devcontainer/scripts/env.sh" >> ${HOME}/.bashrc && \ echo "source $KBN_DIR/.devcontainer/scripts/env.sh" >> ${HOME}/.zshrc diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index f5fea9e37c5d3..932c16ddb293d 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -23,8 +23,11 @@ 9230, 9231 ], - "postStartCommand": "/workspaces/kibana/.devcontainer/scripts/post_start.sh", + "postStartCommand": "${containerWorkspaceFolder}/.devcontainer/scripts/post_start.sh", "remoteUser": "vscode", + "containerEnv": { + "KBN_DIR": "${containerWorkspaceFolder}" + }, "features": { "ghcr.io/devcontainers/features/docker-in-docker:2": { "version": "latest", diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 457458ec5b1c6..7ec76d03da9e0 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -183,6 +183,12 @@ packages/core/execution-context/core-execution-context-server-mocks @elastic/kib packages/core/fatal-errors/core-fatal-errors-browser @elastic/kibana-core packages/core/fatal-errors/core-fatal-errors-browser-internal @elastic/kibana-core packages/core/fatal-errors/core-fatal-errors-browser-mocks @elastic/kibana-core +packages/core/feature-flags/core-feature-flags-browser @elastic/kibana-core +packages/core/feature-flags/core-feature-flags-browser-internal @elastic/kibana-core +packages/core/feature-flags/core-feature-flags-browser-mocks @elastic/kibana-core +packages/core/feature-flags/core-feature-flags-server @elastic/kibana-core +packages/core/feature-flags/core-feature-flags-server-internal @elastic/kibana-core +packages/core/feature-flags/core-feature-flags-server-mocks @elastic/kibana-core test/plugin_functional/plugins/core_history_block @elastic/kibana-core packages/core/http/core-http-browser @elastic/kibana-core packages/core/http/core-http-browser-internal @elastic/kibana-core @@ -453,6 +459,7 @@ examples/expressions_explorer @elastic/kibana-visualizations src/plugins/expressions @elastic/kibana-visualizations packages/kbn-failed-test-reporter-cli @elastic/kibana-operations @elastic/appex-qa examples/feature_control_examples @elastic/kibana-security +examples/feature_flags_example @elastic/kibana-core x-pack/test/plugin_api_integration/plugins/feature_usage_test @elastic/kibana-security x-pack/plugins/features @elastic/kibana-core x-pack/test/functional_execution_context/plugins/alerts @elastic/kibana-core @@ -1354,6 +1361,7 @@ x-pack/plugins/cloud_integrations/cloud_full_story/server/config.ts @elastic/kib # Kibana Platform Security /.github/codeql @elastic/kibana-security /.github/workflows/codeql.yml @elastic/kibana-security +/.github/workflows/codeql-stats.yml @elastic/kibana-security /src/dev/eslint/security_eslint_rule_tests.ts @elastic/kibana-security /src/core/server/integration_tests/config/check_dynamic_config.test.ts @elastic/kibana-security /src/plugins/telemetry/server/config/telemetry_labels.ts @elastic/kibana-security @@ -1759,7 +1767,7 @@ x-pack/plugins/security_solution/server/lib/security_integrations @elastic/secur /x-pack/plugins/monitoring/**/*.scss @elastic/observability-design # Ent. Search design -/x-pack/plugins/enterprise_search/**/*.scss @elastic/ent-search-design +/x-pack/plugins/enterprise_search/**/*.scss @elastic/search-design # Security design /x-pack/plugins/endpoint/**/*.scss @elastic/security-design diff --git a/.github/workflows/codeql-stats.yml b/.github/workflows/codeql-stats.yml new file mode 100644 index 0000000000000..fc01cdd969295 --- /dev/null +++ b/.github/workflows/codeql-stats.yml @@ -0,0 +1,28 @@ +name: CodeQL statistics + +on: + schedule: + - cron: '27 0 * * 1' # At 00:27 every Monday + +jobs: + stats: + name: CodeQL statistics + runs-on: ubuntu-latest + if: github.repository == 'elastic/kibana' # Hack: Do not run on forks + steps: + - name: Checkout kibana-operations + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + repository: 'elastic/kibana-operations' + ref: main + path: ./kibana-operations + token: ${{secrets.KIBANAMACHINE_TOKEN}} + + - name: CodeQL alert statistics + working-directory: ./kibana-operations/triage + env: + GITHUB_TOKEN: ${{secrets.KIBANAMACHINE_TOKEN}} + SLACK_TOKEN: ${{secrets.CODE_SCANNING_SLACK_TOKEN}} + run: | + npm ci --omit=dev + node codeql-alert-stats diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index dc9eaee70fa51..82080dd9235f9 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -54,3 +54,25 @@ jobs: category: "/language:${{matrix.language}}" ref: ${{ env.CHECKOUT_REF }} sha: ${{ env.CHECKOUT_SHA }} + alert: + name: Alert + runs-on: ubuntu-latest + needs: analyze + if: github.repository == 'elastic/kibana' # Hack: Do not run on forks + steps: + - name: Checkout kibana-operations + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + repository: 'elastic/kibana-operations' + ref: main + path: ./kibana-operations + token: ${{secrets.KIBANAMACHINE_TOKEN}} + + - name: CodeQL alert + working-directory: ./kibana-operations/triage + env: + GITHUB_TOKEN: ${{secrets.KIBANAMACHINE_TOKEN}} + SLACK_TOKEN: ${{secrets.CODE_SCANNING_SLACK_TOKEN}} + run: | + npm ci --omit=dev + node codeql-alert diff --git a/api_docs/actions.mdx b/api_docs/actions.mdx index 70e65ec3ed3da..e4e0104f1491f 100644 --- a/api_docs/actions.mdx +++ b/api_docs/actions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/actions title: "actions" image: https://source.unsplash.com/400x175/?github description: API docs for the actions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'actions'] --- import actionsObj from './actions.devdocs.json'; diff --git a/api_docs/advanced_settings.mdx b/api_docs/advanced_settings.mdx index a48b067ad9790..1cb3a87f9e883 100644 --- a/api_docs/advanced_settings.mdx +++ b/api_docs/advanced_settings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/advancedSettings title: "advancedSettings" image: https://source.unsplash.com/400x175/?github description: API docs for the advancedSettings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'advancedSettings'] --- import advancedSettingsObj from './advanced_settings.devdocs.json'; diff --git a/api_docs/ai_assistant_management_selection.mdx b/api_docs/ai_assistant_management_selection.mdx index a1013eb0966d2..dfc340739e4d5 100644 --- a/api_docs/ai_assistant_management_selection.mdx +++ b/api_docs/ai_assistant_management_selection.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/aiAssistantManagementSelection title: "aiAssistantManagementSelection" image: https://source.unsplash.com/400x175/?github description: API docs for the aiAssistantManagementSelection plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'aiAssistantManagementSelection'] --- import aiAssistantManagementSelectionObj from './ai_assistant_management_selection.devdocs.json'; diff --git a/api_docs/aiops.mdx b/api_docs/aiops.mdx index d2be63d8ed7cd..b161052452d05 100644 --- a/api_docs/aiops.mdx +++ b/api_docs/aiops.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/aiops title: "aiops" image: https://source.unsplash.com/400x175/?github description: API docs for the aiops plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'aiops'] --- import aiopsObj from './aiops.devdocs.json'; diff --git a/api_docs/alerting.mdx b/api_docs/alerting.mdx index d27f6497a9543..b9277e60a8c21 100644 --- a/api_docs/alerting.mdx +++ b/api_docs/alerting.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/alerting title: "alerting" image: https://source.unsplash.com/400x175/?github description: API docs for the alerting plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'alerting'] --- import alertingObj from './alerting.devdocs.json'; diff --git a/api_docs/apm.mdx b/api_docs/apm.mdx index 5f2aadf4ec2d8..89dcfb4015864 100644 --- a/api_docs/apm.mdx +++ b/api_docs/apm.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/apm title: "apm" image: https://source.unsplash.com/400x175/?github description: API docs for the apm plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'apm'] --- import apmObj from './apm.devdocs.json'; diff --git a/api_docs/apm_data_access.mdx b/api_docs/apm_data_access.mdx index b46bd1a0c3436..c7ed4fad1b0b4 100644 --- a/api_docs/apm_data_access.mdx +++ b/api_docs/apm_data_access.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/apmDataAccess title: "apmDataAccess" image: https://source.unsplash.com/400x175/?github description: API docs for the apmDataAccess plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'apmDataAccess'] --- import apmDataAccessObj from './apm_data_access.devdocs.json'; diff --git a/api_docs/banners.mdx b/api_docs/banners.mdx index 82649312c9982..13af2ccc3f215 100644 --- a/api_docs/banners.mdx +++ b/api_docs/banners.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/banners title: "banners" image: https://source.unsplash.com/400x175/?github description: API docs for the banners plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'banners'] --- import bannersObj from './banners.devdocs.json'; diff --git a/api_docs/bfetch.mdx b/api_docs/bfetch.mdx index 2900c30036e4d..3843c9535ccd6 100644 --- a/api_docs/bfetch.mdx +++ b/api_docs/bfetch.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/bfetch title: "bfetch" image: https://source.unsplash.com/400x175/?github description: API docs for the bfetch plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'bfetch'] --- import bfetchObj from './bfetch.devdocs.json'; diff --git a/api_docs/canvas.mdx b/api_docs/canvas.mdx index 55d203b475c98..12f4f0a614412 100644 --- a/api_docs/canvas.mdx +++ b/api_docs/canvas.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/canvas title: "canvas" image: https://source.unsplash.com/400x175/?github description: API docs for the canvas plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'canvas'] --- import canvasObj from './canvas.devdocs.json'; diff --git a/api_docs/cases.mdx b/api_docs/cases.mdx index ea895dcdd8d2e..da82fe3364d26 100644 --- a/api_docs/cases.mdx +++ b/api_docs/cases.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cases title: "cases" image: https://source.unsplash.com/400x175/?github description: API docs for the cases plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cases'] --- import casesObj from './cases.devdocs.json'; diff --git a/api_docs/charts.mdx b/api_docs/charts.mdx index e9d9eef843f02..f87336b8ff83c 100644 --- a/api_docs/charts.mdx +++ b/api_docs/charts.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/charts title: "charts" image: https://source.unsplash.com/400x175/?github description: API docs for the charts plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'charts'] --- import chartsObj from './charts.devdocs.json'; diff --git a/api_docs/cloud.devdocs.json b/api_docs/cloud.devdocs.json index a421bcc26d64a..9c44d677eb6ee 100644 --- a/api_docs/cloud.devdocs.json +++ b/api_docs/cloud.devdocs.json @@ -473,19 +473,23 @@ }, { "parentPluginId": "cloud", - "id": "def-public.CloudStart.elasticsearchUrl", - "type": "string", + "id": "def-public.CloudStart.fetchElasticsearchConfig", + "type": "Function", "tags": [], - "label": "elasticsearchUrl", + "label": "fetchElasticsearchConfig", "description": [ - "\nThe full URL to the elasticsearch cluster." + "\nFetches the full URL to the elasticsearch cluster." ], "signature": [ - "string | undefined" + "() => Promise<", + "PublicElasticsearchConfigType", + ">" ], "path": "x-pack/plugins/cloud/public/types.ts", "deprecated": false, - "trackAdoption": false + "trackAdoption": false, + "children": [], + "returnComment": [] }, { "parentPluginId": "cloud", @@ -730,19 +734,23 @@ }, { "parentPluginId": "cloud", - "id": "def-public.CloudSetup.elasticsearchUrl", - "type": "string", + "id": "def-public.CloudSetup.fetchElasticsearchConfig", + "type": "Function", "tags": [], - "label": "elasticsearchUrl", + "label": "fetchElasticsearchConfig", "description": [ - "\nThe full URL to the elasticsearch cluster." + "\nFetches the full URL to the elasticsearch cluster." ], "signature": [ - "string | undefined" + "() => Promise<", + "PublicElasticsearchConfigType", + ">" ], "path": "x-pack/plugins/cloud/public/types.ts", "deprecated": false, - "trackAdoption": false + "trackAdoption": false, + "children": [], + "returnComment": [] }, { "parentPluginId": "cloud", diff --git a/api_docs/cloud.mdx b/api_docs/cloud.mdx index 0bfd3fd4f77b9..52f7f8b9460e3 100644 --- a/api_docs/cloud.mdx +++ b/api_docs/cloud.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloud title: "cloud" image: https://source.unsplash.com/400x175/?github description: API docs for the cloud plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloud'] --- import cloudObj from './cloud.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 84 | 0 | 21 | 0 | +| 84 | 0 | 21 | 1 | ## Client diff --git a/api_docs/cloud_data_migration.mdx b/api_docs/cloud_data_migration.mdx index b06b4188189bd..00da0feb4b77a 100644 --- a/api_docs/cloud_data_migration.mdx +++ b/api_docs/cloud_data_migration.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloudDataMigration title: "cloudDataMigration" image: https://source.unsplash.com/400x175/?github description: API docs for the cloudDataMigration plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloudDataMigration'] --- import cloudDataMigrationObj from './cloud_data_migration.devdocs.json'; diff --git a/api_docs/cloud_defend.mdx b/api_docs/cloud_defend.mdx index 346048dff210d..b549df3505d93 100644 --- a/api_docs/cloud_defend.mdx +++ b/api_docs/cloud_defend.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloudDefend title: "cloudDefend" image: https://source.unsplash.com/400x175/?github description: API docs for the cloudDefend plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloudDefend'] --- import cloudDefendObj from './cloud_defend.devdocs.json'; diff --git a/api_docs/cloud_experiments.mdx b/api_docs/cloud_experiments.mdx index 5355d303114ad..8c730a3380970 100644 --- a/api_docs/cloud_experiments.mdx +++ b/api_docs/cloud_experiments.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloudExperiments title: "cloudExperiments" image: https://source.unsplash.com/400x175/?github description: API docs for the cloudExperiments plugin -date: 2024-09-16 +date: 2024-09-18 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloudExperiments'] --- import cloudExperimentsObj from './cloud_experiments.devdocs.json'; diff --git a/api_docs/cloud_security_posture.mdx b/api_docs/cloud_security_posture.mdx index a146286825fcc..1f75ab142868d 100644 --- a/api_docs/cloud_security_posture.mdx +++ b/api_docs/cloud_security_posture.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloudSecurityPosture title: "cloudSecurityPosture" image: https://source.unsplash.com/400x175/?github description: API docs for the cloudSecurityPosture plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloudSecurityPosture'] --- import cloudSecurityPostureObj from './cloud_security_posture.devdocs.json'; diff --git a/api_docs/console.mdx b/api_docs/console.mdx index 269ed079e6d4b..8a9219f181280 100644 --- a/api_docs/console.mdx +++ b/api_docs/console.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/console title: "console" image: https://source.unsplash.com/400x175/?github description: API docs for the console plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'console'] --- import consoleObj from './console.devdocs.json'; diff --git a/api_docs/content_management.mdx b/api_docs/content_management.mdx index 29cb35ccf33c1..099962d6a9822 100644 --- a/api_docs/content_management.mdx +++ b/api_docs/content_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/contentManagement title: "contentManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the contentManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'contentManagement'] --- import contentManagementObj from './content_management.devdocs.json'; diff --git a/api_docs/controls.devdocs.json b/api_docs/controls.devdocs.json index 2ebcd4787c9ad..98a9926f2f4d5 100644 --- a/api_docs/controls.devdocs.json +++ b/api_docs/controls.devdocs.json @@ -1,2043 +1,7 @@ { "id": "controls", "client": { - "classes": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer", - "type": "Class", - "tags": [], - "label": "ControlGroupContainer", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupContainer", - "text": "ControlGroupContainer" - }, - " extends ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.Container", - "text": "Container" - }, - "<", - "ControlInput", - ", ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ", ", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupOutput", - "text": "ControlGroupOutput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.type", - "type": "string", - "tags": [], - "label": "type", - "description": [], - "signature": [ - "\"control_group\"" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.anyControlOutputConsumerLoading$", - "type": "Object", - "tags": [], - "label": "anyControlOutputConsumerLoading$", - "description": [], - "signature": [ - "Subject", - "" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.diffingSubscription", - "type": "Object", - "tags": [], - "label": "diffingSubscription", - "description": [], - "signature": [ - "Subscription" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.select", - "type": "Function", - "tags": [], - "label": "select", - "description": [], - "signature": [ - "(selector: (state: ", - "ControlGroupReduxState", - ") => Selected, equalityFn?: ((previous: Selected, next: Selected) => boolean) | undefined) => Selected" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.select.$1", - "type": "Function", - "tags": [], - "label": "selector", - "description": [], - "signature": [ - "(state: ReduxStateType) => Selected" - ], - "path": "src/plugins/presentation_util/public/redux_tools/types.ts", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.select.$1.$1", - "type": "Uncategorized", - "tags": [], - "label": "state", - "description": [], - "signature": [ - "ReduxStateType" - ], - "path": "src/plugins/presentation_util/public/redux_tools/types.ts", - "deprecated": false, - "trackAdoption": false - } - ] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.select.$2", - "type": "Function", - "tags": [], - "label": "equalityFn", - "description": [], - "signature": [ - "((previous: Selected, next: Selected) => boolean) | undefined" - ], - "path": "src/plugins/presentation_util/public/redux_tools/types.ts", - "deprecated": false, - "trackAdoption": false - } - ] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.getState", - "type": "Function", - "tags": [], - "label": "getState", - "description": [], - "signature": [ - "() => ", - "ControlGroupReduxState" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.dispatch", - "type": "Object", - "tags": [], - "label": "dispatch", - "description": [], - "signature": [ - "{ setControlWithInvalidSelectionsId: (payload: string | undefined) => void; setLastSavedInput: (payload: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - " | undefined) => void; setLastSavedFilters: (payload: ", - "ControlGroupFilterOutput", - " | undefined) => void; setUnpublishedFilters: (payload: ", - "ControlGroupFilterOutput", - " | undefined) => void; setControlStyle: (payload: ", - "ControlStyle", - ") => void; setChainingSystem: (payload: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupChainingSystem", - "text": "ControlGroupChainingSystem" - }, - ") => void; setDefaultControlWidth: (payload: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlWidth", - "text": "ControlWidth" - }, - " | undefined) => void; setDefaultControlGrow: (payload: boolean | undefined) => void; setControlWidth: (payload: { width: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlWidth", - "text": "ControlWidth" - }, - "; embeddableId: string; }) => void; setControlGrow: (payload: { grow: boolean; embeddableId: string; }) => void; setControlOrders: (payload: { ids: string[]; }) => void; }" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.onStateChange", - "type": "Function", - "tags": [], - "label": "onStateChange", - "description": [], - "signature": [ - "(listener: () => void) => ", - "Unsubscribe" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.onStateChange.$1", - "type": "Function", - "tags": [], - "label": "listener", - "description": [], - "signature": [ - "() => void" - ], - "path": "node_modules/redux/index.d.ts", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [] - } - ] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.onFiltersPublished$", - "type": "Object", - "tags": [], - "label": "onFiltersPublished$", - "description": [], - "signature": [ - "Subject", - "<", - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.Filter", - "text": "Filter" - }, - "[]>" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.onControlRemoved$", - "type": "Object", - "tags": [], - "label": "onControlRemoved$", - "description": [], - "signature": [ - "Subject", - "" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.unsavedChanges", - "type": "Object", - "tags": [], - "label": "unsavedChanges", - "description": [ - "This currently reports the **entire** persistable control group input on unsaved changes" - ], - "signature": [ - "BehaviorSubject", - "<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - " | undefined>" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.fieldFilterPredicate", - "type": "Function", - "tags": [], - "label": "fieldFilterPredicate", - "description": [], - "signature": [ - "FieldFilterPredicate", - " | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.Unnamed", - "type": "Function", - "tags": [], - "label": "Constructor", - "description": [], - "signature": [ - "any" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.Unnamed.$1", - "type": "Object", - "tags": [], - "label": "reduxToolsPackage", - "description": [], - "signature": [ - { - "pluginId": "presentationUtil", - "scope": "public", - "docId": "kibPresentationUtilPluginApi", - "section": "def-public.ReduxToolsPackage", - "text": "ReduxToolsPackage" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.Unnamed.$2", - "type": "Object", - "tags": [], - "label": "initialInput", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.Unnamed.$3", - "type": "Object", - "tags": [], - "label": "parent", - "description": [], - "signature": [ - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.Container", - "text": "Container" - }, - "<{}, ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerInput", - "text": "ContainerInput" - }, - "<{}>, ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerOutput", - "text": "ContainerOutput" - }, - "> | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.Unnamed.$4", - "type": "CompoundType", - "tags": [], - "label": "initialComponentState", - "description": [], - "signature": [ - "ControlGroupComponentState", - " | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.Unnamed.$5", - "type": "Function", - "tags": [], - "label": "fieldFilterPredicate", - "description": [], - "signature": [ - "FieldFilterPredicate", - " | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.canShowInvalidSelectionsWarning", - "type": "Function", - "tags": [], - "label": "canShowInvalidSelectionsWarning", - "description": [], - "signature": [ - "() => boolean" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.suppressInvalidSelectionsWarning", - "type": "Function", - "tags": [], - "label": "suppressInvalidSelectionsWarning", - "description": [], - "signature": [ - "() => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.reportInvalidSelections", - "type": "Function", - "tags": [], - "label": "reportInvalidSelections", - "description": [], - "signature": [ - "({ id, hasInvalidSelections, }: { id: string; hasInvalidSelections: boolean; }) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.reportInvalidSelections.$1", - "type": "Object", - "tags": [], - "label": "{\n id,\n hasInvalidSelections,\n }", - "description": [], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.reportInvalidSelections.$1.id", - "type": "string", - "tags": [], - "label": "id", - "description": [], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.reportInvalidSelections.$1.hasInvalidSelections", - "type": "boolean", - "tags": [], - "label": "hasInvalidSelections", - "description": [], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false - } - ] - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.setSavedState", - "type": "Function", - "tags": [], - "label": "setSavedState", - "description": [], - "signature": [ - "(lastSavedInput: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - " | undefined) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.setSavedState.$1", - "type": "Object", - "tags": [], - "label": "lastSavedInput", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - " | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.resetToLastSavedState", - "type": "Function", - "tags": [], - "label": "resetToLastSavedState", - "description": [], - "signature": [ - "() => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.reload", - "type": "Function", - "tags": [], - "label": "reload", - "description": [], - "signature": [ - "() => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.getPersistableInput", - "type": "Function", - "tags": [], - "label": "getPersistableInput", - "description": [], - "signature": [ - "() => Pick, \"id\" | \"chainingSystem\" | \"ignoreParentSettings\" | \"panels\" | \"controlStyle\" | \"showApplySelections\">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.updateInputAndReinitialize", - "type": "Function", - "tags": [], - "label": "updateInputAndReinitialize", - "description": [], - "signature": [ - "(newInput: Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.updateInputAndReinitialize.$1", - "type": "Object", - "tags": [], - "label": "newInput", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.setLastUsedDataViewId", - "type": "Function", - "tags": [], - "label": "setLastUsedDataViewId", - "description": [], - "signature": [ - "(lastUsedDataViewId: string) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.setLastUsedDataViewId.$1", - "type": "string", - "tags": [], - "label": "lastUsedDataViewId", - "description": [], - "signature": [ - "string" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.setRelevantDataViewId", - "type": "Function", - "tags": [], - "label": "setRelevantDataViewId", - "description": [], - "signature": [ - "(newRelevantDataViewId: string) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.setRelevantDataViewId.$1", - "type": "string", - "tags": [], - "label": "newRelevantDataViewId", - "description": [], - "signature": [ - "string" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.getMostRelevantDataViewId", - "type": "Function", - "tags": [], - "label": "getMostRelevantDataViewId", - "description": [], - "signature": [ - "() => string | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.closeAllFlyouts", - "type": "Function", - "tags": [], - "label": "closeAllFlyouts", - "description": [], - "signature": [ - "() => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addDataControlFromField", - "type": "Function", - "tags": [], - "label": "addDataControlFromField", - "description": [], - "signature": [ - "(controlProps: ", - "AddDataControlProps", - ") => Promise<", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.IEmbeddable", - "text": "IEmbeddable" - }, - "<", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableOutput", - "text": "EmbeddableOutput" - }, - ", any> | ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ErrorEmbeddable", - "text": "ErrorEmbeddable" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addDataControlFromField.$1", - "type": "Object", - "tags": [], - "label": "controlProps", - "description": [], - "signature": [ - "AddDataControlProps" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addOptionsListControl", - "type": "Function", - "tags": [], - "label": "addOptionsListControl", - "description": [], - "signature": [ - "(controlProps: ", - "AddOptionsListControlProps", - ") => Promise<", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.IEmbeddable", - "text": "IEmbeddable" - }, - "<", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableOutput", - "text": "EmbeddableOutput" - }, - ", any> | ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ErrorEmbeddable", - "text": "ErrorEmbeddable" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addOptionsListControl.$1", - "type": "CompoundType", - "tags": [], - "label": "controlProps", - "description": [], - "signature": [ - "AddOptionsListControlProps" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addRangeSliderControl", - "type": "Function", - "tags": [], - "label": "addRangeSliderControl", - "description": [], - "signature": [ - "(controlProps: ", - "AddRangeSliderControlProps", - ") => Promise<", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.IEmbeddable", - "text": "IEmbeddable" - }, - "<", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableOutput", - "text": "EmbeddableOutput" - }, - ", any> | ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ErrorEmbeddable", - "text": "ErrorEmbeddable" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addRangeSliderControl.$1", - "type": "CompoundType", - "tags": [], - "label": "controlProps", - "description": [], - "signature": [ - "AddRangeSliderControlProps" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.addTimeSliderControl", - "type": "Function", - "tags": [], - "label": "addTimeSliderControl", - "description": [], - "signature": [ - "() => Promise<", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.IEmbeddable", - "text": "IEmbeddable" - }, - "<", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableOutput", - "text": "EmbeddableOutput" - }, - ", any> | ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ErrorEmbeddable", - "text": "ErrorEmbeddable" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.openAddDataControlFlyout", - "type": "Function", - "tags": [], - "label": "openAddDataControlFlyout", - "description": [], - "signature": [ - "(this: ", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupContainer", - "text": "ControlGroupContainer" - }, - ", options?: { controlInputTransform?: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlInputTransform", - "text": "ControlInputTransform" - }, - " | undefined; onSave?: ((id: string) => void) | undefined; } | undefined) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.openAddDataControlFlyout.$1", - "type": "Object", - "tags": [], - "label": "options", - "description": [], - "signature": [ - "{ controlInputTransform?: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlInputTransform", - "text": "ControlInputTransform" - }, - " | undefined; onSave?: ((id: string) => void) | undefined; } | undefined" - ], - "path": "src/plugins/controls/public/control_group/editor/open_add_data_control_flyout.tsx", - "deprecated": false, - "trackAdoption": false - } - ] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.openEditControlGroupFlyout", - "type": "Function", - "tags": [], - "label": "openEditControlGroupFlyout", - "description": [], - "signature": [ - "(this: ", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupContainer", - "text": "ControlGroupContainer" - }, - ") => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.getPanelCount", - "type": "Function", - "tags": [], - "label": "getPanelCount", - "description": [], - "signature": [ - "() => number" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.updateFilterContext", - "type": "Function", - "tags": [], - "label": "updateFilterContext", - "description": [], - "signature": [ - "(filters: ", - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.Filter", - "text": "Filter" - }, - "[]) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.updateFilterContext.$1", - "type": "Array", - "tags": [], - "label": "filters", - "description": [], - "signature": [ - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.Filter", - "text": "Filter" - }, - "[]" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.publishFilters", - "type": "Function", - "tags": [], - "label": "publishFilters", - "description": [], - "signature": [ - "({ filters, timeslice }: ", - "ControlGroupFilterOutput", - ") => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.publishFilters.$1", - "type": "CompoundType", - "tags": [], - "label": "{ filters, timeslice }", - "description": [], - "signature": [ - "ControlGroupFilterOutput" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.createNewPanelState", - "type": "Function", - "tags": [], - "label": "createNewPanelState", - "description": [], - "signature": [ - "(factory: ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableFactory", - "text": "EmbeddableFactory" - }, - "<", - "ControlInput", - ", ", - "ControlOutput", - ", ", - "ControlEmbeddable", - "<", - "ControlInput", - ", ", - "ControlOutput", - ">, ", - { - "pluginId": "savedObjectsFinder", - "scope": "common", - "docId": "kibSavedObjectsFinderPluginApi", - "section": "def-common.FinderAttributes", - "text": "FinderAttributes" - }, - ">, partial: Partial | undefined, otherPanels: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - }, - ") => { newPanel: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlPanelState", - "text": "ControlPanelState" - }, - "; otherPanels: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - }, - "; }" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.createNewPanelState.$1", - "type": "Object", - "tags": [], - "label": "factory", - "description": [], - "signature": [ - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableFactory", - "text": "EmbeddableFactory" - }, - "<", - "ControlInput", - ", ", - "ControlOutput", - ", ", - "ControlEmbeddable", - "<", - "ControlInput", - ", ", - "ControlOutput", - ">, ", - { - "pluginId": "savedObjectsFinder", - "scope": "common", - "docId": "kibSavedObjectsFinderPluginApi", - "section": "def-common.FinderAttributes", - "text": "FinderAttributes" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.createNewPanelState.$2", - "type": "Object", - "tags": [], - "label": "partial", - "description": [], - "signature": [ - "Partial" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.createNewPanelState.$3", - "type": "Object", - "tags": [], - "label": "otherPanels", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.removePanel", - "type": "Function", - "tags": [], - "label": "removePanel", - "description": [], - "signature": [ - "(id: string) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.removePanel.$1", - "type": "string", - "tags": [], - "label": "id", - "description": [], - "signature": [ - "string" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.onRemoveEmbeddable", - "type": "Function", - "tags": [], - "label": "onRemoveEmbeddable", - "description": [], - "signature": [ - "(idToRemove: string) => ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.onRemoveEmbeddable.$1", - "type": "string", - "tags": [], - "label": "idToRemove", - "description": [], - "signature": [ - "string" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.getInheritedInput", - "type": "Function", - "tags": [], - "label": "getInheritedInput", - "description": [], - "signature": [ - "(id: string) => ", - "ControlInput" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.getInheritedInput.$1", - "type": "string", - "tags": [], - "label": "id", - "description": [], - "signature": [ - "string" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.untilAllChildrenReady", - "type": "Function", - "tags": [], - "label": "untilAllChildrenReady", - "description": [], - "signature": [ - "() => Promise" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.untilInitialized", - "type": "Function", - "tags": [], - "label": "untilInitialized", - "description": [], - "signature": [ - "() => Promise" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.render", - "type": "Function", - "tags": [], - "label": "render", - "description": [], - "signature": [ - "(dom: HTMLElement) => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.render.$1", - "type": "Object", - "tags": [], - "label": "dom", - "description": [], - "signature": [ - "HTMLElement" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainer.destroy", - "type": "Function", - "tags": [], - "label": "destroy", - "description": [], - "signature": [ - "() => void" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container.tsx", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - } - ], - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory", - "type": "Class", - "tags": [], - "label": "ControlGroupContainerFactory", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupContainerFactory", - "text": "ControlGroupContainerFactory" - }, - " implements ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableFactoryDefinition", - "text": "EmbeddableFactoryDefinition" - }, - "<", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableOutput", - "text": "EmbeddableOutput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.IEmbeddable", - "text": "IEmbeddable" - }, - "<", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ", ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.EmbeddableOutput", - "text": "EmbeddableOutput" - }, - ", any>, ", - { - "pluginId": "savedObjectsFinder", - "scope": "common", - "docId": "kibSavedObjectsFinderPluginApi", - "section": "def-common.FinderAttributes", - "text": "FinderAttributes" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.isContainerType", - "type": "boolean", - "tags": [], - "label": "isContainerType", - "description": [], - "signature": [ - "true" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.type", - "type": "string", - "tags": [], - "label": "type", - "description": [], - "signature": [ - "\"control_group\"" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.inject", - "type": "Function", - "tags": [], - "label": "inject", - "description": [], - "signature": [ - "(state: ", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableStateWithType", - "text": "EmbeddableStateWithType" - }, - ", references: ", - { - "pluginId": "@kbn/core-saved-objects-common", - "scope": "common", - "docId": "kibKbnCoreSavedObjectsCommonPluginApi", - "section": "def-common.SavedObjectReference", - "text": "SavedObjectReference" - }, - "[]) => ", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableStateWithType", - "text": "EmbeddableStateWithType" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.inject.$1", - "type": "Uncategorized", - "tags": [], - "label": "state", - "description": [], - "signature": [ - "P" - ], - "path": "src/plugins/kibana_utils/common/persistable_state/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.inject.$2", - "type": "Array", - "tags": [], - "label": "references", - "description": [], - "signature": [ - { - "pluginId": "@kbn/core-saved-objects-common", - "scope": "common", - "docId": "kibKbnCoreSavedObjectsCommonPluginApi", - "section": "def-common.SavedObjectReference", - "text": "SavedObjectReference" - }, - "[]" - ], - "path": "src/plugins/kibana_utils/common/persistable_state/types.ts", - "deprecated": false, - "trackAdoption": false - } - ] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.extract", - "type": "Function", - "tags": [], - "label": "extract", - "description": [], - "signature": [ - "(state: ", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableStateWithType", - "text": "EmbeddableStateWithType" - }, - ") => { state: ", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableStateWithType", - "text": "EmbeddableStateWithType" - }, - "; references: ", - { - "pluginId": "@kbn/core-saved-objects-common", - "scope": "common", - "docId": "kibKbnCoreSavedObjectsCommonPluginApi", - "section": "def-common.SavedObjectReference", - "text": "SavedObjectReference" - }, - "[]; }" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.extract.$1", - "type": "Uncategorized", - "tags": [], - "label": "state", - "description": [], - "signature": [ - "P" - ], - "path": "src/plugins/kibana_utils/common/persistable_state/types.ts", - "deprecated": false, - "trackAdoption": false - } - ] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.Unnamed", - "type": "Function", - "tags": [], - "label": "Constructor", - "description": [], - "signature": [ - "any" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.Unnamed.$1", - "type": "Object", - "tags": [], - "label": "persistableStateService", - "description": [], - "signature": [ - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddablePersistableStateService", - "text": "EmbeddablePersistableStateService" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.isEditable", - "type": "Function", - "tags": [], - "label": "isEditable", - "description": [], - "signature": [ - "() => Promise" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.getDisplayName", - "type": "Function", - "tags": [], - "label": "getDisplayName", - "description": [], - "signature": [ - "() => string" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.getDefaultInput", - "type": "Function", - "tags": [], - "label": "getDefaultInput", - "description": [], - "signature": [ - "() => Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.create", - "type": "Function", - "tags": [], - "label": "create", - "description": [], - "signature": [ - "(initialInput: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ", parent?: ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.Container", - "text": "Container" - }, - "<{}, ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerInput", - "text": "ContainerInput" - }, - "<{}>, ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerOutput", - "text": "ContainerOutput" - }, - "> | undefined, initialComponentState?: ", - "ControlGroupComponentState", - " | undefined, fieldFilterPredicate?: ", - "FieldFilterPredicate", - " | undefined) => Promise<", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupContainer", - "text": "ControlGroupContainer" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.create.$1", - "type": "Object", - "tags": [], - "label": "initialInput", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - } - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.create.$2", - "type": "Object", - "tags": [], - "label": "parent", - "description": [], - "signature": [ - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.Container", - "text": "Container" - }, - "<{}, ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerInput", - "text": "ContainerInput" - }, - "<{}>, ", - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerOutput", - "text": "ContainerOutput" - }, - "> | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.create.$3", - "type": "CompoundType", - "tags": [], - "label": "initialComponentState", - "description": [], - "signature": [ - "ControlGroupComponentState", - " | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupContainerFactory.create.$4", - "type": "Function", - "tags": [], - "label": "fieldFilterPredicate", - "description": [], - "signature": [ - "FieldFilterPredicate", - " | undefined" - ], - "path": "src/plugins/controls/public/control_group/embeddable/control_group_container_factory.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - } - ], - "returnComment": [] - } - ], - "initialIsOpen": false - } - ], + "classes": [], "functions": [ { "parentPluginId": "controls", @@ -2057,7 +21,7 @@ }, ") => JSX.Element" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer_lazy.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer_lazy.tsx", "deprecated": false, "trackAdoption": false, "children": [ @@ -2072,199 +36,81 @@ { "pluginId": "controls", "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRendererProps", - "text": "ControlGroupRendererProps" - } - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer_lazy.tsx", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [], - "initialIsOpen": false - } - ], - "interfaces": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupCreationOptions", - "type": "Interface", - "tags": [], - "label": "ControlGroupCreationOptions", - "description": [], - "path": "src/plugins/controls/public/control_group/external_api/types.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupCreationOptions.initialState", - "type": "Object", - "tags": [], - "label": "initialState", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", - "text": "ControlGroupRuntimeState" - }, - "<", - "DefaultControlState", - ">> | undefined" - ], - "path": "src/plugins/controls/public/control_group/external_api/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupCreationOptions.editorConfig", - "type": "Object", - "tags": [], - "label": "editorConfig", - "description": [], - "signature": [ - "ControlGroupEditorConfig", - " | undefined" + "docId": "kibControlsPluginApi", + "section": "def-public.ControlGroupRendererProps", + "text": "ControlGroupRendererProps" + } ], - "path": "src/plugins/controls/public/control_group/external_api/types.ts", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer_lazy.tsx", "deprecated": false, - "trackAdoption": false + "trackAdoption": false, + "isRequired": true } ], + "returnComment": [], "initialIsOpen": false - }, + } + ], + "interfaces": [ { "parentPluginId": "controls", - "id": "def-public.ControlGroupInput", + "id": "def-public.ControlGroupCreationOptions", "type": "Interface", "tags": [], - "label": "ControlGroupInput", + "label": "ControlGroupCreationOptions", "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - " extends ", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" - }, - ",", - "ControlInput" - ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/public/react_controls/external_api/types.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-public.ControlGroupInput.chainingSystem", - "type": "CompoundType", - "tags": [], - "label": "chainingSystem", - "description": [], - "signature": [ - "\"NONE\" | \"HIERARCHICAL\"" - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupInput.defaultControlWidth", - "type": "CompoundType", + "id": "def-public.ControlGroupCreationOptions.initialState", + "type": "Object", "tags": [], - "label": "defaultControlWidth", + "label": "initialState", "description": [], "signature": [ + "Partial<", { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.ControlWidth", - "text": "ControlWidth" + "section": "def-common.ControlGroupRuntimeState", + "text": "ControlGroupRuntimeState" }, - " | undefined" - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupInput.defaultControlGrow", - "type": "CompoundType", - "tags": [], - "label": "defaultControlGrow", - "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupInput.controlStyle", - "type": "CompoundType", - "tags": [], - "label": "controlStyle", - "description": [], - "signature": [ - "\"twoLine\" | \"oneLine\"" + "<", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, + ">> | undefined" ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/public/react_controls/external_api/types.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-public.ControlGroupInput.panels", + "id": "def-public.ControlGroupCreationOptions.editorConfig", "type": "Object", "tags": [], - "label": "panels", + "label": "editorConfig", "description": [], "signature": [ { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - } - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupInput.showApplySelections", - "type": "CompoundType", - "tags": [], - "label": "showApplySelections", - "description": [], - "signature": [ - "boolean | undefined" + "section": "def-common.ControlGroupEditorConfig", + "text": "ControlGroupEditorConfig" + }, + " | undefined" ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/public/react_controls/external_api/types.ts", "deprecated": false, "trackAdoption": false } @@ -2278,7 +124,7 @@ "tags": [], "label": "ControlGroupRendererProps", "description": [], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false, "children": [ @@ -2300,7 +146,7 @@ }, ") => void" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false, "children": [ @@ -2320,7 +166,7 @@ "text": "ControlGroupRendererApi" } ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -2339,71 +185,95 @@ "((initialState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, builder: { addDataControlFromField: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" }, ", controlId?: string | undefined) => Promise; addOptionsListControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", - ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, + ">>, controlState: ", + "OptionsListControlState", ", controlId?: string | undefined) => void; addRangeSliderControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlState: ", "RangesliderControlState", ", controlId?: string | undefined) => void; addTimeSliderControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlId?: string | undefined) => void; }) => Promise>) | undefined" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false, "children": [ @@ -2429,16 +299,22 @@ "Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -2454,64 +330,82 @@ "{ addDataControlFromField: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" }, ", controlId?: string | undefined) => Promise; addOptionsListControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", - ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, + ">>, controlState: ", + "OptionsListControlState", ", controlId?: string | undefined) => void; addRangeSliderControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlState: ", "RangesliderControlState", ", controlId?: string | undefined) => void; addTimeSliderControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlId?: string | undefined) => void; }" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -2536,7 +430,7 @@ }, " | undefined" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false }, @@ -2557,7 +451,7 @@ }, "[] | undefined" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false }, @@ -2578,7 +472,7 @@ }, " | undefined" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false }, @@ -2599,7 +493,7 @@ }, " | undefined" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false }, @@ -2613,7 +507,7 @@ "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer.tsx", "deprecated": false, "trackAdoption": false } @@ -2630,14 +524,14 @@ "signature": [ { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -2651,7 +545,7 @@ "signature": [ "\"NONE\" | \"HIERARCHICAL\"" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2665,7 +559,7 @@ "signature": [ "\"twoLine\" | \"oneLine\"" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2676,7 +570,7 @@ "tags": [], "label": "autoApplySelections", "description": [], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2697,7 +591,7 @@ }, " | undefined" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2709,10 +603,16 @@ "label": "initialChildControlState", "description": [], "signature": [ - "ControlPanelsState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlPanelsState", + "text": "ControlPanelsState" + }, "" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2724,10 +624,16 @@ "label": "editorConfig", "description": [], "signature": [ - "ControlGroupEditorConfig", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupEditorConfig", + "text": "ControlGroupEditorConfig" + }, " | undefined" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false } @@ -2744,24 +650,30 @@ "signature": [ { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupSerializedState", + "section": "def-common.ControlGroupSerializedState", "text": "ControlGroupSerializedState" }, " extends Pick<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">, \"chainingSystem\" | \"editorConfig\">" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -2772,7 +684,7 @@ "tags": [], "label": "panelsJSON", "description": [], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2783,7 +695,7 @@ "tags": [], "label": "ignoreParentSettingsJSON", "description": [], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2797,7 +709,7 @@ "signature": [ "\"twoLine\" | \"oneLine\"" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, @@ -2811,7 +723,55 @@ "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "controls", + "id": "def-public.ControlPanelsState", + "type": "Interface", + "tags": [], + "label": "ControlPanelsState", + "description": [ + "\n----------------------------------------------------------------\nControl group panel state\n----------------------------------------------------------------" + ], + "signature": [ + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlPanelsState", + "text": "ControlPanelsState" + }, + "" + ], + "path": "src/plugins/controls/common/control_group/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "controls", + "id": "def-public.ControlPanelsState.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[panelId: string]: ControlPanelState", + "description": [], + "signature": [ + "[panelId: string]: ", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlPanelState", + "text": "ControlPanelState" + }, + "" + ], + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false } @@ -2906,80 +866,6 @@ ], "initialIsOpen": false }, - { - "parentPluginId": "controls", - "id": "def-public.DataControlServices", - "type": "Interface", - "tags": [], - "label": "DataControlServices", - "description": [], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.DataControlServices.core", - "type": "Object", - "tags": [], - "label": "core", - "description": [], - "signature": [ - { - "pluginId": "@kbn/core-lifecycle-browser", - "scope": "public", - "docId": "kibKbnCoreLifecycleBrowserPluginApi", - "section": "def-public.CoreStart", - "text": "CoreStart" - } - ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.DataControlServices.data", - "type": "Object", - "tags": [], - "label": "data", - "description": [], - "signature": [ - { - "pluginId": "data", - "scope": "public", - "docId": "kibDataPluginApi", - "section": "def-public.DataPublicPluginStart", - "text": "DataPublicPluginStart" - } - ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.DataControlServices.dataViews", - "type": "Object", - "tags": [], - "label": "dataViews", - "description": [], - "signature": [ - { - "pluginId": "dataViews", - "scope": "public", - "docId": "kibDataViewsPluginApi", - "section": "def-public.DataViewsServicePublic", - "text": "DataViewsServicePublic" - } - ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", - "deprecated": false, - "trackAdoption": false - } - ], - "initialIsOpen": false - }, { "parentPluginId": "controls", "id": "def-public.DefaultDataControlState", @@ -2990,15 +876,21 @@ "signature": [ { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" }, " extends ", - "DefaultControlState" + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + } ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -3009,7 +901,7 @@ "tags": [], "label": "dataViewId", "description": [], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3020,7 +912,7 @@ "tags": [], "label": "fieldName", "description": [], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3034,7 +926,7 @@ "signature": [ "string | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false } @@ -3049,25 +941,19 @@ "label": "OptionsListControlState", "description": [], "signature": [ - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" - }, + "OptionsListControlState", " extends ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" }, ",", "OptionsListDisplaySettings" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -3082,7 +968,7 @@ "OptionsListSearchTechnique", " | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3097,7 +983,7 @@ "OptionsListSortingType", " | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3112,7 +998,7 @@ "OptionsListSelection", "[] | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3126,7 +1012,7 @@ "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3140,7 +1026,7 @@ "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3154,7 +1040,7 @@ "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false }, @@ -3168,7 +1054,7 @@ "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/types.ts", + "path": "src/plugins/controls/common/options_list/types.ts", "deprecated": false, "trackAdoption": false } @@ -3178,6 +1064,21 @@ ], "enums": [], "misc": [ + { + "parentPluginId": "controls", + "id": "def-public.ACTION_CLEAR_CONTROL", + "type": "string", + "tags": [], + "label": "ACTION_CLEAR_CONTROL", + "description": [], + "signature": [ + "\"clearControl\"" + ], + "path": "src/plugins/controls/public/actions/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "controls", "id": "def-public.ACTION_DELETE_CONTROL", @@ -3188,7 +1089,7 @@ "signature": [ "\"deleteControl\"" ], - "path": "src/plugins/controls/public/control_group/actions/index.ts", + "path": "src/plugins/controls/public/actions/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -3203,7 +1104,7 @@ "signature": [ "\"editDataControl\"" ], - "path": "src/plugins/controls/public/react_controls/actions/edit_control_action/edit_control_action.tsx", + "path": "src/plugins/controls/public/actions/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -3229,7 +1130,9 @@ "type": "Type", "tags": [], "label": "ControlGroupApi", - "description": [], + "description": [ + "\n----------------------------------------------------------------\nControl group API\n----------------------------------------------------------------" + ], "signature": [ { "pluginId": "@kbn/presentation-containers", @@ -3249,21 +1152,27 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupSerializedState", + "section": "def-common.ControlGroupSerializedState", "text": "ControlGroupSerializedState" }, ", ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/presentation-publishing", @@ -3291,13 +1200,19 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlPanelState", + "section": "def-common.ControlPanelState", "text": "ControlPanelState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/presentation-publishing", @@ -3306,14 +1221,6 @@ "section": "def-public.HasEditCapabilities", "text": "HasEditCapabilities" }, - " & ", - { - "pluginId": "@kbn/presentation-publishing", - "scope": "public", - "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishesDataLoading", - "text": "PublishesDataLoading" - }, " & Pick<", { "pluginId": "@kbn/presentation-publishing", @@ -3325,13 +1232,19 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, \"unsavedChanges\"> & ", { "pluginId": "@kbn/presentation-publishing", @@ -3415,7 +1328,13 @@ "text": "PublishingSubject" }, "<", - "ControlStyle", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlLabelPosition", + "text": "ControlLabelPosition" + }, ">; asyncResetUnsavedChanges: () => Promise; controlFetch$: (controlUuid: string) => ", "Observable", "<", @@ -3429,9 +1348,21 @@ "text": "ControlStateTransform" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, "> | undefined; onSave?: (() => void) | undefined; } | undefined) => void; untilInitialized: () => Promise; getEditorConfig: () => ", - "ControlGroupEditorConfig", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupEditorConfig", + "text": "ControlGroupEditorConfig" + }, " | undefined; getLastSavedControlState: (controlUuid: string) => object; setChainingSystem: (chainingSystem: ", { "pluginId": "controls", @@ -3447,32 +1378,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupOutput", - "type": "Type", - "tags": [], - "label": "ControlGroupOutput", - "description": [], - "signature": [ - { - "pluginId": "embeddable", - "scope": "public", - "docId": "kibEmbeddablePluginApi", - "section": "def-public.ContainerOutput", - "text": "ContainerOutput" - }, - " & ", - "ControlFilterOutput", - " & ", - "ControlTimesliceOutput", - " & { dataViewIds: string[]; }" - ], - "path": "src/plugins/controls/public/control_group/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "controls", "id": "def-public.ControlGroupRendererApi", @@ -3499,21 +1404,27 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupSerializedState", + "section": "def-common.ControlGroupSerializedState", "text": "ControlGroupSerializedState" }, ", ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/presentation-publishing", @@ -3541,13 +1452,19 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlPanelState", + "section": "def-common.ControlPanelState", "text": "ControlPanelState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/presentation-publishing", @@ -3556,14 +1473,6 @@ "section": "def-public.HasEditCapabilities", "text": "HasEditCapabilities" }, - " & ", - { - "pluginId": "@kbn/presentation-publishing", - "scope": "public", - "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishesDataLoading", - "text": "PublishesDataLoading" - }, " & Pick<", { "pluginId": "@kbn/presentation-publishing", @@ -3575,13 +1484,19 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, \"unsavedChanges\"> & ", { "pluginId": "@kbn/presentation-publishing", @@ -3665,7 +1580,13 @@ "text": "PublishingSubject" }, "<", - "ControlStyle", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlLabelPosition", + "text": "ControlLabelPosition" + }, ">; asyncResetUnsavedChanges: () => Promise; controlFetch$: (controlUuid: string) => ", "Observable", "<", @@ -3679,9 +1600,21 @@ "text": "ControlStateTransform" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, "> | undefined; onSave?: (() => void) | undefined; } | undefined) => void; untilInitialized: () => Promise; getEditorConfig: () => ", - "ControlGroupEditorConfig", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupEditorConfig", + "text": "ControlGroupEditorConfig" + }, " | undefined; getLastSavedControlState: (controlUuid: string) => object; setChainingSystem: (chainingSystem: ", { "pluginId": "controls", @@ -3693,28 +1626,40 @@ ") => void; } & { reload: () => void; updateInput: (input: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>) => void; getInput$: () => ", "BehaviorSubject", "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>; }" ], - "path": "src/plugins/controls/public/control_group/external_api/types.ts", + "path": "src/plugins/controls/public/react_controls/external_api/types.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -3730,61 +1675,79 @@ "{ addDataControlFromField: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" }, ", controlId?: string | undefined) => Promise; addOptionsListControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", - ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, + ">>, controlState: ", + "OptionsListControlState", ", controlId?: string | undefined) => void; addRangeSliderControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupRuntimeState", + "text": "ControlGroupRuntimeState" + }, + "<", + { + "pluginId": "controls", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", - "text": "ControlGroupRuntimeState" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, - "<", - "DefaultControlState", ">>, controlState: ", "RangesliderControlState", ", controlId?: string | undefined) => void; addTimeSliderControl: (controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlId?: string | undefined) => void; }" ], "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", @@ -3802,7 +1765,7 @@ "signature": [ "State & { type: string; order: number; }" ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", + "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -3813,9 +1776,7 @@ "type": "Type", "tags": [], "label": "ControlStateTransform", - "description": [ - "\n----------------------------------------------------------------\nControl group API\n----------------------------------------------------------------" - ], + "description": [], "signature": [ "(newState: Partial, controlType: string) => Partial" ], @@ -3852,36 +1813,6 @@ ], "initialIsOpen": false }, - { - "parentPluginId": "controls", - "id": "def-public.ControlStyle", - "type": "Type", - "tags": [], - "label": "ControlStyle", - "description": [], - "signature": [ - "\"twoLine\" | \"oneLine\"" - ], - "path": "src/plugins/controls/common/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlWidth", - "type": "Type", - "tags": [], - "label": "ControlWidth", - "description": [], - "signature": [ - "\"small\" | \"medium\" | \"large\"" - ], - "path": "src/plugins/controls/common/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "controls", "id": "def-public.DataControlApi", @@ -3965,17 +1896,7 @@ "section": "def-public.ControlGroupApi", "text": "ControlGroupApi" }, - "> & { serializeState: () => ", - { - "pluginId": "@kbn/presentation-containers", - "scope": "public", - "docId": "kibKbnPresentationContainersPluginApi", - "section": "def-public.SerializedPanelState", - "text": "SerializedPanelState" - }, - "<", - "DefaultControlState", - ">; setDataLoading: (loading: boolean) => void; setBlockingError: (error: Error | undefined) => void; grow: ", + "> & { setDataLoading: (loading: boolean) => void; setBlockingError: (error: Error | undefined) => void; grow: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -3999,7 +1920,23 @@ "section": "def-common.ControlWidth", "text": "ControlWidth" }, - " | undefined>; } & Omit<", + " | undefined>; serializeState: () => ", + { + "pluginId": "@kbn/presentation-containers", + "scope": "public", + "docId": "kibKbnPresentationContainersPluginApi", + "section": "def-public.SerializedPanelState", + "text": "SerializedPanelState" + }, + "<", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, + ">; } & Omit<", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -4050,7 +1987,7 @@ "signature": [ "\"optionsListControl\"" ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -4065,7 +2002,7 @@ "signature": [ "\"rangeSliderControl\"" ], - "path": "src/plugins/controls/common/range_slider/types.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -4080,270 +2017,13 @@ "signature": [ "\"timeSlider\"" ], - "path": "src/plugins/controls/common/time_slider/types.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false - } - ], - "objects": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder", - "type": "Object", - "tags": [], - "label": "controlGroupInputBuilder", - "description": [], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addDataControlFromField", - "type": "Function", - "tags": [], - "label": "addDataControlFromField", - "description": [], - "signature": [ - "(initialInput: Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">, controlProps: ", - "AddDataControlProps", - ") => Promise" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addDataControlFromField.$1", - "type": "Object", - "tags": [], - "label": "initialInput", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addDataControlFromField.$2", - "type": "Object", - "tags": [], - "label": "controlProps", - "description": [], - "signature": [ - "AddDataControlProps" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addOptionsListControl", - "type": "Function", - "tags": [], - "label": "addOptionsListControl", - "description": [], - "signature": [ - "(initialInput: Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">, controlProps: ", - "AddOptionsListControlProps", - ") => void" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addOptionsListControl.$1", - "type": "Object", - "tags": [], - "label": "initialInput", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addOptionsListControl.$2", - "type": "CompoundType", - "tags": [], - "label": "controlProps", - "description": [], - "signature": [ - "AddOptionsListControlProps" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addRangeSliderControl", - "type": "Function", - "tags": [], - "label": "addRangeSliderControl", - "description": [], - "signature": [ - "(initialInput: Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">, controlProps: ", - "AddRangeSliderControlProps", - ") => void" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addRangeSliderControl.$1", - "type": "Object", - "tags": [], - "label": "initialInput", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addRangeSliderControl.$2", - "type": "CompoundType", - "tags": [], - "label": "controlProps", - "description": [], - "signature": [ - "AddRangeSliderControlProps" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addTimeSliderControl", - "type": "Function", - "tags": [], - "label": "addTimeSliderControl", - "description": [], - "signature": [ - "(initialInput: Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">) => void" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupInputBuilder.addTimeSliderControl.$1", - "type": "Object", - "tags": [], - "label": "initialInput", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ">" - ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_input_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [] - } - ], - "initialIsOpen": false - }, + } + ], + "objects": [ { "parentPluginId": "controls", "id": "def-public.controlGroupStateBuilder", @@ -4366,19 +2046,25 @@ "(controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" }, ", controlId?: string | undefined) => Promise" @@ -4398,13 +2084,19 @@ "Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>" ], "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", @@ -4422,9 +2114,9 @@ "signature": [ { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.DefaultDataControlState", + "section": "def-common.DefaultDataControlState", "text": "DefaultDataControlState" } ], @@ -4462,21 +2154,21 @@ "(controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", - ">>, controlState: ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, + ">>, controlState: ", + "OptionsListControlState", ", controlId?: string | undefined) => void" ], "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", @@ -4494,13 +2186,19 @@ "Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>" ], "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", @@ -4516,13 +2214,7 @@ "label": "controlState", "description": [], "signature": [ - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" - } + "OptionsListControlState" ], "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", "deprecated": false, @@ -4558,98 +2250,22 @@ "(controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", - ">>, controlState: ", - "RangesliderControlState", - ", controlId?: string | undefined) => void" - ], - "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-public.controlGroupStateBuilder.addRangeSliderControl.$1", - "type": "Object", - "tags": [], - "label": "controlGroupState", - "description": [], - "signature": [ - "Partial<", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", - "text": "ControlGroupRuntimeState" - }, - "<", - "DefaultControlState", - ">>" - ], - "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupStateBuilder.addRangeSliderControl.$2", - "type": "Object", - "tags": [], - "label": "controlState", - "description": [], - "signature": [ - "RangesliderControlState" - ], - "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupStateBuilder.addRangeSliderControl.$3", - "type": "string", - "tags": [], - "label": "controlId", - "description": [], - "signature": [ - "string | undefined" - ], - "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - } - ], - "returnComment": [] - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupStateBuilder.addTimeSliderControl", - "type": "Function", - "tags": [], - "label": "addTimeSliderControl", - "description": [], - "signature": [ - "(controlGroupState: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", - "text": "ControlGroupRuntimeState" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, - "<", - "DefaultControlState", - ">>, controlId?: string | undefined) => void" + ">>, controlState: ", + "RangesliderControlState", + ", controlId?: string | undefined) => void" ], "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", "deprecated": false, @@ -4657,7 +2273,7 @@ "children": [ { "parentPluginId": "controls", - "id": "def-public.controlGroupStateBuilder.addTimeSliderControl.$1", + "id": "def-public.controlGroupStateBuilder.addRangeSliderControl.$1", "type": "Object", "tags": [], "label": "controlGroupState", @@ -4666,284 +2282,186 @@ "Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", - ">>" - ], - "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - }, - { - "parentPluginId": "controls", - "id": "def-public.controlGroupStateBuilder.addTimeSliderControl.$2", - "type": "string", - "tags": [], - "label": "controlId", - "description": [], - "signature": [ - "string | undefined" - ], - "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - } - ], - "returnComment": [] - } - ], - "initialIsOpen": false - } - ] - }, - "server": { - "classes": [], - "functions": [ - { - "parentPluginId": "controls", - "id": "def-server.initializeControlGroupTelemetry", - "type": "Function", - "tags": [], - "label": "initializeControlGroupTelemetry", - "description": [], - "signature": [ - "(statsSoFar: Record) => ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupTelemetry", - "text": "ControlGroupTelemetry" - } - ], - "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ - { - "parentPluginId": "controls", - "id": "def-server.initializeControlGroupTelemetry.$1", - "type": "Object", - "tags": [], - "label": "statsSoFar", - "description": [], - "signature": [ - "Record" - ], - "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true - } - ], - "returnComment": [], - "initialIsOpen": false - } - ], - "interfaces": [], - "enums": [], - "misc": [], - "objects": [] - }, - "common": { - "classes": [], - "functions": [ - { - "parentPluginId": "controls", - "id": "def-common.getDefaultControlGroupInput", - "type": "Function", - "tags": [], - "label": "getDefaultControlGroupInput", - "description": [], - "signature": [ - "() => Omit<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" - }, - ", \"id\">" - ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [], - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-common.getDefaultControlGroupPersistableInput", - "type": "Function", - "tags": [], - "label": "getDefaultControlGroupPersistableInput", - "description": [], - "signature": [ - "() => ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - } - ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [], - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-common.persistableControlGroupInputIsEqual", - "type": "Function", - "tags": [], - "label": "persistableControlGroupInputIsEqual", - "description": [], - "signature": [ - "(a: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - " | undefined, b: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, + ">>" + ], + "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "controls", + "id": "def-public.controlGroupStateBuilder.addRangeSliderControl.$2", + "type": "Object", + "tags": [], + "label": "controlState", + "description": [], + "signature": [ + "RangesliderControlState" + ], + "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "controls", + "id": "def-public.controlGroupStateBuilder.addRangeSliderControl.$3", + "type": "string", + "tags": [], + "label": "controlId", + "description": [], + "signature": [ + "string | undefined" + ], + "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false + } + ], + "returnComment": [] }, - " | undefined, compareSelections?: boolean) => boolean" - ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ { "parentPluginId": "controls", - "id": "def-common.persistableControlGroupInputIsEqual.$1", - "type": "Object", + "id": "def-public.controlGroupStateBuilder.addTimeSliderControl", + "type": "Function", "tags": [], - "label": "a", + "label": "addTimeSliderControl", "description": [], "signature": [ + "(controlGroupState: Partial<", { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" + "section": "def-common.ControlGroupRuntimeState", + "text": "ControlGroupRuntimeState" }, - " | undefined" - ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": false - }, - { - "parentPluginId": "controls", - "id": "def-common.persistableControlGroupInputIsEqual.$2", - "type": "Object", - "tags": [], - "label": "b", - "description": [], - "signature": [ + "<", { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, - " | undefined" + ">>, controlId?: string | undefined) => void" ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", "deprecated": false, "trackAdoption": false, - "isRequired": false - }, - { - "parentPluginId": "controls", - "id": "def-common.persistableControlGroupInputIsEqual.$3", - "type": "boolean", - "tags": [], - "label": "compareSelections", - "description": [], - "signature": [ - "boolean" + "children": [ + { + "parentPluginId": "controls", + "id": "def-public.controlGroupStateBuilder.addTimeSliderControl.$1", + "type": "Object", + "tags": [], + "label": "controlGroupState", + "description": [], + "signature": [ + "Partial<", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupRuntimeState", + "text": "ControlGroupRuntimeState" + }, + "<", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, + ">>" + ], + "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "controls", + "id": "def-public.controlGroupStateBuilder.addTimeSliderControl.$2", + "type": "string", + "tags": [], + "label": "controlId", + "description": [], + "signature": [ + "string | undefined" + ], + "path": "src/plugins/controls/public/react_controls/control_group/utils/control_group_state_builder.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false + } ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", - "deprecated": false, - "trackAdoption": false, - "isRequired": true + "returnComment": [] } ], - "returnComment": [], "initialIsOpen": false - }, + } + ] + }, + "server": { + "classes": [], + "functions": [ { "parentPluginId": "controls", - "id": "def-common.rawControlGroupAttributesToControlGroupInput", + "id": "def-server.controlGroupSerializedStateToSerializableRuntimeState", "type": "Function", "tags": [], - "label": "rawControlGroupAttributesToControlGroupInput", + "label": "controlGroupSerializedStateToSerializableRuntimeState", "description": [], "signature": [ - "(rawControlGroupAttributes: ", + "(serializedState: ", { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.RawControlGroupAttributes", - "text": "RawControlGroupAttributes" + "section": "def-common.ControlGroupSerializedState", + "text": "ControlGroupSerializedState" }, ") => ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - " | undefined" + "SerializableControlGroupState" ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/server/control_group/control_group_persistence.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.rawControlGroupAttributesToControlGroupInput.$1", - "type": "CompoundType", + "id": "def-server.controlGroupSerializedStateToSerializableRuntimeState.$1", + "type": "Object", "tags": [], - "label": "rawControlGroupAttributes", + "label": "serializedState", "description": [], "signature": [ { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.RawControlGroupAttributes", - "text": "RawControlGroupAttributes" + "section": "def-common.ControlGroupSerializedState", + "text": "ControlGroupSerializedState" } ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/server/control_group/control_group_persistence.ts", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -4954,52 +2472,36 @@ }, { "parentPluginId": "controls", - "id": "def-common.rawControlGroupAttributesToSerializable", + "id": "def-server.initializeControlGroupTelemetry", "type": "Function", "tags": [], - "label": "rawControlGroupAttributesToSerializable", + "label": "initializeControlGroupTelemetry", "description": [], "signature": [ - "(rawControlGroupAttributes: Omit<", + "(statsSoFar: Record) => ", { "pluginId": "controls", - "scope": "common", + "scope": "server", "docId": "kibControlsPluginApi", - "section": "def-common.RawControlGroupAttributes", - "text": "RawControlGroupAttributes" - }, - ", \"id\">) => ", - { - "pluginId": "@kbn/utility-types", - "scope": "common", - "docId": "kibKbnUtilityTypesPluginApi", - "section": "def-common.SerializableRecord", - "text": "SerializableRecord" + "section": "def-server.ControlGroupTelemetry", + "text": "ControlGroupTelemetry" } ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.rawControlGroupAttributesToSerializable.$1", + "id": "def-server.initializeControlGroupTelemetry.$1", "type": "Object", "tags": [], - "label": "rawControlGroupAttributes", + "label": "statsSoFar", "description": [], "signature": [ - "Omit<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.RawControlGroupAttributes", - "text": "RawControlGroupAttributes" - }, - ", \"id\">" + "Record" ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -5010,10 +2512,10 @@ }, { "parentPluginId": "controls", - "id": "def-common.serializableToRawControlGroupAttributes", + "id": "def-server.serializableRuntimeStateToControlGroupSerializedState", "type": "Function", "tags": [], - "label": "serializableToRawControlGroupAttributes", + "label": "serializableRuntimeStateToControlGroupSerializedState", "description": [], "signature": [ "(serializable: ", @@ -5024,23 +2526,22 @@ "section": "def-common.SerializableRecord", "text": "SerializableRecord" }, - ") => Omit<", + ") => ", { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.RawControlGroupAttributes", - "text": "RawControlGroupAttributes" - }, - ", \"id\" | \"type\">" + "section": "def-common.ControlGroupSerializedState", + "text": "ControlGroupSerializedState" + } ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/server/control_group/control_group_persistence.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.serializableToRawControlGroupAttributes.$1", + "id": "def-server.serializableRuntimeStateToControlGroupSerializedState.$1", "type": "Object", "tags": [], "label": "serializable", @@ -5054,7 +2555,7 @@ "text": "SerializableRecord" } ], - "path": "src/plugins/controls/common/control_group/control_group_persistence.ts", + "path": "src/plugins/controls/server/control_group/control_group_persistence.ts", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -5067,75 +2568,113 @@ "interfaces": [ { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput", + "id": "def-server.ControlGroupTelemetry", "type": "Interface", "tags": [], - "label": "ControlGroupInput", + "label": "ControlGroupTelemetry", "description": [], - "signature": [ + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupInput", - "text": "ControlGroupInput" + "parentPluginId": "controls", + "id": "def-server.ControlGroupTelemetry.total", + "type": "number", + "tags": [], + "label": "total", + "description": [], + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", + "deprecated": false, + "trackAdoption": false }, - " extends ", { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.EmbeddableInput", - "text": "EmbeddableInput" + "parentPluginId": "controls", + "id": "def-server.ControlGroupTelemetry.chaining_system", + "type": "Object", + "tags": [], + "label": "chaining_system", + "description": [], + "signature": [ + "{ [key: string]: number; }" + ], + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", + "deprecated": false, + "trackAdoption": false }, - ",", - "ControlInput" - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false, - "children": [ { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput.chainingSystem", - "type": "CompoundType", + "id": "def-server.ControlGroupTelemetry.label_position", + "type": "Object", "tags": [], - "label": "chainingSystem", + "label": "label_position", "description": [], "signature": [ - "\"NONE\" | \"HIERARCHICAL\"" + "{ [key: string]: number; }" ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput.defaultControlWidth", - "type": "CompoundType", + "id": "def-server.ControlGroupTelemetry.ignore_settings", + "type": "Object", "tags": [], - "label": "defaultControlWidth", + "label": "ignore_settings", "description": [], "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlWidth", - "text": "ControlWidth" - }, - " | undefined" + "{ [key: string]: number; }" ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput.defaultControlGrow", + "id": "def-server.ControlGroupTelemetry.by_type", + "type": "Object", + "tags": [], + "label": "by_type", + "description": [], + "signature": [ + "{ [key: string]: { total: number; details: { [key: string]: number; }; }; }" + ], + "path": "src/plugins/controls/server/control_group/control_group_telemetry.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [ + { + "parentPluginId": "controls", + "id": "def-common.ControlGroupEditorConfig", + "type": "Interface", + "tags": [], + "label": "ControlGroupEditorConfig", + "description": [ + "\n----------------------------------------------------------------\nControl group state\n----------------------------------------------------------------" + ], + "path": "src/plugins/controls/common/control_group/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "controls", + "id": "def-common.ControlGroupEditorConfig.hideDataViewSelector", "type": "CompoundType", "tags": [], - "label": "defaultControlGrow", + "label": "hideDataViewSelector", "description": [], "signature": [ "boolean | undefined" @@ -5146,13 +2685,13 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput.controlStyle", + "id": "def-common.ControlGroupEditorConfig.hideWidthSettings", "type": "CompoundType", "tags": [], - "label": "controlStyle", + "label": "hideWidthSettings", "description": [], "signature": [ - "\"twoLine\" | \"oneLine\"" + "boolean | undefined" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5160,19 +2699,13 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput.panels", - "type": "Object", + "id": "def-common.ControlGroupEditorConfig.hideAdditionalSettings", + "type": "CompoundType", "tags": [], - "label": "panels", + "label": "hideAdditionalSettings", "description": [], "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - } + "boolean | undefined" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5180,13 +2713,14 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupInput.showApplySelections", - "type": "CompoundType", + "id": "def-common.ControlGroupEditorConfig.fieldFilterPredicate", + "type": "Function", "tags": [], - "label": "showApplySelections", + "label": "fieldFilterPredicate", "description": [], "signature": [ - "boolean | undefined" + "FieldFilterPredicate", + " | undefined" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5197,35 +2731,48 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupTelemetry", + "id": "def-common.ControlGroupRuntimeState", "type": "Interface", "tags": [], - "label": "ControlGroupTelemetry", + "label": "ControlGroupRuntimeState", "description": [], + "signature": [ + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupRuntimeState", + "text": "ControlGroupRuntimeState" + }, + "" + ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.ControlGroupTelemetry.total", - "type": "number", + "id": "def-common.ControlGroupRuntimeState.chainingSystem", + "type": "CompoundType", "tags": [], - "label": "total", + "label": "chainingSystem", "description": [], + "signature": [ + "\"NONE\" | \"HIERARCHICAL\"" + ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupTelemetry.chaining_system", - "type": "Object", + "id": "def-common.ControlGroupRuntimeState.labelPosition", + "type": "CompoundType", "tags": [], - "label": "chaining_system", + "label": "labelPosition", "description": [], "signature": [ - "{ [key: string]: number; }" + "\"twoLine\" | \"oneLine\"" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5233,13 +2780,31 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupTelemetry.label_position", + "id": "def-common.ControlGroupRuntimeState.autoApplySelections", + "type": "boolean", + "tags": [], + "label": "autoApplySelections", + "description": [], + "path": "src/plugins/controls/common/control_group/types.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "controls", + "id": "def-common.ControlGroupRuntimeState.ignoreParentSettings", "type": "Object", "tags": [], - "label": "label_position", + "label": "ignoreParentSettings", "description": [], "signature": [ - "{ [key: string]: number; }" + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ParentIgnoreSettings", + "text": "ParentIgnoreSettings" + }, + " | undefined" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5247,13 +2812,20 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupTelemetry.ignore_settings", + "id": "def-common.ControlGroupRuntimeState.initialChildControlState", "type": "Object", "tags": [], - "label": "ignore_settings", + "label": "initialChildControlState", "description": [], "signature": [ - "{ [key: string]: number; }" + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlPanelsState", + "text": "ControlPanelsState" + }, + "" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5261,13 +2833,20 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlGroupTelemetry.by_type", + "id": "def-common.ControlGroupRuntimeState.editorConfig", "type": "Object", "tags": [], - "label": "by_type", + "label": "editorConfig", "description": [], "signature": [ - "{ [key: string]: { total: number; details: { [key: string]: number; }; }; }" + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupEditorConfig", + "text": "ControlGroupEditorConfig" + }, + " | undefined" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5278,28 +2857,36 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlPanelState", + "id": "def-common.ControlGroupSerializedState", "type": "Interface", "tags": [], - "label": "ControlPanelState", + "label": "ControlGroupSerializedState", "description": [], "signature": [ { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.ControlPanelState", - "text": "ControlPanelState" + "section": "def-common.ControlGroupSerializedState", + "text": "ControlGroupSerializedState" }, - " extends ", + " extends Pick<", { - "pluginId": "embeddable", + "pluginId": "controls", "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.PanelState", - "text": "PanelState" + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupRuntimeState", + "text": "ControlGroupRuntimeState" + }, + "<", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" }, - "" + ">, \"chainingSystem\" | \"editorConfig\">" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5307,10 +2894,21 @@ "children": [ { "parentPluginId": "controls", - "id": "def-common.ControlPanelState.order", - "type": "number", + "id": "def-common.ControlGroupSerializedState.panelsJSON", + "type": "string", + "tags": [], + "label": "panelsJSON", + "description": [], + "path": "src/plugins/controls/common/control_group/types.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "controls", + "id": "def-common.ControlGroupSerializedState.ignoreParentSettingsJSON", + "type": "string", "tags": [], - "label": "order", + "label": "ignoreParentSettingsJSON", "description": [], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5318,13 +2916,13 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlPanelState.width", + "id": "def-common.ControlGroupSerializedState.controlStyle", "type": "CompoundType", "tags": [], - "label": "width", + "label": "controlStyle", "description": [], "signature": [ - "\"small\" | \"medium\" | \"large\"" + "\"twoLine\" | \"oneLine\"" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5332,11 +2930,14 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlPanelState.grow", - "type": "boolean", + "id": "def-common.ControlGroupSerializedState.showApplySelections", + "type": "CompoundType", "tags": [], - "label": "grow", + "label": "showApplySelections", "description": [], + "signature": [ + "boolean | undefined" + ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false @@ -5346,21 +2947,33 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlsPanels", + "id": "def-common.ControlPanelsState", "type": "Interface", "tags": [], - "label": "ControlsPanels", - "description": [], + "label": "ControlPanelsState", + "description": [ + "\n----------------------------------------------------------------\nControl group panel state\n----------------------------------------------------------------" + ], + "signature": [ + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlPanelsState", + "text": "ControlPanelsState" + }, + "" + ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.ControlsPanels.Unnamed", + "id": "def-common.ControlPanelsState.Unnamed", "type": "IndexSignature", "tags": [], - "label": "[panelId: string]: ControlPanelState", + "label": "[panelId: string]: ControlPanelState", "description": [], "signature": [ "[panelId: string]: ", @@ -5371,9 +2984,7 @@ "section": "def-common.ControlPanelState", "text": "ControlPanelState" }, - "<", - "ControlInput", - ">" + "" ], "path": "src/plugins/controls/common/control_group/types.ts", "deprecated": false, @@ -5384,194 +2995,114 @@ }, { "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput", + "id": "def-common.DefaultControlState", "type": "Interface", "tags": [], - "label": "OptionsListEmbeddableInput", + "label": "DefaultControlState", "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.OptionsListEmbeddableInput", - "text": "OptionsListEmbeddableInput" - }, - " extends ", - "DataControlInput" - ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.searchTechnique", - "type": "CompoundType", - "tags": [], - "label": "searchTechnique", - "description": [], - "signature": [ - "OptionsListSearchTechnique", - " | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.sort", - "type": "Object", - "tags": [], - "label": "sort", - "description": [], - "signature": [ - "OptionsListSortingType", - " | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.selectedOptions", - "type": "Array", - "tags": [], - "label": "selectedOptions", - "description": [], - "signature": [ - "OptionsListSelection", - "[] | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.existsSelected", + "id": "def-common.DefaultControlState.grow", "type": "CompoundType", "tags": [], - "label": "existsSelected", - "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.runPastTimeout", - "type": "CompoundType", - "tags": [], - "label": "runPastTimeout", - "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.singleSelect", - "type": "CompoundType", - "tags": [], - "label": "singleSelect", - "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.hideActionBar", - "type": "CompoundType", - "tags": [], - "label": "hideActionBar", - "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.hideExclude", - "type": "CompoundType", - "tags": [], - "label": "hideExclude", + "label": "grow", "description": [], "signature": [ "boolean | undefined" ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.hideExists", + "id": "def-common.DefaultControlState.width", "type": "CompoundType", "tags": [], - "label": "hideExists", + "label": "width", "description": [], "signature": [ - "boolean | undefined" + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlWidth", + "text": "ControlWidth" + }, + " | undefined" ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "controls", + "id": "def-common.DefaultDataControlState", + "type": "Interface", + "tags": [], + "label": "DefaultDataControlState", + "description": [], + "signature": [ + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultDataControlState", + "text": "DefaultDataControlState" }, + " extends ", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + } + ], + "path": "src/plugins/controls/common/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ { "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.placeholder", + "id": "def-common.DefaultDataControlState.dataViewId", "type": "string", "tags": [], - "label": "placeholder", + "label": "dataViewId", "description": [], - "signature": [ - "string | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.hideSort", - "type": "CompoundType", + "id": "def-common.DefaultDataControlState.fieldName", + "type": "string", "tags": [], - "label": "hideSort", + "label": "fieldName", "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.OptionsListEmbeddableInput.exclude", - "type": "CompoundType", + "id": "def-common.DefaultDataControlState.title", + "type": "string", "tags": [], - "label": "exclude", + "label": "title", "description": [], "signature": [ - "boolean | undefined" + "string | undefined" ], - "path": "src/plugins/controls/common/options_list/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false } @@ -5650,52 +3181,54 @@ }, { "parentPluginId": "controls", - "id": "def-common.RangeSliderEmbeddableInput", + "id": "def-common.SerializedControlState", "type": "Interface", "tags": [], - "label": "RangeSliderEmbeddableInput", + "label": "SerializedControlState", "description": [], "signature": [ { "pluginId": "controls", "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-common.RangeSliderEmbeddableInput", - "text": "RangeSliderEmbeddableInput" + "section": "def-common.SerializedControlState", + "text": "SerializedControlState" }, - " extends ", - "DataControlInput" + " extends ", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + } ], - "path": "src/plugins/controls/common/range_slider/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "controls", - "id": "def-common.RangeSliderEmbeddableInput.value", - "type": "Object", + "id": "def-common.SerializedControlState.type", + "type": "string", "tags": [], - "label": "value", + "label": "type", "description": [], - "signature": [ - "RangeValue", - " | undefined" - ], - "path": "src/plugins/controls/common/range_slider/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "controls", - "id": "def-common.RangeSliderEmbeddableInput.step", - "type": "number", + "id": "def-common.SerializedControlState.explicitInput", + "type": "CompoundType", "tags": [], - "label": "step", + "label": "explicitInput", "description": [], "signature": [ - "number | undefined" + "{ id: string; } & ControlStateType" ], - "path": "src/plugins/controls/common/range_slider/types.ts", + "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false } @@ -5737,109 +3270,32 @@ }, { "parentPluginId": "controls", - "id": "def-common.ControlInputTransform", + "id": "def-common.ControlLabelPosition", "type": "Type", "tags": [], - "label": "ControlInputTransform", + "label": "ControlLabelPosition", "description": [], "signature": [ - "(newState: Partial<", - "ControlInput", - ">, controlType: string) => Partial<", - "ControlInput", - ">" + "\"twoLine\" | \"oneLine\"" ], "path": "src/plugins/controls/common/types.ts", "deprecated": false, "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "controls", - "id": "def-common.ControlInputTransform.$1", - "type": "Object", - "tags": [], - "label": "newState", - "description": [], - "signature": [ - "{ version?: string | undefined; viewMode?: ", - { - "pluginId": "embeddable", - "scope": "common", - "docId": "kibEmbeddablePluginApi", - "section": "def-common.ViewMode", - "text": "ViewMode" - }, - " | undefined; title?: string | undefined; description?: string | undefined; id?: string | undefined; lastReloadRequestTime?: number | undefined; hidePanelTitles?: boolean | undefined; enhancements?: ", - { - "pluginId": "@kbn/utility-types", - "scope": "common", - "docId": "kibKbnUtilityTypesPluginApi", - "section": "def-common.SerializableRecord", - "text": "SerializableRecord" - }, - " | undefined; disabledActions?: string[] | undefined; disableTriggers?: boolean | undefined; searchSessionId?: string | undefined; syncColors?: boolean | undefined; syncCursor?: boolean | undefined; syncTooltips?: boolean | undefined; executionContext?: ", - { - "pluginId": "@kbn/core-execution-context-common", - "scope": "common", - "docId": "kibKbnCoreExecutionContextCommonPluginApi", - "section": "def-common.KibanaExecutionContext", - "text": "KibanaExecutionContext" - }, - " | undefined; query?: ", - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.Query", - "text": "Query" - }, - " | undefined; filters?: ", - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.Filter", - "text": "Filter" - }, - "[] | undefined; timeRange?: ", - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.TimeRange", - "text": "TimeRange" - }, - " | undefined; timeslice?: ", - "TimeSlice", - " | undefined; controlStyle?: ", - "ControlStyle", - " | undefined; ignoreParentSettings?: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ParentIgnoreSettings", - "text": "ParentIgnoreSettings" - }, - " | undefined; }" - ], - "path": "src/plugins/controls/common/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-common.ControlInputTransform.$2", - "type": "string", - "tags": [], - "label": "controlType", - "description": [], - "path": "src/plugins/controls/common/types.ts", - "deprecated": false, - "trackAdoption": false - } + "initialIsOpen": false + }, + { + "parentPluginId": "controls", + "id": "def-common.ControlPanelState", + "type": "Type", + "tags": [], + "label": "ControlPanelState", + "description": [], + "signature": [ + "State & { type: string; order: number; }" ], + "path": "src/plugins/controls/common/control_group/types.ts", + "deprecated": false, + "trackAdoption": false, "initialIsOpen": false }, { @@ -5864,22 +3320,22 @@ "tags": [], "label": "DEFAULT_CONTROL_GROW", "description": [], - "path": "src/plugins/controls/common/control_group/control_group_constants.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "controls", - "id": "def-common.DEFAULT_CONTROL_STYLE", + "id": "def-common.DEFAULT_CONTROL_LABEL_POSITION", "type": "CompoundType", "tags": [], - "label": "DEFAULT_CONTROL_STYLE", + "label": "DEFAULT_CONTROL_LABEL_POSITION", "description": [], "signature": [ "\"twoLine\" | \"oneLine\"" ], - "path": "src/plugins/controls/common/control_group/control_group_constants.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -5894,7 +3350,7 @@ "signature": [ "\"small\" | \"medium\" | \"large\"" ], - "path": "src/plugins/controls/common/control_group/control_group_constants.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -5909,65 +3365,7 @@ "signature": [ "\"optionsListControl\"" ], - "path": "src/plugins/controls/common/options_list/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-common.PersistableControlGroupInput", - "type": "Type", - "tags": [], - "label": "PersistableControlGroupInput", - "description": [], - "signature": [ - "{ chainingSystem: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlGroupChainingSystem", - "text": "ControlGroupChainingSystem" - }, - "; ignoreParentSettings?: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ParentIgnoreSettings", - "text": "ParentIgnoreSettings" - }, - " | undefined; panels: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - }, - "; controlStyle: ", - "ControlStyle", - "; showApplySelections?: boolean | undefined; }" - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-common.persistableControlGroupInputKeys", - "type": "Array", - "tags": [], - "label": "persistableControlGroupInputKeys", - "description": [ - "\nOnly parts of the Control Group Input should be persisted" - ], - "signature": [ - "(\"chainingSystem\" | \"ignoreParentSettings\" | \"panels\" | \"controlStyle\" | \"showApplySelections\")[]" - ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -5982,87 +3380,7 @@ "signature": [ "\"rangeSliderControl\"" ], - "path": "src/plugins/controls/common/range_slider/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-common.RawControlGroupAttributes", - "type": "Type", - "tags": [], - "label": "RawControlGroupAttributes", - "description": [], - "signature": [ - "Omit<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - ", \"ignoreParentSettings\" | \"panels\"> & { ignoreParentSettingsJSON: string; panelsJSON: string; }" - ], - "path": "src/plugins/controls/common/control_group/types.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "controls", - "id": "def-common.SerializableControlGroupInput", - "type": "Type", - "tags": [], - "label": "SerializableControlGroupInput", - "description": [ - "\nSome use cases need the Persistable Control Group Input to conform to the SerializableRecord format which requires string index signatures in any objects" - ], - "signature": [ - "Omit<", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.PersistableControlGroupInput", - "text": "PersistableControlGroupInput" - }, - ", \"ignoreParentSettings\" | \"panels\"> & { panels: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlsPanels", - "text": "ControlsPanels" - }, - " & ", - { - "pluginId": "@kbn/utility-types", - "scope": "common", - "docId": "kibKbnUtilityTypesPluginApi", - "section": "def-common.SerializableRecord", - "text": "SerializableRecord" - }, - "; ignoreParentSettings: ", - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ParentIgnoreSettings", - "text": "ParentIgnoreSettings" - }, - " & ", - { - "pluginId": "@kbn/utility-types", - "scope": "common", - "docId": "kibKbnUtilityTypesPluginApi", - "section": "def-common.SerializableRecord", - "text": "SerializableRecord" - }, - "; }" - ], - "path": "src/plugins/controls/common/control_group/types.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -6077,7 +3395,7 @@ "signature": [ "\"timeSlider\"" ], - "path": "src/plugins/controls/common/time_slider/types.ts", + "path": "src/plugins/controls/common/constants.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false diff --git a/api_docs/controls.mdx b/api_docs/controls.mdx index 877a9fd6ce269..0d2c150dd21ad 100644 --- a/api_docs/controls.mdx +++ b/api_docs/controls.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/controls title: "controls" image: https://source.unsplash.com/400x175/?github description: API docs for the controls plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'controls'] --- import controlsObj from './controls.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kib | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 259 | 0 | 254 | 30 | +| 134 | 0 | 130 | 14 | ## Client @@ -31,9 +31,6 @@ Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kib ### Functions -### Classes - - ### Interfaces @@ -45,10 +42,10 @@ Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kib ### Functions -## Common +### Interfaces + -### Functions - +## Common ### Interfaces diff --git a/api_docs/custom_integrations.mdx b/api_docs/custom_integrations.mdx index 694a647e81678..ffaa52c43f2b9 100644 --- a/api_docs/custom_integrations.mdx +++ b/api_docs/custom_integrations.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/customIntegrations title: "customIntegrations" image: https://source.unsplash.com/400x175/?github description: API docs for the customIntegrations plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'customIntegrations'] --- import customIntegrationsObj from './custom_integrations.devdocs.json'; diff --git a/api_docs/dashboard.devdocs.json b/api_docs/dashboard.devdocs.json index 23ca05faf9553..8cb2ab4a82d47 100644 --- a/api_docs/dashboard.devdocs.json +++ b/api_docs/dashboard.devdocs.json @@ -119,48 +119,6 @@ "returnComment": [], "initialIsOpen": false }, - { - "parentPluginId": "dashboard", - "id": "def-public.DashboardRenderer", - "type": "Function", - "tags": [], - "label": "DashboardRenderer", - "description": [], - "signature": [ - "React.ForwardRefExoticComponent<", - "DashboardRendererProps", - " & React.RefAttributes<", - { - "pluginId": "dashboard", - "scope": "public", - "docId": "kibDashboardPluginApi", - "section": "def-public.AwaitingDashboardAPI", - "text": "AwaitingDashboardAPI" - }, - ">>" - ], - "path": "src/plugins/dashboard/public/dashboard_container/external_api/dashboard_renderer.tsx", - "deprecated": false, - "trackAdoption": false, - "returnComment": [], - "children": [ - { - "parentPluginId": "dashboard", - "id": "def-public.DashboardRenderer.$1", - "type": "Uncategorized", - "tags": [], - "label": "props", - "description": [], - "signature": [ - "P" - ], - "path": "node_modules/@types/react/index.d.ts", - "deprecated": false, - "trackAdoption": false - } - ], - "initialIsOpen": false - }, { "parentPluginId": "dashboard", "id": "def-public.DashboardTopNav", @@ -377,6 +335,41 @@ ], "returnComment": [], "initialIsOpen": false + }, + { + "parentPluginId": "dashboard", + "id": "def-public.LazyDashboardRenderer", + "type": "Function", + "tags": [], + "label": "LazyDashboardRenderer", + "description": [], + "signature": [ + "(props: ", + "DashboardRendererProps", + ") => JSX.Element" + ], + "path": "src/plugins/dashboard/public/dashboard_container/external_api/lazy_dashboard_renderer.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "dashboard", + "id": "def-public.LazyDashboardRenderer.$1", + "type": "Object", + "tags": [], + "label": "props", + "description": [], + "signature": [ + "DashboardRendererProps" + ], + "path": "src/plugins/dashboard/public/dashboard_container/external_api/lazy_dashboard_renderer.tsx", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false } ], "interfaces": [ @@ -750,28 +743,6 @@ } ], "misc": [ - { - "parentPluginId": "dashboard", - "id": "def-public.AwaitingDashboardAPI", - "type": "Type", - "tags": [], - "label": "AwaitingDashboardAPI", - "description": [], - "signature": [ - { - "pluginId": "dashboard", - "scope": "public", - "docId": "kibDashboardPluginApi", - "section": "def-public.DashboardAPI", - "text": "DashboardAPI" - }, - " | null" - ], - "path": "src/plugins/dashboard/public/dashboard_container/external_api/dashboard_api.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "dashboard", "id": "def-public.DASHBOARD_APP_ID", @@ -819,14 +790,28 @@ }, { "parentPluginId": "dashboard", - "id": "def-public.DashboardAPI", + "id": "def-public.DashboardApi", "type": "Type", "tags": [], - "label": "DashboardAPI", + "label": "DashboardApi", "description": [], "signature": [ - "DashboardContainer", - " & Partial<", + { + "pluginId": "@kbn/presentation-containers", + "scope": "public", + "docId": "kibKbnPresentationContainersPluginApi", + "section": "def-public.CanExpandPanels", + "text": "CanExpandPanels" + }, + " & ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.HasAppContext", + "text": "HasAppContext" + }, + " & ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -835,6 +820,38 @@ "text": "HasType" }, "<\"dashboard\"> & ", + { + "pluginId": "@kbn/presentation-containers", + "scope": "public", + "docId": "kibKbnPresentationContainersPluginApi", + "section": "def-public.PresentationContainer", + "text": "PresentationContainer" + }, + " & ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishesDataViews", + "text": "PublishesDataViews" + }, + " & Pick<", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishesPanelTitle", + "text": "PublishesPanelTitle" + }, + ", \"panelTitle\"> & ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishesSavedObjectId", + "text": "PublishesSavedObjectId" + }, + " & ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -879,20 +896,150 @@ "pluginId": "@kbn/presentation-publishing", "scope": "public", "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishesPanelTitle", - "text": "PublishesPanelTitle" + "section": "def-public.PublishesViewMode", + "text": "PublishesViewMode" }, " & ", + { + "pluginId": "@kbn/presentation-containers", + "scope": "public", + "docId": "kibKbnPresentationContainersPluginApi", + "section": "def-public.TracksOverlays", + "text": "TracksOverlays" + }, + " & { addFromLibrary: () => void; asyncResetToLastSavedState: () => Promise; controlGroupApi$: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishesSavedObjectId", - "text": "PublishesSavedObjectId" + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" }, - ">" + "<", + { + "pluginId": "controls", + "scope": "public", + "docId": "kibControlsPluginApi", + "section": "def-public.ControlGroupApi", + "text": "ControlGroupApi" + }, + " | undefined>; fullScreenMode$: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; focusedPanelId$: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; forceRefresh: () => void; getDashboardPanelFromId: (id: string) => Promise<", + { + "pluginId": "dashboard", + "scope": "common", + "docId": "kibDashboardPluginApi", + "section": "def-common.DashboardPanelState", + "text": "DashboardPanelState" + }, + "<", + { + "pluginId": "embeddable", + "scope": "common", + "docId": "kibEmbeddablePluginApi", + "section": "def-common.SavedObjectEmbeddableInput", + "text": "SavedObjectEmbeddableInput" + }, + ">>; getPanelsState: () => ", + { + "pluginId": "dashboard", + "scope": "common", + "docId": "kibDashboardPluginApi", + "section": "def-common.DashboardPanelMap", + "text": "DashboardPanelMap" + }, + "; hasOverlays$: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; hasRunMigrations$: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; hasUnsavedChanges$: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; managed$: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; runInteractiveSave: (interactionMode: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.ViewMode", + "text": "ViewMode" + }, + ") => Promise<", + "SaveDashboardReturn", + " | undefined>; runQuickSave: () => Promise; scrollToTop: () => void; setFilters: (filters?: ", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.Filter", + "text": "Filter" + }, + "[] | undefined) => void; setFullScreenMode: (fullScreenMode: boolean) => void; setQuery: (query?: ", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.Query", + "text": "Query" + }, + " | undefined) => void; setTags: (tags: string[]) => void; setTimeRange: (timeRange?: ", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.TimeRange", + "text": "TimeRange" + }, + " | undefined) => void; setViewMode: (viewMode: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.ViewMode", + "text": "ViewMode" + }, + ") => void; openSettingsFlyout: () => void; }" ], - "path": "src/plugins/dashboard/public/dashboard_container/external_api/dashboard_api.ts", + "path": "src/plugins/dashboard/public/dashboard_api/types.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -962,13 +1109,19 @@ ")[] | undefined; controlGroupState?: (Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/utility-types", @@ -2617,7 +2770,7 @@ "section": "def-common.KibanaExecutionContext", "text": "KibanaExecutionContext" }, - " | undefined; lastReloadRequestTime?: number | undefined; hidePanelTitles?: boolean | undefined; enhancements?: ", + " | undefined; isEmbeddedExternally?: boolean | undefined; timeslice?: [number, number] | undefined; hidePanelTitles?: boolean | undefined; syncTooltips?: boolean | undefined; useMargins?: boolean | undefined; syncColors?: boolean | undefined; syncCursor?: boolean | undefined; lastReloadRequestTime?: number | undefined; enhancements?: ", { "pluginId": "@kbn/utility-types", "scope": "common", @@ -2625,7 +2778,7 @@ "section": "def-common.SerializableRecord", "text": "SerializableRecord" }, - " | undefined; disabledActions?: string[] | undefined; disableTriggers?: boolean | undefined; searchSessionId?: string | undefined; syncColors?: boolean | undefined; syncCursor?: boolean | undefined; syncTooltips?: boolean | undefined; timeslice?: [number, number] | undefined; isEmbeddedExternally?: boolean | undefined; useMargins?: boolean | undefined; panels?: ", + " | undefined; disabledActions?: string[] | undefined; disableTriggers?: boolean | undefined; searchSessionId?: string | undefined; panels?: ", { "pluginId": "dashboard", "scope": "common", diff --git a/api_docs/dashboard.mdx b/api_docs/dashboard.mdx index f31e8d8618d6b..348c49d3c7a02 100644 --- a/api_docs/dashboard.mdx +++ b/api_docs/dashboard.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dashboard title: "dashboard" image: https://source.unsplash.com/400x175/?github description: API docs for the dashboard plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dashboard'] --- import dashboardObj from './dashboard.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kib | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 129 | 0 | 123 | 12 | +| 128 | 0 | 123 | 13 | ## Client diff --git a/api_docs/dashboard_enhanced.mdx b/api_docs/dashboard_enhanced.mdx index f9b744f0ea11a..7497c10d3dd1b 100644 --- a/api_docs/dashboard_enhanced.mdx +++ b/api_docs/dashboard_enhanced.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dashboardEnhanced title: "dashboardEnhanced" image: https://source.unsplash.com/400x175/?github description: API docs for the dashboardEnhanced plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dashboardEnhanced'] --- import dashboardEnhancedObj from './dashboard_enhanced.devdocs.json'; diff --git a/api_docs/data.mdx b/api_docs/data.mdx index 2b609646c8ef7..83a4cf8af4b4d 100644 --- a/api_docs/data.mdx +++ b/api_docs/data.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/data title: "data" image: https://source.unsplash.com/400x175/?github description: API docs for the data plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'data'] --- import dataObj from './data.devdocs.json'; diff --git a/api_docs/data_quality.mdx b/api_docs/data_quality.mdx index be2d80e86e248..64637a749f066 100644 --- a/api_docs/data_quality.mdx +++ b/api_docs/data_quality.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dataQuality title: "dataQuality" image: https://source.unsplash.com/400x175/?github description: API docs for the dataQuality plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataQuality'] --- import dataQualityObj from './data_quality.devdocs.json'; diff --git a/api_docs/data_query.mdx b/api_docs/data_query.mdx index 5cc04a4ab8957..af0dff28b917f 100644 --- a/api_docs/data_query.mdx +++ b/api_docs/data_query.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/data-query title: "data.query" image: https://source.unsplash.com/400x175/?github description: API docs for the data.query plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'data.query'] --- import dataQueryObj from './data_query.devdocs.json'; diff --git a/api_docs/data_search.mdx b/api_docs/data_search.mdx index 37a07d0ea1ac6..8114e3510911e 100644 --- a/api_docs/data_search.mdx +++ b/api_docs/data_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/data-search title: "data.search" image: https://source.unsplash.com/400x175/?github description: API docs for the data.search plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'data.search'] --- import dataSearchObj from './data_search.devdocs.json'; diff --git a/api_docs/data_view_editor.mdx b/api_docs/data_view_editor.mdx index c57fc4d611383..e217389b8c69c 100644 --- a/api_docs/data_view_editor.mdx +++ b/api_docs/data_view_editor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dataViewEditor title: "dataViewEditor" image: https://source.unsplash.com/400x175/?github description: API docs for the dataViewEditor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataViewEditor'] --- import dataViewEditorObj from './data_view_editor.devdocs.json'; diff --git a/api_docs/data_view_field_editor.mdx b/api_docs/data_view_field_editor.mdx index 6b12ca5a703f6..ea9afd08ef7c9 100644 --- a/api_docs/data_view_field_editor.mdx +++ b/api_docs/data_view_field_editor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dataViewFieldEditor title: "dataViewFieldEditor" image: https://source.unsplash.com/400x175/?github description: API docs for the dataViewFieldEditor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataViewFieldEditor'] --- import dataViewFieldEditorObj from './data_view_field_editor.devdocs.json'; diff --git a/api_docs/data_view_management.mdx b/api_docs/data_view_management.mdx index 8302b0bf3e709..2952e866888b8 100644 --- a/api_docs/data_view_management.mdx +++ b/api_docs/data_view_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dataViewManagement title: "dataViewManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the dataViewManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataViewManagement'] --- import dataViewManagementObj from './data_view_management.devdocs.json'; diff --git a/api_docs/data_views.devdocs.json b/api_docs/data_views.devdocs.json index f003397257a1f..1015fb02d2144 100644 --- a/api_docs/data_views.devdocs.json +++ b/api_docs/data_views.devdocs.json @@ -14078,14 +14078,6 @@ "plugin": "lens", "path": "x-pack/plugins/lens/public/app_plugin/lens_top_nav.tsx" }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/services/options_list/options_list_service.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/services/options_list/options_list_service.ts" - }, { "plugin": "controls", "path": "src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/options_list_fetch_cache.ts" @@ -14398,10 +14390,6 @@ "plugin": "transform", "path": "x-pack/plugins/transform/public/app/sections/create_transform/components/step_define/common/common.test.ts" }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/services/data_views/data_views.story.ts" - }, { "plugin": "dataViewManagement", "path": "src/plugins/data_view_management/public/components/edit_index_pattern/edit_index_pattern.tsx" diff --git a/api_docs/data_views.mdx b/api_docs/data_views.mdx index 100593d0e55ef..22284b7b5f66c 100644 --- a/api_docs/data_views.mdx +++ b/api_docs/data_views.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dataViews title: "dataViews" image: https://source.unsplash.com/400x175/?github description: API docs for the dataViews plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataViews'] --- import dataViewsObj from './data_views.devdocs.json'; diff --git a/api_docs/data_visualizer.mdx b/api_docs/data_visualizer.mdx index 971a21d9e5557..6dd527a489757 100644 --- a/api_docs/data_visualizer.mdx +++ b/api_docs/data_visualizer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/dataVisualizer title: "dataVisualizer" image: https://source.unsplash.com/400x175/?github description: API docs for the dataVisualizer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataVisualizer'] --- import dataVisualizerObj from './data_visualizer.devdocs.json'; diff --git a/api_docs/dataset_quality.mdx b/api_docs/dataset_quality.mdx index 5626a1013f4f0..6a1a10337af1c 100644 --- a/api_docs/dataset_quality.mdx +++ b/api_docs/dataset_quality.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/datasetQuality title: "datasetQuality" image: https://source.unsplash.com/400x175/?github description: API docs for the datasetQuality plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'datasetQuality'] --- import datasetQualityObj from './dataset_quality.devdocs.json'; diff --git a/api_docs/deprecations_by_api.mdx b/api_docs/deprecations_by_api.mdx index 324987e7f3b8f..fd1c958327037 100644 --- a/api_docs/deprecations_by_api.mdx +++ b/api_docs/deprecations_by_api.mdx @@ -7,7 +7,7 @@ id: kibDevDocsDeprecationsByApi slug: /kibana-dev-docs/api-meta/deprecated-api-list-by-api title: Deprecated API usage by API description: A list of deprecated APIs, which plugins are still referencing them, and when they need to be removed by. -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -32,14 +32,13 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | @kbn/core, visualizations, triggersActionsUi | - | | | ruleRegistry, securitySolution, slo | - | | | security, actions, alerting, ruleRegistry, files, cases, fleet, securitySolution | - | -| | securitySolution, cloudChat, observabilityOnboarding | - | | | alerting, securitySolution | - | | | @kbn/core-saved-objects-api-browser, @kbn/core-saved-objects-browser-internal, @kbn/core-saved-objects-browser-mocks, @kbn/core-saved-objects-api-server-internal, @kbn/core-saved-objects-import-export-server-internal, @kbn/core-saved-objects-server-internal, fleet, graph, lists, osquery, securitySolution, alerting | - | | | @kbn/core-saved-objects-api-browser, @kbn/core-saved-objects-browser-internal, @kbn/core-saved-objects-browser-mocks, @kbn/core-saved-objects-api-server-internal, @kbn/core-saved-objects-import-export-server-internal, @kbn/core-saved-objects-server-internal, fleet, graph, lists, osquery, securitySolution, alerting | - | | | alerting, securitySolution | - | | | securitySolution | - | -| | cloudDefend, osquery, securitySolution, synthetics | - | -| | cloudDefend, osquery, securitySolution, synthetics | - | +| | cloudDefend, securitySolution, synthetics | - | +| | cloudDefend, securitySolution, synthetics | - | | | cases, securitySolution, security | - | | | @kbn/securitysolution-data-table, securitySolution | - | | | @kbn/securitysolution-data-table, securitySolution | - | @@ -67,12 +66,10 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | securitySolution | - | | | @kbn/monaco, securitySolution | - | | | cloudSecurityPosture, securitySolution | - | -| | cloudChat | - | -| | @kbn/core-elasticsearch-server-internal, @kbn/core-plugins-server-internal, enterpriseSearch, observabilityOnboarding, console | - | | | alerting, observabilityAIAssistant, fleet, cloudSecurityPosture, entityManager, serverlessSearch, transform, upgradeAssistant, apm, synthetics, security | - | | | actions, alerting | - | | | monitoring | - | -| | @kbn/core-saved-objects-api-browser, @kbn/core, savedObjects, savedObjectsManagement, visualizations, savedObjectsTagging, eventAnnotation, lens, maps, graph, dashboard, savedObjectsTaggingOss, kibanaUtils, expressions, data, embeddable, uiActionsEnhanced, controls, canvas, dashboardEnhanced, globalSearchProviders | - | +| | @kbn/core-saved-objects-api-browser, @kbn/core, savedObjects, savedObjectsManagement, visualizations, savedObjectsTagging, eventAnnotation, lens, maps, graph, dashboard, savedObjectsTaggingOss, kibanaUtils, expressions, data, embeddable, uiActionsEnhanced, canvas, dashboardEnhanced, globalSearchProviders, controls | - | | | @kbn/core-saved-objects-browser, @kbn/core-saved-objects-browser-internal, @kbn/core, home, savedObjects, visualizations, lens, visTypeTimeseries, @kbn/core-saved-objects-browser-mocks | - | | | @kbn/core-saved-objects-browser-internal, @kbn/core-saved-objects-browser-mocks, savedObjects | - | | | @kbn/core-saved-objects-browser-mocks, home, @kbn/core-saved-objects-browser-internal | - | @@ -115,8 +112,8 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | @kbn/core-plugins-browser-internal, @kbn/core-root-browser-internal, home, savedObjects, unifiedSearch, visualizations, fileUpload, dashboardEnhanced, transform, discover, dataVisualizer | - | | | @kbn/core, lens, savedObjects | - | | | lens, dashboard, canvas | - | -| | lens, controls, dashboard | - | -| | lens, controls, dashboard, investigateApp | - | +| | lens, dashboard | - | +| | lens, dashboard, investigateApp | - | | | canvas, dashboard | - | | | dashboard | - | | | embeddable, dashboard | - | @@ -147,6 +144,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | canvas | - | | | canvas | - | | | enterpriseSearch | - | +| | @kbn/core-elasticsearch-server-internal, @kbn/core-plugins-server-internal, enterpriseSearch, observabilityOnboarding, console | - | | | embeddableEnhanced | - | | | embeddableEnhanced | - | | | uiActionsEnhanced | - | @@ -205,7 +203,6 @@ Safe to remove. | | alerting | | | alerting | | | alerting | -| | cloudExperiments | | | data | | | data | | | data | diff --git a/api_docs/deprecations_by_plugin.mdx b/api_docs/deprecations_by_plugin.mdx index 5425334348f11..9fe0f439213df 100644 --- a/api_docs/deprecations_by_plugin.mdx +++ b/api_docs/deprecations_by_plugin.mdx @@ -7,7 +7,7 @@ id: kibDevDocsDeprecationsByPlugin slug: /kibana-dev-docs/api-meta/deprecated-api-list-by-plugin title: Deprecated API usage by plugin description: A list of deprecated APIs, which plugins are still referencing them, and when they need to be removed by. -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -375,7 +375,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | Deprecated API | Reference location(s) | Remove By | | ---------------|-----------|-----------| -| | [esql_theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/esql/lib/esql_theme.ts#:~:text=darkMode), [esql_theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/esql/lib/esql_theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode) | - | +| | [esql_theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/esql/lib/esql_theme.ts#:~:text=darkMode), [esql_theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/esql/lib/esql_theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode), [theme.ts](https://github.com/elastic/kibana/tree/main/packages/kbn-monaco/src/console/theme.ts#:~:text=darkMode) | - | @@ -583,15 +583,6 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] -## cloudChat - -| Deprecated API | Reference location(s) | Remove By | -| ---------------|-----------|-----------| -| | [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/cloud_integrations/cloud_chat/server/plugin.ts#:~:text=CloudExperimentsPluginStart), [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/cloud_integrations/cloud_chat/server/plugin.ts#:~:text=CloudExperimentsPluginStart) | - | -| | [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/cloud_integrations/cloud_chat/server/plugin.ts#:~:text=getVariation), [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/cloud_integrations/cloud_chat/server/plugin.ts#:~:text=getVariation) | - | - - - ## cloudDefend | Deprecated API | Reference location(s) | Remove By | @@ -632,10 +623,8 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | Deprecated API | Reference location(s) | Remove By | | ---------------|-----------|-----------| -| | [options_list_service.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/services/options_list/options_list_service.ts#:~:text=title), [options_list_service.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/services/options_list/options_list_service.ts#:~:text=title), [options_list_fetch_cache.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/options_list_fetch_cache.ts#:~:text=title), [data_views.story.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/services/data_views/data_views.story.ts#:~:text=title) | - | -| | [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/plugin.ts#:~:text=registerEmbeddableFactory), [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/plugin.ts#:~:text=registerEmbeddableFactory), [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/plugin.ts#:~:text=registerEmbeddableFactory), [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/plugin.ts#:~:text=registerEmbeddableFactory) | - | -| | [types.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/services/embeddable/types.ts#:~:text=getEmbeddableFactory), [embeddable_service.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/services/embeddable/embeddable_service.ts#:~:text=getEmbeddableFactory), [embeddable.story.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/services/embeddable/embeddable.story.ts#:~:text=getEmbeddableFactory) | - | -| | [options_list_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/options_list/options_list_persistable_state.ts#:~:text=SavedObjectReference), [options_list_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/options_list/options_list_persistable_state.ts#:~:text=SavedObjectReference), [options_list_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/options_list/options_list_persistable_state.ts#:~:text=SavedObjectReference), [range_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/range_slider/range_slider_persistable_state.ts#:~:text=SavedObjectReference), [range_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/range_slider/range_slider_persistable_state.ts#:~:text=SavedObjectReference), [range_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/range_slider/range_slider_persistable_state.ts#:~:text=SavedObjectReference), [time_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/time_slider/time_slider_persistable_state.ts#:~:text=SavedObjectReference), [time_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/time_slider/time_slider_persistable_state.ts#:~:text=SavedObjectReference), [time_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/time_slider/time_slider_persistable_state.ts#:~:text=SavedObjectReference), [control_group_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/common/control_group/control_group_persistable_state.ts#:~:text=SavedObjectReference)+ 2 more | - | +| | [options_list_fetch_cache.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/public/react_controls/controls/data_controls/options_list_control/options_list_fetch_cache.ts#:~:text=title) | - | +| | [control_group_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/control_group/control_group_persistable_state.ts#:~:text=SavedObjectReference), [control_group_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/control_group/control_group_persistable_state.ts#:~:text=SavedObjectReference), [control_group_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/control_group/control_group_persistable_state.ts#:~:text=SavedObjectReference), [options_list_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/options_list/options_list_persistable_state.ts#:~:text=SavedObjectReference), [options_list_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/options_list/options_list_persistable_state.ts#:~:text=SavedObjectReference), [options_list_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/options_list/options_list_persistable_state.ts#:~:text=SavedObjectReference), [range_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/range_slider/range_slider_persistable_state.ts#:~:text=SavedObjectReference), [range_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/range_slider/range_slider_persistable_state.ts#:~:text=SavedObjectReference), [range_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/range_slider/range_slider_persistable_state.ts#:~:text=SavedObjectReference), [time_slider_persistable_state.ts](https://github.com/elastic/kibana/tree/main/src/plugins/controls/server/time_slider/time_slider_persistable_state.ts#:~:text=SavedObjectReference)+ 2 more | - | @@ -795,7 +784,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | Deprecated API | Reference location(s) | Remove By | | ---------------|-----------|-----------| -| | [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [enable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/enable.ts#:~:text=authc), [disable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/disable.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [enable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/enable.ts#:~:text=authc), [disable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/disable.ts#:~:text=authc) | - | +| | [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [enable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/routes/enablement/enable.ts#:~:text=authc), [disable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/routes/enablement/disable.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [api_key.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts#:~:text=authc), [enable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/routes/enablement/enable.ts#:~:text=authc), [disable.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/entity_manager/server/routes/enablement/disable.ts#:~:text=authc) | - | @@ -1146,7 +1135,6 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | Deprecated API | Reference location(s) | Remove By | | ---------------|-----------|-----------| -| | [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/observability_onboarding/public/plugin.ts#:~:text=CloudExperimentsPluginStart), [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/observability_onboarding/public/plugin.ts#:~:text=CloudExperimentsPluginStart) | - | | | [plugin.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/observability_solution/observability_onboarding/server/plugin.ts#:~:text=legacy) | - | @@ -1166,8 +1154,6 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [read_pack_route.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/server/routes/pack/read_pack_route.ts#:~:text=migrationVersion) | - | | | [read_pack_route.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/server/routes/pack/read_pack_route.ts#:~:text=migrationVersion), [read_pack_route.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/server/routes/pack/read_pack_route.ts#:~:text=migrationVersion) | - | | | [pack_queries_status_table.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/packs/pack_queries_status_table.tsx#:~:text=indexPatternId), [view_results_in_discover.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/discover/view_results_in_discover.tsx#:~:text=indexPatternId), [use_discover_link.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/common/hooks/use_discover_link.tsx#:~:text=indexPatternId) | - | -| | [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id) | - | -| | [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id), [osquery_managed_policy_create_import_extension.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx#:~:text=policy_id) | - | | | [create_action_service.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/server/handlers/action/create_action_service.ts#:~:text=license%24) | 8.8.0 | | | [add_to_timeline_button.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/public/timelines/add_to_timeline_button.tsx#:~:text=getHoverActions) | - | | | [read_pack_route.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/server/routes/pack/read_pack_route.ts#:~:text=migrationVersion), [read_pack_route.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/osquery/server/routes/pack/read_pack_route.ts#:~:text=migrationVersion) | - | @@ -1355,7 +1341,6 @@ migrates to using the Kibana Privilege model: https://github.com/elastic/kibana/ | Deprecated API | Reference location(s) | Remove By | | ---------------|-----------|-----------| | | [route.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_preview/api/preview_rules/route.ts#:~:text=alertFactory) | - | -| | [types.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/types.ts#:~:text=CloudExperimentsPluginStart), [types.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/types.ts#:~:text=CloudExperimentsPluginStart) | - | | | [wrap_search_source_client.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_preview/api/preview_rules/wrap_search_source_client.ts#:~:text=create) | - | | | [wrap_search_source_client.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_preview/api/preview_rules/wrap_search_source_client.test.ts#:~:text=fetch), [wrap_search_source_client.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_preview/api/preview_rules/wrap_search_source_client.test.ts#:~:text=fetch), [wrap_search_source_client.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_preview/api/preview_rules/wrap_search_source_client.test.ts#:~:text=fetch), [wrap_search_source_client.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_preview/api/preview_rules/wrap_search_source_client.test.ts#:~:text=fetch) | - | | | [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=migrationVersion)+ 12 more | - | diff --git a/api_docs/deprecations_by_team.mdx b/api_docs/deprecations_by_team.mdx index 5c74ba7845e44..115dd57a9eec7 100644 --- a/api_docs/deprecations_by_team.mdx +++ b/api_docs/deprecations_by_team.mdx @@ -7,7 +7,7 @@ id: kibDevDocsDeprecationsDueByTeam slug: /kibana-dev-docs/api-meta/deprecations-due-by-team title: Deprecated APIs due to be removed, by team description: Lists the teams that are referencing deprecated APIs with a remove by date. -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -48,15 +48,6 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] -## @elastic/kibana-gis - -| Plugin | Deprecated API | Reference location(s) | Remove By | -| --------|-------|-----------|-----------| -| mapsEms | | [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/maps_ems/server/plugin.ts#:~:text=license%24) | 8.8.0 | -| mapsEms | | [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/maps_ems/server/plugin.ts#:~:text=refresh) | 8.8.0 | - - - ## @elastic/kibana-management | Plugin | Deprecated API | Reference location(s) | Remove By | @@ -72,6 +63,8 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | Plugin | Deprecated API | Reference location(s) | Remove By | | --------|-------|-----------|-----------| | dashboard | | [save_modal.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/dashboard/public/dashboard_container/embeddable/api/overlays/save_modal.tsx#:~:text=SavedObjectSaveModal), [save_modal.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/dashboard/public/dashboard_container/embeddable/api/overlays/save_modal.tsx#:~:text=SavedObjectSaveModal), [add_to_library_action.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/dashboard/public/dashboard_actions/add_to_library_action.tsx#:~:text=SavedObjectSaveModal), [add_to_library_action.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/dashboard/public/dashboard_actions/add_to_library_action.tsx#:~:text=SavedObjectSaveModal), [saved_object_save_modal_dashboard.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/presentation_util/public/components/saved_object_save_modal_dashboard.tsx#:~:text=SavedObjectSaveModal), [saved_object_save_modal_dashboard.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/presentation_util/public/components/saved_object_save_modal_dashboard.tsx#:~:text=SavedObjectSaveModal), [attribute_service.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/embeddable/public/lib/attribute_service/attribute_service.tsx#:~:text=SavedObjectSaveModal), [attribute_service.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/embeddable/public/lib/attribute_service/attribute_service.tsx#:~:text=SavedObjectSaveModal), [save_to_library.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/links/public/content_management/save_to_library.tsx#:~:text=SavedObjectSaveModal), [save_to_library.tsx](https://github.com/elastic/kibana/tree/main/src/plugins/links/public/content_management/save_to_library.tsx#:~:text=SavedObjectSaveModal) | 8.8.0 | +| mapsEms | | [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/maps_ems/server/plugin.ts#:~:text=license%24) | 8.8.0 | +| mapsEms | | [plugin.ts](https://github.com/elastic/kibana/tree/main/src/plugins/maps_ems/server/plugin.ts#:~:text=refresh) | 8.8.0 | diff --git a/api_docs/dev_tools.mdx b/api_docs/dev_tools.mdx index c1e6520ee8963..c7c734f1a1b49 100644 --- a/api_docs/dev_tools.mdx +++ b/api_docs/dev_tools.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/devTools title: "devTools" image: https://source.unsplash.com/400x175/?github description: API docs for the devTools plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'devTools'] --- import devToolsObj from './dev_tools.devdocs.json'; diff --git a/api_docs/discover.mdx b/api_docs/discover.mdx index 0ab2219b2ef49..98bd4052fe516 100644 --- a/api_docs/discover.mdx +++ b/api_docs/discover.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/discover title: "discover" image: https://source.unsplash.com/400x175/?github description: API docs for the discover plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'discover'] --- import discoverObj from './discover.devdocs.json'; diff --git a/api_docs/discover_enhanced.mdx b/api_docs/discover_enhanced.mdx index 27da0dc2a563b..95a6e526ced5e 100644 --- a/api_docs/discover_enhanced.mdx +++ b/api_docs/discover_enhanced.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/discoverEnhanced title: "discoverEnhanced" image: https://source.unsplash.com/400x175/?github description: API docs for the discoverEnhanced plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'discoverEnhanced'] --- import discoverEnhancedObj from './discover_enhanced.devdocs.json'; diff --git a/api_docs/discover_shared.mdx b/api_docs/discover_shared.mdx index 117c2246e4cd7..32c4067ee0dd7 100644 --- a/api_docs/discover_shared.mdx +++ b/api_docs/discover_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/discoverShared title: "discoverShared" image: https://source.unsplash.com/400x175/?github description: API docs for the discoverShared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'discoverShared'] --- import discoverSharedObj from './discover_shared.devdocs.json'; diff --git a/api_docs/ecs_data_quality_dashboard.mdx b/api_docs/ecs_data_quality_dashboard.mdx index 348cef252ef76..fcbbb8be61d85 100644 --- a/api_docs/ecs_data_quality_dashboard.mdx +++ b/api_docs/ecs_data_quality_dashboard.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/ecsDataQualityDashboard title: "ecsDataQualityDashboard" image: https://source.unsplash.com/400x175/?github description: API docs for the ecsDataQualityDashboard plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ecsDataQualityDashboard'] --- import ecsDataQualityDashboardObj from './ecs_data_quality_dashboard.devdocs.json'; diff --git a/api_docs/elastic_assistant.devdocs.json b/api_docs/elastic_assistant.devdocs.json index dc7a18796d77d..8c059454eed28 100644 --- a/api_docs/elastic_assistant.devdocs.json +++ b/api_docs/elastic_assistant.devdocs.json @@ -209,6 +209,27 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "elasticAssistant", + "id": "def-server.AssistantToolParams.inference", + "type": "Object", + "tags": [], + "label": "inference", + "description": [], + "signature": [ + { + "pluginId": "inference", + "scope": "server", + "docId": "kibInferencePluginApi", + "section": "def-server.InferenceServerStart", + "text": "InferenceServerStart" + }, + " | undefined" + ], + "path": "x-pack/plugins/elastic_assistant/server/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "elasticAssistant", "id": "def-server.AssistantToolParams.isEnabledKnowledgeBase", @@ -220,6 +241,20 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "elasticAssistant", + "id": "def-server.AssistantToolParams.connectorId", + "type": "string", + "tags": [], + "label": "connectorId", + "description": [], + "signature": [ + "string | undefined" + ], + "path": "x-pack/plugins/elastic_assistant/server/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "elasticAssistant", "id": "def-server.AssistantToolParams.chain", @@ -1818,6 +1853,26 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "elasticAssistant", + "id": "def-server.ElasticAssistantPluginStartDependencies.inference", + "type": "Object", + "tags": [], + "label": "inference", + "description": [], + "signature": [ + { + "pluginId": "inference", + "scope": "server", + "docId": "kibInferencePluginApi", + "section": "def-server.InferenceServerStart", + "text": "InferenceServerStart" + } + ], + "path": "x-pack/plugins/elastic_assistant/server/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "elasticAssistant", "id": "def-server.ElasticAssistantPluginStartDependencies.spaces", @@ -1958,6 +2013,28 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "elasticAssistant", + "id": "def-server.ElasticAssistantPluginStart.inference", + "type": "Object", + "tags": [], + "label": "inference", + "description": [ + "\nInference plugin start contract." + ], + "signature": [ + { + "pluginId": "inference", + "scope": "server", + "docId": "kibInferencePluginApi", + "section": "def-server.InferenceServerStart", + "text": "InferenceServerStart" + } + ], + "path": "x-pack/plugins/elastic_assistant/server/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "elasticAssistant", "id": "def-server.ElasticAssistantPluginStart.registerFeatures", diff --git a/api_docs/elastic_assistant.mdx b/api_docs/elastic_assistant.mdx index 4d5e76e5c56c8..c74acbf576eb0 100644 --- a/api_docs/elastic_assistant.mdx +++ b/api_docs/elastic_assistant.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/elasticAssistant title: "elasticAssistant" image: https://source.unsplash.com/400x175/?github description: API docs for the elasticAssistant plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'elasticAssistant'] --- import elasticAssistantObj from './elastic_assistant.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/security-generative-ai](https://github.com/orgs/elastic/teams/ | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 49 | 0 | 35 | 2 | +| 53 | 0 | 38 | 2 | ## Server diff --git a/api_docs/embeddable.devdocs.json b/api_docs/embeddable.devdocs.json index 617d9afca361c..6b628765d44af 100644 --- a/api_docs/embeddable.devdocs.json +++ b/api_docs/embeddable.devdocs.json @@ -1000,7 +1000,7 @@ "section": "def-public.IEmbeddable", "text": "IEmbeddable" }, - ">(type: string, explicitInput: Partial, attributes?: unknown) => Promise<", + ">(type: string, explicitInput: Partial, attributes?: unknown) => Promise" + ">" ], "path": "src/plugins/embeddable/public/lib/containers/container.ts", "deprecated": false, @@ -1455,7 +1455,7 @@ "section": "def-public.EmbeddableOutput", "text": "EmbeddableOutput" }, - ", any>>(id: string) => Promise>(id: string) => Promise<", { "pluginId": "embeddable", "scope": "public", @@ -1463,7 +1463,7 @@ "section": "def-public.ErrorEmbeddable", "text": "ErrorEmbeddable" }, - ">" + " | TEmbeddable>" ], "path": "src/plugins/embeddable/public/lib/containers/container.ts", "deprecated": false, @@ -1822,7 +1822,7 @@ "section": "def-common.PanelState", "text": "PanelState" }, - "<{ id: string; version?: string | undefined; }>, otherPanels: TContainerInput[\"panels\"]) => Promise, otherPanels: TContainerInput[\"panels\"]) => Promise<", { "pluginId": "embeddable", "scope": "public", @@ -1830,7 +1830,7 @@ "section": "def-public.ErrorEmbeddable", "text": "ErrorEmbeddable" }, - ">" + " | TEmbeddable>" ], "path": "src/plugins/embeddable/public/lib/containers/container.ts", "deprecated": false, @@ -8394,9 +8394,7 @@ "label": "isExplicitInputWithAttributes", "description": [], "signature": [ - "(value: ", - "ExplicitInputWithAttributes", - " | Partial<", + "(value: Partial<", { "pluginId": "embeddable", "scope": "common", @@ -8404,7 +8402,9 @@ "section": "def-common.EmbeddableInput", "text": "EmbeddableInput" }, - ">) => value is ", + "> | ", + "ExplicitInputWithAttributes", + ") => value is ", "ExplicitInputWithAttributes" ], "path": "src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts", @@ -8419,8 +8419,7 @@ "label": "value", "description": [], "signature": [ - "ExplicitInputWithAttributes", - " | Partial<", + "Partial<", { "pluginId": "embeddable", "scope": "common", @@ -8428,7 +8427,8 @@ "section": "def-common.EmbeddableInput", "text": "EmbeddableInput" }, - ">" + "> | ", + "ExplicitInputWithAttributes" ], "path": "src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts", "deprecated": false, @@ -10224,9 +10224,9 @@ "section": "def-public.ContainerOutput", "text": "ContainerOutput" }, - "> | undefined) => Promise | ", + "> | undefined) => Promise<", "ExplicitInputWithAttributes", - ">" + " | Partial>" ], "path": "src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts", "deprecated": false, @@ -10322,7 +10322,7 @@ "section": "def-public.ContainerOutput", "text": "ContainerOutput" }, - "> | undefined) => Promise<", + "> | undefined) => Promise" + ">" ], "path": "src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts", "deprecated": false, @@ -10443,7 +10443,7 @@ "section": "def-public.ContainerOutput", "text": "ContainerOutput" }, - "> | undefined) => Promise<", + "> | undefined) => Promise" + " | undefined>" ], "path": "src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts", "deprecated": false, @@ -13409,7 +13409,7 @@ "section": "def-public.EmbeddableFactory", "text": "EmbeddableFactory" }, - ", \"type\" | \"create\" | \"latestVersion\" | \"isEditable\" | \"getDisplayName\"> & Partial, \"type\" | \"create\" | \"getDisplayName\" | \"latestVersion\" | \"isEditable\"> & Partial, \"telemetry\" | \"inject\" | \"extract\" | \"migrations\" | \"createFromSavedObject\" | \"isContainerType\" | \"getExplicitInput\" | \"savedObjectMetaData\" | \"canCreateNew\" | \"getDefaultInput\" | \"grouping\" | \"getIconType\" | \"getDescription\">>" + ", \"telemetry\" | \"inject\" | \"extract\" | \"migrations\" | \"getIconType\" | \"grouping\" | \"createFromSavedObject\" | \"isContainerType\" | \"getExplicitInput\" | \"savedObjectMetaData\" | \"canCreateNew\" | \"getDefaultInput\" | \"getDescription\">>" ], "path": "src/plugins/embeddable/public/lib/embeddables/embeddable_factory_definition.ts", "deprecated": false, @@ -14512,22 +14512,6 @@ "plugin": "lens", "path": "x-pack/plugins/lens/public/plugin.ts" }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/plugin.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/plugin.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/plugin.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/plugin.ts" - }, { "plugin": "dashboard", "path": "src/plugins/dashboard/public/plugin.tsx" @@ -14890,14 +14874,6 @@ "plugin": "lens", "path": "x-pack/plugins/lens/public/embeddable/embeddable_component.tsx" }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/services/embeddable/types.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/services/embeddable/embeddable_service.ts" - }, { "plugin": "dashboard", "path": "src/plugins/dashboard/public/services/dashboard_content_management/lib/migrate_dashboard_input.ts" @@ -14922,10 +14898,6 @@ "plugin": "dashboard", "path": "src/plugins/dashboard/public/services/embeddable/embeddable.stub.ts" }, - { - "plugin": "controls", - "path": "src/plugins/controls/public/services/embeddable/embeddable.story.ts" - }, { "plugin": "dashboard", "path": "src/plugins/dashboard/public/dashboard_container/embeddable/create/create_dashboard.test.ts" diff --git a/api_docs/embeddable.mdx b/api_docs/embeddable.mdx index ad028690f665a..f85002d7080ca 100644 --- a/api_docs/embeddable.mdx +++ b/api_docs/embeddable.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/embeddable title: "embeddable" image: https://source.unsplash.com/400x175/?github description: API docs for the embeddable plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'embeddable'] --- import embeddableObj from './embeddable.devdocs.json'; diff --git a/api_docs/embeddable_enhanced.mdx b/api_docs/embeddable_enhanced.mdx index 1075d2e29b4e5..e06f75a1a48e3 100644 --- a/api_docs/embeddable_enhanced.mdx +++ b/api_docs/embeddable_enhanced.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/embeddableEnhanced title: "embeddableEnhanced" image: https://source.unsplash.com/400x175/?github description: API docs for the embeddableEnhanced plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'embeddableEnhanced'] --- import embeddableEnhancedObj from './embeddable_enhanced.devdocs.json'; diff --git a/api_docs/encrypted_saved_objects.mdx b/api_docs/encrypted_saved_objects.mdx index eb49e8bff6a78..3b0a8c43ead37 100644 --- a/api_docs/encrypted_saved_objects.mdx +++ b/api_docs/encrypted_saved_objects.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/encryptedSavedObjects title: "encryptedSavedObjects" image: https://source.unsplash.com/400x175/?github description: API docs for the encryptedSavedObjects plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'encryptedSavedObjects'] --- import encryptedSavedObjectsObj from './encrypted_saved_objects.devdocs.json'; diff --git a/api_docs/enterprise_search.mdx b/api_docs/enterprise_search.mdx index cc143c729bd61..251ac77b529d2 100644 --- a/api_docs/enterprise_search.mdx +++ b/api_docs/enterprise_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/enterpriseSearch title: "enterpriseSearch" image: https://source.unsplash.com/400x175/?github description: API docs for the enterpriseSearch plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'enterpriseSearch'] --- import enterpriseSearchObj from './enterprise_search.devdocs.json'; diff --git a/api_docs/entities_data_access.mdx b/api_docs/entities_data_access.mdx index 6986fb214184f..8425d4a8ca448 100644 --- a/api_docs/entities_data_access.mdx +++ b/api_docs/entities_data_access.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/entitiesDataAccess title: "entitiesDataAccess" image: https://source.unsplash.com/400x175/?github description: API docs for the entitiesDataAccess plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'entitiesDataAccess'] --- import entitiesDataAccessObj from './entities_data_access.devdocs.json'; diff --git a/api_docs/entity_manager.devdocs.json b/api_docs/entity_manager.devdocs.json index 617634d5c931c..0e10719557be2 100644 --- a/api_docs/entity_manager.devdocs.json +++ b/api_docs/entity_manager.devdocs.json @@ -19,7 +19,7 @@ }, " extends Error" ], - "path": "x-pack/plugins/observability_solution/entity_manager/public/lib/errors.ts", + "path": "x-pack/plugins/entity_manager/public/lib/errors.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -33,7 +33,7 @@ "signature": [ "any" ], - "path": "x-pack/plugins/observability_solution/entity_manager/public/lib/errors.ts", + "path": "x-pack/plugins/entity_manager/public/lib/errors.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -47,7 +47,7 @@ "signature": [ "string" ], - "path": "x-pack/plugins/observability_solution/entity_manager/public/lib/errors.ts", + "path": "x-pack/plugins/entity_manager/public/lib/errors.ts", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -73,7 +73,7 @@ "signature": [ "\"entityManager\"" ], - "path": "x-pack/plugins/observability_solution/entity_manager/public/index.ts", + "path": "x-pack/plugins/entity_manager/public/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -88,7 +88,7 @@ "signature": [ "\"api_key_not_found\"" ], - "path": "x-pack/plugins/observability_solution/entity_manager/common/errors.ts", + "path": "x-pack/plugins/entity_manager/common/errors.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -103,7 +103,7 @@ "signature": [ "\"api_key_not_valid\"" ], - "path": "x-pack/plugins/observability_solution/entity_manager/common/errors.ts", + "path": "x-pack/plugins/entity_manager/common/errors.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -118,7 +118,7 @@ "signature": [ "\"api_key_service_disabled\"" ], - "path": "x-pack/plugins/observability_solution/entity_manager/common/errors.ts", + "path": "x-pack/plugins/entity_manager/common/errors.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -133,7 +133,7 @@ "signature": [ "\"error_definition_stopped\"" ], - "path": "x-pack/plugins/observability_solution/entity_manager/common/errors.ts", + "path": "x-pack/plugins/entity_manager/common/errors.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -148,7 +148,7 @@ "signature": [ "\"partial_builtin_installation\"" ], - "path": "x-pack/plugins/observability_solution/entity_manager/common/errors.ts", + "path": "x-pack/plugins/entity_manager/common/errors.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -162,7 +162,7 @@ "tags": [], "label": "EntityManagerPublicPluginSetup", "description": [], - "path": "x-pack/plugins/observability_solution/entity_manager/public/types.ts", + "path": "x-pack/plugins/entity_manager/public/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -176,7 +176,7 @@ "signature": [ "EntityClient" ], - "path": "x-pack/plugins/observability_solution/entity_manager/public/types.ts", + "path": "x-pack/plugins/entity_manager/public/types.ts", "deprecated": false, "trackAdoption": false } @@ -191,7 +191,7 @@ "tags": [], "label": "EntityManagerPublicPluginStart", "description": [], - "path": "x-pack/plugins/observability_solution/entity_manager/public/types.ts", + "path": "x-pack/plugins/entity_manager/public/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -205,7 +205,7 @@ "signature": [ "EntityClient" ], - "path": "x-pack/plugins/observability_solution/entity_manager/public/types.ts", + "path": "x-pack/plugins/entity_manager/public/types.ts", "deprecated": false, "trackAdoption": false } @@ -230,7 +230,7 @@ "signature": [ "{}" ], - "path": "x-pack/plugins/observability_solution/entity_manager/common/config.ts", + "path": "x-pack/plugins/entity_manager/common/config.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -597,7 +597,7 @@ }, ">; }" ], - "path": "x-pack/plugins/observability_solution/entity_manager/server/routes/index.ts", + "path": "x-pack/plugins/entity_manager/server/routes/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -611,7 +611,7 @@ "tags": [], "label": "EntityManagerServerPluginSetup", "description": [], - "path": "x-pack/plugins/observability_solution/entity_manager/server/plugin.ts", + "path": "x-pack/plugins/entity_manager/server/plugin.ts", "deprecated": false, "trackAdoption": false, "children": [], @@ -625,7 +625,7 @@ "tags": [], "label": "EntityManagerServerPluginStart", "description": [], - "path": "x-pack/plugins/observability_solution/entity_manager/server/plugin.ts", + "path": "x-pack/plugins/entity_manager/server/plugin.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -649,7 +649,7 @@ "EntityClient", ">" ], - "path": "x-pack/plugins/observability_solution/entity_manager/server/plugin.ts", + "path": "x-pack/plugins/entity_manager/server/plugin.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -660,7 +660,7 @@ "tags": [], "label": "options", "description": [], - "path": "x-pack/plugins/observability_solution/entity_manager/server/plugin.ts", + "path": "x-pack/plugins/entity_manager/server/plugin.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -681,7 +681,7 @@ }, "" ], - "path": "x-pack/plugins/observability_solution/entity_manager/server/plugin.ts", + "path": "x-pack/plugins/entity_manager/server/plugin.ts", "deprecated": false, "trackAdoption": false } diff --git a/api_docs/entity_manager.mdx b/api_docs/entity_manager.mdx index 247eb727bb5ab..e109d16be264b 100644 --- a/api_docs/entity_manager.mdx +++ b/api_docs/entity_manager.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/entityManager title: "entityManager" image: https://source.unsplash.com/400x175/?github description: API docs for the entityManager plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'entityManager'] --- import entityManagerObj from './entity_manager.devdocs.json'; diff --git a/api_docs/es_ui_shared.mdx b/api_docs/es_ui_shared.mdx index 269b8f45b676d..a409e799903ea 100644 --- a/api_docs/es_ui_shared.mdx +++ b/api_docs/es_ui_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/esUiShared title: "esUiShared" image: https://source.unsplash.com/400x175/?github description: API docs for the esUiShared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'esUiShared'] --- import esUiSharedObj from './es_ui_shared.devdocs.json'; diff --git a/api_docs/esql.devdocs.json b/api_docs/esql.devdocs.json index ada151ff891ef..772be100e7465 100644 --- a/api_docs/esql.devdocs.json +++ b/api_docs/esql.devdocs.json @@ -440,6 +440,22 @@ "path": "packages/kbn-text-based-editor/src/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "esql", + "id": "def-public.TextBasedLanguagesEditorProps.displayDocumentationAsFlyout", + "type": "CompoundType", + "tags": [], + "label": "displayDocumentationAsFlyout", + "description": [ + "adds a documentation icon in the footer which opens the inline docs as a flyout" + ], + "signature": [ + "boolean | undefined" + ], + "path": "packages/kbn-text-based-editor/src/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/esql.mdx b/api_docs/esql.mdx index 119acb6e5d70e..f75e7f1381f11 100644 --- a/api_docs/esql.mdx +++ b/api_docs/esql.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/esql title: "esql" image: https://source.unsplash.com/400x175/?github description: API docs for the esql plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'esql'] --- import esqlObj from './esql.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 24 | 0 | 9 | 0 | +| 25 | 0 | 9 | 0 | ## Client diff --git a/api_docs/esql_data_grid.mdx b/api_docs/esql_data_grid.mdx index 74339796bbdfe..c66e49807aa01 100644 --- a/api_docs/esql_data_grid.mdx +++ b/api_docs/esql_data_grid.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/esqlDataGrid title: "esqlDataGrid" image: https://source.unsplash.com/400x175/?github description: API docs for the esqlDataGrid plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'esqlDataGrid'] --- import esqlDataGridObj from './esql_data_grid.devdocs.json'; diff --git a/api_docs/event_annotation.mdx b/api_docs/event_annotation.mdx index d18d268a0388c..b484324656592 100644 --- a/api_docs/event_annotation.mdx +++ b/api_docs/event_annotation.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/eventAnnotation title: "eventAnnotation" image: https://source.unsplash.com/400x175/?github description: API docs for the eventAnnotation plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'eventAnnotation'] --- import eventAnnotationObj from './event_annotation.devdocs.json'; diff --git a/api_docs/event_annotation_listing.mdx b/api_docs/event_annotation_listing.mdx index d067c71442497..4a6c490d6efe4 100644 --- a/api_docs/event_annotation_listing.mdx +++ b/api_docs/event_annotation_listing.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/eventAnnotationListing title: "eventAnnotationListing" image: https://source.unsplash.com/400x175/?github description: API docs for the eventAnnotationListing plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'eventAnnotationListing'] --- import eventAnnotationListingObj from './event_annotation_listing.devdocs.json'; diff --git a/api_docs/event_log.mdx b/api_docs/event_log.mdx index aac4d166d85aa..5db1b1b20f6ea 100644 --- a/api_docs/event_log.mdx +++ b/api_docs/event_log.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/eventLog title: "eventLog" image: https://source.unsplash.com/400x175/?github description: API docs for the eventLog plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'eventLog'] --- import eventLogObj from './event_log.devdocs.json'; diff --git a/api_docs/exploratory_view.mdx b/api_docs/exploratory_view.mdx index d7a6fe407fc8e..524b1eb8e333d 100644 --- a/api_docs/exploratory_view.mdx +++ b/api_docs/exploratory_view.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/exploratoryView title: "exploratoryView" image: https://source.unsplash.com/400x175/?github description: API docs for the exploratoryView plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'exploratoryView'] --- import exploratoryViewObj from './exploratory_view.devdocs.json'; diff --git a/api_docs/expression_error.mdx b/api_docs/expression_error.mdx index 37aa871c2f9e1..a7da9bf16bf9a 100644 --- a/api_docs/expression_error.mdx +++ b/api_docs/expression_error.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionError title: "expressionError" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionError plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionError'] --- import expressionErrorObj from './expression_error.devdocs.json'; diff --git a/api_docs/expression_gauge.mdx b/api_docs/expression_gauge.mdx index e8746ac39cdf7..2154b22551577 100644 --- a/api_docs/expression_gauge.mdx +++ b/api_docs/expression_gauge.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionGauge title: "expressionGauge" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionGauge plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionGauge'] --- import expressionGaugeObj from './expression_gauge.devdocs.json'; diff --git a/api_docs/expression_heatmap.mdx b/api_docs/expression_heatmap.mdx index 375884c2d42b0..fdf92c283113e 100644 --- a/api_docs/expression_heatmap.mdx +++ b/api_docs/expression_heatmap.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionHeatmap title: "expressionHeatmap" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionHeatmap plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionHeatmap'] --- import expressionHeatmapObj from './expression_heatmap.devdocs.json'; diff --git a/api_docs/expression_image.mdx b/api_docs/expression_image.mdx index 308f5ebd36aa6..5cce64323dcbb 100644 --- a/api_docs/expression_image.mdx +++ b/api_docs/expression_image.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionImage title: "expressionImage" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionImage plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionImage'] --- import expressionImageObj from './expression_image.devdocs.json'; diff --git a/api_docs/expression_legacy_metric_vis.mdx b/api_docs/expression_legacy_metric_vis.mdx index b8f0d175507a2..701ebc4d10ccf 100644 --- a/api_docs/expression_legacy_metric_vis.mdx +++ b/api_docs/expression_legacy_metric_vis.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionLegacyMetricVis title: "expressionLegacyMetricVis" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionLegacyMetricVis plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionLegacyMetricVis'] --- import expressionLegacyMetricVisObj from './expression_legacy_metric_vis.devdocs.json'; diff --git a/api_docs/expression_metric.mdx b/api_docs/expression_metric.mdx index 62dc073388a35..fcbbf2b3f5b22 100644 --- a/api_docs/expression_metric.mdx +++ b/api_docs/expression_metric.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionMetric title: "expressionMetric" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionMetric plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionMetric'] --- import expressionMetricObj from './expression_metric.devdocs.json'; diff --git a/api_docs/expression_metric_vis.mdx b/api_docs/expression_metric_vis.mdx index e6811e7f1090c..294910a08a799 100644 --- a/api_docs/expression_metric_vis.mdx +++ b/api_docs/expression_metric_vis.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionMetricVis title: "expressionMetricVis" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionMetricVis plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionMetricVis'] --- import expressionMetricVisObj from './expression_metric_vis.devdocs.json'; diff --git a/api_docs/expression_partition_vis.mdx b/api_docs/expression_partition_vis.mdx index 50d72b87f8ead..cc6b86278fda5 100644 --- a/api_docs/expression_partition_vis.mdx +++ b/api_docs/expression_partition_vis.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionPartitionVis title: "expressionPartitionVis" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionPartitionVis plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionPartitionVis'] --- import expressionPartitionVisObj from './expression_partition_vis.devdocs.json'; diff --git a/api_docs/expression_repeat_image.mdx b/api_docs/expression_repeat_image.mdx index 2c28f87b7732e..6ce00a32bdf43 100644 --- a/api_docs/expression_repeat_image.mdx +++ b/api_docs/expression_repeat_image.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionRepeatImage title: "expressionRepeatImage" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionRepeatImage plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionRepeatImage'] --- import expressionRepeatImageObj from './expression_repeat_image.devdocs.json'; diff --git a/api_docs/expression_reveal_image.mdx b/api_docs/expression_reveal_image.mdx index 55d6f9e9a162f..d98aeb328e5fc 100644 --- a/api_docs/expression_reveal_image.mdx +++ b/api_docs/expression_reveal_image.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionRevealImage title: "expressionRevealImage" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionRevealImage plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionRevealImage'] --- import expressionRevealImageObj from './expression_reveal_image.devdocs.json'; diff --git a/api_docs/expression_shape.mdx b/api_docs/expression_shape.mdx index 47539dae74edd..f7278bdea7ee3 100644 --- a/api_docs/expression_shape.mdx +++ b/api_docs/expression_shape.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionShape title: "expressionShape" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionShape plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionShape'] --- import expressionShapeObj from './expression_shape.devdocs.json'; diff --git a/api_docs/expression_tagcloud.mdx b/api_docs/expression_tagcloud.mdx index d34aeab32c4cb..836651edcca37 100644 --- a/api_docs/expression_tagcloud.mdx +++ b/api_docs/expression_tagcloud.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionTagcloud title: "expressionTagcloud" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionTagcloud plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionTagcloud'] --- import expressionTagcloudObj from './expression_tagcloud.devdocs.json'; diff --git a/api_docs/expression_x_y.mdx b/api_docs/expression_x_y.mdx index f28a499fe5d78..264ad0acdf5e6 100644 --- a/api_docs/expression_x_y.mdx +++ b/api_docs/expression_x_y.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressionXY title: "expressionXY" image: https://source.unsplash.com/400x175/?github description: API docs for the expressionXY plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionXY'] --- import expressionXYObj from './expression_x_y.devdocs.json'; diff --git a/api_docs/expressions.mdx b/api_docs/expressions.mdx index 7aee414de7a1a..97380e4eaaf7a 100644 --- a/api_docs/expressions.mdx +++ b/api_docs/expressions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/expressions title: "expressions" image: https://source.unsplash.com/400x175/?github description: API docs for the expressions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressions'] --- import expressionsObj from './expressions.devdocs.json'; diff --git a/api_docs/features.mdx b/api_docs/features.mdx index 3d14fcc6470f7..da7b44f28d5d3 100644 --- a/api_docs/features.mdx +++ b/api_docs/features.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/features title: "features" image: https://source.unsplash.com/400x175/?github description: API docs for the features plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'features'] --- import featuresObj from './features.devdocs.json'; diff --git a/api_docs/field_formats.mdx b/api_docs/field_formats.mdx index 4bb84c6945011..ee205e3f7e95a 100644 --- a/api_docs/field_formats.mdx +++ b/api_docs/field_formats.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/fieldFormats title: "fieldFormats" image: https://source.unsplash.com/400x175/?github description: API docs for the fieldFormats plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fieldFormats'] --- import fieldFormatsObj from './field_formats.devdocs.json'; diff --git a/api_docs/fields_metadata.mdx b/api_docs/fields_metadata.mdx index 5d4f719e6a827..7eb78ee43f370 100644 --- a/api_docs/fields_metadata.mdx +++ b/api_docs/fields_metadata.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/fieldsMetadata title: "fieldsMetadata" image: https://source.unsplash.com/400x175/?github description: API docs for the fieldsMetadata plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fieldsMetadata'] --- import fieldsMetadataObj from './fields_metadata.devdocs.json'; diff --git a/api_docs/file_upload.mdx b/api_docs/file_upload.mdx index 9b5b4af29654e..7cf49129cc42c 100644 --- a/api_docs/file_upload.mdx +++ b/api_docs/file_upload.mdx @@ -8,14 +8,14 @@ slug: /kibana-dev-docs/api/fileUpload title: "fileUpload" image: https://source.unsplash.com/400x175/?github description: API docs for the fileUpload plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fileUpload'] --- import fileUploadObj from './file_upload.devdocs.json'; The file upload plugin contains components and services for uploading a file, analyzing its data, and then importing the data into an Elasticsearch index. Supported file types include CSV, TSV, newline-delimited JSON and GeoJSON. -Contact [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) for questions regarding this plugin. +Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) for questions regarding this plugin. **Code health stats** diff --git a/api_docs/files.mdx b/api_docs/files.mdx index e32929eb9ce2f..8f5682cd1a0f3 100644 --- a/api_docs/files.mdx +++ b/api_docs/files.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/files title: "files" image: https://source.unsplash.com/400x175/?github description: API docs for the files plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'files'] --- import filesObj from './files.devdocs.json'; diff --git a/api_docs/files_management.mdx b/api_docs/files_management.mdx index c9177103781b2..efafa88ba20fd 100644 --- a/api_docs/files_management.mdx +++ b/api_docs/files_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/filesManagement title: "filesManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the filesManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'filesManagement'] --- import filesManagementObj from './files_management.devdocs.json'; diff --git a/api_docs/fleet.devdocs.json b/api_docs/fleet.devdocs.json index 75ea32fc11c90..0e40a7c831668 100644 --- a/api_docs/fleet.devdocs.json +++ b/api_docs/fleet.devdocs.json @@ -1508,42 +1508,6 @@ "plugin": "cloudDefend", "path": "x-pack/plugins/cloud_defend/server/lib/telemetry/collectors/installation_stats_collector.ts" }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/public/management/pages/endpoint_hosts/view/index.tsx" @@ -1697,7 +1661,7 @@ "label": "elasticsearch", "description": [], "signature": [ - "{ privileges?: { cluster?: string[] | undefined; } | undefined; } | undefined" + "{ [key: string]: any; privileges?: { cluster?: string[] | undefined; } | undefined; } | undefined" ], "path": "x-pack/plugins/fleet/common/types/models/package_policy.ts", "deprecated": false, @@ -2950,7 +2914,7 @@ "section": "def-common.PackagePolicyConfigRecord", "text": "PackagePolicyConfigRecord" }, - " | undefined; elasticsearch?: { privileges?: { cluster?: string[] | undefined; } | undefined; } | undefined; overrides?: { inputs?: { [key: string]: any; } | undefined; } | null | undefined; }" + " | undefined; elasticsearch?: { [key: string]: any; privileges?: { cluster?: string[] | undefined; } | undefined; } | undefined; overrides?: { inputs?: { [key: string]: any; } | undefined; } | null | undefined; }" ], "path": "x-pack/plugins/fleet/public/types/ui_extensions.ts", "deprecated": false, @@ -22069,7 +22033,7 @@ "label": "data_stream", "description": [], "signature": [ - "{ dataset: string; type: string; }" + "{ dataset: string; type?: string | undefined; }" ], "path": "x-pack/plugins/fleet/common/types/models/agent_policy.ts", "deprecated": false, @@ -23839,42 +23803,6 @@ "plugin": "cloudDefend", "path": "x-pack/plugins/cloud_defend/server/lib/telemetry/collectors/installation_stats_collector.ts" }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, - { - "plugin": "osquery", - "path": "x-pack/plugins/osquery/public/fleet_integration/osquery_managed_policy_create_import_extension.tsx" - }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/public/management/pages/endpoint_hosts/view/index.tsx" @@ -24028,7 +23956,7 @@ "label": "elasticsearch", "description": [], "signature": [ - "{ privileges?: { cluster?: string[] | undefined; } | undefined; } | undefined" + "{ [key: string]: any; privileges?: { cluster?: string[] | undefined; } | undefined; } | undefined" ], "path": "x-pack/plugins/fleet/common/types/models/package_policy.ts", "deprecated": false, diff --git a/api_docs/fleet.mdx b/api_docs/fleet.mdx index 46947a661ce66..1e0adcd6a15d5 100644 --- a/api_docs/fleet.mdx +++ b/api_docs/fleet.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/fleet title: "fleet" image: https://source.unsplash.com/400x175/?github description: API docs for the fleet plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fleet'] --- import fleetObj from './fleet.devdocs.json'; diff --git a/api_docs/global_search.mdx b/api_docs/global_search.mdx index 9ec721584a40e..992642bd23bbe 100644 --- a/api_docs/global_search.mdx +++ b/api_docs/global_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/globalSearch title: "globalSearch" image: https://source.unsplash.com/400x175/?github description: API docs for the globalSearch plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'globalSearch'] --- import globalSearchObj from './global_search.devdocs.json'; diff --git a/api_docs/guided_onboarding.mdx b/api_docs/guided_onboarding.mdx index fa612c8fb0153..50711b8b747b5 100644 --- a/api_docs/guided_onboarding.mdx +++ b/api_docs/guided_onboarding.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/guidedOnboarding title: "guidedOnboarding" image: https://source.unsplash.com/400x175/?github description: API docs for the guidedOnboarding plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'guidedOnboarding'] --- import guidedOnboardingObj from './guided_onboarding.devdocs.json'; diff --git a/api_docs/home.mdx b/api_docs/home.mdx index fcca7ce317b81..6bf43edb4c9b2 100644 --- a/api_docs/home.mdx +++ b/api_docs/home.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/home title: "home" image: https://source.unsplash.com/400x175/?github description: API docs for the home plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'home'] --- import homeObj from './home.devdocs.json'; diff --git a/api_docs/image_embeddable.mdx b/api_docs/image_embeddable.mdx index 748320ecfc75f..935963ab7cc88 100644 --- a/api_docs/image_embeddable.mdx +++ b/api_docs/image_embeddable.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/imageEmbeddable title: "imageEmbeddable" image: https://source.unsplash.com/400x175/?github description: API docs for the imageEmbeddable plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'imageEmbeddable'] --- import imageEmbeddableObj from './image_embeddable.devdocs.json'; diff --git a/api_docs/index_lifecycle_management.mdx b/api_docs/index_lifecycle_management.mdx index 1e4fb2a322ecd..f92262869703a 100644 --- a/api_docs/index_lifecycle_management.mdx +++ b/api_docs/index_lifecycle_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/indexLifecycleManagement title: "indexLifecycleManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the indexLifecycleManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'indexLifecycleManagement'] --- import indexLifecycleManagementObj from './index_lifecycle_management.devdocs.json'; diff --git a/api_docs/index_management.devdocs.json b/api_docs/index_management.devdocs.json index 0e6c5e0f704ef..d7125c7bcee9d 100644 --- a/api_docs/index_management.devdocs.json +++ b/api_docs/index_management.devdocs.json @@ -1168,7 +1168,7 @@ "signature": [ "(field: string) => { size: string; unit: string; }" ], - "path": "x-pack/plugins/index_management/common/lib/data_stream_serialization.ts", + "path": "x-pack/plugins/index_management/common/lib/data_stream_utils.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -1182,7 +1182,7 @@ "signature": [ "string" ], - "path": "x-pack/plugins/index_management/common/lib/data_stream_serialization.ts", + "path": "x-pack/plugins/index_management/common/lib/data_stream_utils.ts", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -1831,6 +1831,48 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "indexManagement", + "id": "def-common.DataStream.meteringStorageSizeBytes", + "type": "number", + "tags": [], + "label": "meteringStorageSizeBytes", + "description": [], + "signature": [ + "number | undefined" + ], + "path": "x-pack/plugins/index_management/common/types/data_streams.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.DataStream.meteringStorageSize", + "type": "string", + "tags": [], + "label": "meteringStorageSize", + "description": [], + "signature": [ + "string | undefined" + ], + "path": "x-pack/plugins/index_management/common/types/data_streams.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.DataStream.meteringDocsCount", + "type": "number", + "tags": [], + "label": "meteringDocsCount", + "description": [], + "signature": [ + "number | undefined" + ], + "path": "x-pack/plugins/index_management/common/types/data_streams.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "indexManagement", "id": "def-common.DataStream._meta", @@ -2024,6 +2066,34 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "indexManagement", + "id": "def-common.EnhancedDataStreamFromEs.metering_size_in_bytes", + "type": "number", + "tags": [], + "label": "metering_size_in_bytes", + "description": [], + "signature": [ + "number | undefined" + ], + "path": "x-pack/plugins/index_management/common/types/data_streams.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.EnhancedDataStreamFromEs.metering_doc_count", + "type": "number", + "tags": [], + "label": "metering_doc_count", + "description": [], + "signature": [ + "number | undefined" + ], + "path": "x-pack/plugins/index_management/common/types/data_streams.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "indexManagement", "id": "def-common.EnhancedDataStreamFromEs.indices", diff --git a/api_docs/index_management.mdx b/api_docs/index_management.mdx index aab6c815de772..b766169c62f6c 100644 --- a/api_docs/index_management.mdx +++ b/api_docs/index_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/indexManagement title: "indexManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the indexManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'indexManagement'] --- import indexManagementObj from './index_management.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kiban | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 238 | 0 | 233 | 1 | +| 243 | 0 | 238 | 1 | ## Client diff --git a/api_docs/inference.devdocs.json b/api_docs/inference.devdocs.json index 5c522fdaadfec..4fbbd82c175f9 100644 --- a/api_docs/inference.devdocs.json +++ b/api_docs/inference.devdocs.json @@ -74,7 +74,9 @@ "section": "def-common.Message", "text": "Message" }, - "[]; } & TToolOptions) => ", + "[]; functionCalling?: ", + "FunctionCallingMode", + " | undefined; } & TToolOptions) => ", "ChatCompletionResponse", "" ], @@ -99,7 +101,9 @@ "section": "def-common.Message", "text": "Message" }, - "[]; } & TToolOptions" + "[]; functionCalling?: ", + "FunctionCallingMode", + " | undefined; } & TToolOptions" ], "path": "x-pack/plugins/inference/common/chat_complete/index.ts", "deprecated": false, @@ -123,7 +127,9 @@ "section": "def-common.Message", "text": "Message" }, - "[] | undefined; }) => ", + "[] | undefined; functionCalling?: ", + "FunctionCallingMode", + " | undefined; }) => ", "Observable", "<", "OutputEvent", @@ -166,7 +172,9 @@ "section": "def-common.Message", "text": "Message" }, - "[] | undefined; }" + "[] | undefined; functionCalling?: ", + "FunctionCallingMode", + " | undefined; }" ], "path": "x-pack/plugins/inference/common/output/index.ts", "deprecated": false, @@ -208,35 +216,15 @@ "label": "naturalLanguageToEsql", "description": [], "signature": [ - "({\n client,\n connectorId,\n tools,\n toolChoice,\n logger,\n ...rest\n}: { client: Pick<", - { - "pluginId": "inference", - "scope": "server", - "docId": "kibInferencePluginApi", - "section": "def-server.InferenceClient", - "text": "InferenceClient" - }, - ", \"output\" | \"chatComplete\">; connectorId: string; logger: Pick<", - { - "pluginId": "@kbn/logging", - "scope": "common", - "docId": "kibKbnLoggingPluginApi", - "section": "def-common.Logger", - "text": "Logger" - }, - ", \"debug\">; } & TToolOptions & ({ input: string; } | { messages: ", - { - "pluginId": "inference", - "scope": "common", - "docId": "kibInferencePluginApi", - "section": "def-common.Message", - "text": "Message" - }, - "[]; })) => ", + "({\n client,\n connectorId,\n tools,\n toolChoice,\n logger,\n functionCalling,\n ...rest\n}: ", + "NlToEsqlTaskParams", + ") => ", "Observable", - ">" + "<", + "NlToEsqlTaskEvent", + ">" ], - "path": "x-pack/plugins/inference/server/tasks/nl_to_esql/index.ts", + "path": "x-pack/plugins/inference/server/tasks/nl_to_esql/task.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -245,36 +233,13 @@ "id": "def-server.naturalLanguageToEsql.$1", "type": "CompoundType", "tags": [], - "label": "{\n client,\n connectorId,\n tools,\n toolChoice,\n logger,\n ...rest\n}", + "label": "{\n client,\n connectorId,\n tools,\n toolChoice,\n logger,\n functionCalling,\n ...rest\n}", "description": [], "signature": [ - "{ client: Pick<", - { - "pluginId": "inference", - "scope": "server", - "docId": "kibInferencePluginApi", - "section": "def-server.InferenceClient", - "text": "InferenceClient" - }, - ", \"output\" | \"chatComplete\">; connectorId: string; logger: Pick<", - { - "pluginId": "@kbn/logging", - "scope": "common", - "docId": "kibKbnLoggingPluginApi", - "section": "def-common.Logger", - "text": "Logger" - }, - ", \"debug\">; } & TToolOptions & ({ input: string; } | { messages: ", - { - "pluginId": "inference", - "scope": "common", - "docId": "kibInferencePluginApi", - "section": "def-common.Message", - "text": "Message" - }, - "[]; })" + "NlToEsqlTaskParams", + "" ], - "path": "x-pack/plugins/inference/server/tasks/nl_to_esql/index.ts", + "path": "x-pack/plugins/inference/server/tasks/nl_to_esql/task.ts", "deprecated": false, "trackAdoption": false, "isRequired": true @@ -381,7 +346,9 @@ "section": "def-common.Message", "text": "Message" }, - "[]; } & TToolOptions) => ", + "[]; functionCalling?: ", + "FunctionCallingMode", + " | undefined; } & TToolOptions) => ", "ChatCompletionResponse", "" ], @@ -406,7 +373,9 @@ "section": "def-common.Message", "text": "Message" }, - "[]; } & TToolOptions" + "[]; functionCalling?: ", + "FunctionCallingMode", + " | undefined; } & TToolOptions" ], "path": "x-pack/plugins/inference/common/chat_complete/index.ts", "deprecated": false, @@ -432,7 +401,9 @@ "section": "def-common.Message", "text": "Message" }, - "[] | undefined; }) => ", + "[] | undefined; functionCalling?: ", + "FunctionCallingMode", + " | undefined; }) => ", "Observable", "<", "OutputEvent", @@ -475,7 +446,9 @@ "section": "def-common.Message", "text": "Message" }, - "[] | undefined; }" + "[] | undefined; functionCalling?: ", + "FunctionCallingMode", + " | undefined; }" ], "path": "x-pack/plugins/inference/common/output/index.ts", "deprecated": false, diff --git a/api_docs/inference.mdx b/api_docs/inference.mdx index e32414ade4bc9..6432598095d44 100644 --- a/api_docs/inference.mdx +++ b/api_docs/inference.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/inference title: "inference" image: https://source.unsplash.com/400x175/?github description: API docs for the inference plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'inference'] --- import inferenceObj from './inference.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/appex-ai-infra](https://github.com/orgs/elastic/teams/appex-ai | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 49 | 0 | 44 | 12 | +| 49 | 0 | 44 | 15 | ## Client diff --git a/api_docs/infra.mdx b/api_docs/infra.mdx index 133bdddf8fd65..c373aa27bba59 100644 --- a/api_docs/infra.mdx +++ b/api_docs/infra.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/infra title: "infra" image: https://source.unsplash.com/400x175/?github description: API docs for the infra plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'infra'] --- import infraObj from './infra.devdocs.json'; diff --git a/api_docs/ingest_pipelines.mdx b/api_docs/ingest_pipelines.mdx index a39bbf1c195a9..c3c796f59da66 100644 --- a/api_docs/ingest_pipelines.mdx +++ b/api_docs/ingest_pipelines.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/ingestPipelines title: "ingestPipelines" image: https://source.unsplash.com/400x175/?github description: API docs for the ingestPipelines plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ingestPipelines'] --- import ingestPipelinesObj from './ingest_pipelines.devdocs.json'; diff --git a/api_docs/inspector.mdx b/api_docs/inspector.mdx index 12c88f74c115c..b688ffcc4287c 100644 --- a/api_docs/inspector.mdx +++ b/api_docs/inspector.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/inspector title: "inspector" image: https://source.unsplash.com/400x175/?github description: API docs for the inspector plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'inspector'] --- import inspectorObj from './inspector.devdocs.json'; diff --git a/api_docs/integration_assistant.devdocs.json b/api_docs/integration_assistant.devdocs.json index 6955e1caf5cac..4592eea7603b6 100644 --- a/api_docs/integration_assistant.devdocs.json +++ b/api_docs/integration_assistant.devdocs.json @@ -161,7 +161,39 @@ "common": { "classes": [], "functions": [], - "interfaces": [], + "interfaces": [ + { + "parentPluginId": "integrationAssistant", + "id": "def-common.ESProcessorItem", + "type": "Interface", + "tags": [], + "label": "ESProcessorItem", + "description": [ + "\nProcessor item for the Elasticsearch processor." + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/processor_attributes.gen.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "integrationAssistant", + "id": "def-common.ESProcessorItem.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[key: string]: ESProcessorOptions", + "description": [], + "signature": [ + "[key: string]: ", + "ESProcessorOptions" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/processor_attributes.gen.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], "enums": [], "misc": [ { @@ -186,7 +218,7 @@ "signature": [ "{ connectorId: string; packageName: string; dataStreamName: string; logSamples: string[]; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -209,7 +241,7 @@ }, "[] | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -240,7 +272,7 @@ }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/build_integration/build_integration.ts", + "path": "x-pack/plugins/integration_assistant/common/api/build_integration/build_integration.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -283,7 +315,7 @@ }, "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -314,7 +346,7 @@ }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -357,7 +389,7 @@ }, "[] | undefined; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.ts", + "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -372,7 +404,7 @@ "signature": [ "{ results: { docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.ts", + "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -405,7 +437,7 @@ }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -422,7 +454,7 @@ "signature": [ "Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -457,7 +489,7 @@ }, "[] | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -488,26 +520,7 @@ }, "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "integrationAssistant", - "id": "def-common.ESProcessorItem", - "type": "Type", - "tags": [], - "label": "ESProcessorItem", - "description": [ - "\nProcessor item for the Elasticsearch processor." - ], - "signature": [ - "{ [x: string]: ", - "ESProcessorOptions", - "; }" - ], - "path": "x-pack/plugins/integration_assistant/common/api/model/processor_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -524,7 +537,7 @@ "signature": [ "\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\"" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -557,7 +570,7 @@ }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -604,6 +617,23 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.LangSmithOptions", + "type": "Type", + "tags": [], + "label": "LangSmithOptions", + "description": [ + "\nThe LangSmith options object." + ], + "signature": [ + "{ apiKey: string; projectName: string; }" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "integrationAssistant", "id": "def-common.Pipeline", @@ -632,7 +662,7 @@ }, "[] | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -690,7 +720,7 @@ }, "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -721,7 +751,7 @@ }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -738,7 +768,24 @@ "signature": [ "{ name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.SamplesFormatName", + "type": "Type", + "tags": [], + "label": "SamplesFormatName", + "description": [ + "\nThe name of the log samples format." + ], + "signature": [ + "\"ndjson\" | \"json\" | \"csv\" | \"structured\" | \"unstructured\" | \"unsupported\"" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -755,7 +802,7 @@ "signature": [ "Zod.ZodObject<{ packageName: Zod.ZodString; dataStreamName: Zod.ZodString; logSamples: Zod.ZodArray; connectorId: Zod.ZodString; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; dataStreamName: string; logSamples: string[]; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }, { connectorId: string; packageName: string; dataStreamName: string; logSamples: string[]; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -768,7 +815,7 @@ "label": "AnalyzeLogsResponse", "description": [], "signature": [ - "Zod.ZodObject<{ results: Zod.ZodObject<{ samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; parsedSamples: Zod.ZodArray; }, \"strip\", Zod.ZodTypeAny, { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }, { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }>; additionalProcessors: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { results: { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }; additionalProcessors?: ", + "ESProcessorItemInput", + ">, \"many\">>; results: Zod.ZodObject<{ samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; parsedSamples: Zod.ZodArray; }, \"strip\", Zod.ZodTypeAny, { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }, { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }>; }, \"strip\", Zod.ZodTypeAny, { results: { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }; additionalProcessors?: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -793,16 +834,10 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { results: { samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; parsedSamples: string[]; }; additionalProcessors?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/analyze_logs/analyze_logs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -824,13 +859,7 @@ "text": "ESProcessorItem" }, ", Zod.ZodTypeDef, ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", ">, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -864,21 +887,9 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", @@ -896,6 +907,10 @@ "text": "ESProcessorItem" }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }>, \"many\">; logo: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -911,7 +926,11 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }>, \"many\">; logo: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }, { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { integration: { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -927,7 +946,26 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }, { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }, { integration: { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/build_integration/build_integration.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.CategorizationRequestBody", + "type": "Object", + "tags": [], + "label": "CategorizationRequestBody", + "description": [], + "signature": [ + "Zod.ZodObject<{ packageName: Zod.ZodString; dataStreamName: Zod.ZodString; rawSamples: Zod.ZodArray; currentPipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { integration: { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + ", Zod.ZodTypeDef, ", + "ESProcessorItemInput", + ">, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -959,7 +1001,11 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }, { integration: { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "[] | undefined; }, { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }>; connectorId: Zod.ZodString; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -975,22 +1021,26 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }>" + "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/build_integration/build_integration.ts", + "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "integrationAssistant", - "id": "def-common.CategorizationRequestBody", + "id": "def-common.CategorizationResponse", "type": "Object", "tags": [], - "label": "CategorizationRequestBody", + "label": "CategorizationResponse", "description": [], "signature": [ - "Zod.ZodObject<{ packageName: Zod.ZodString; dataStreamName: Zod.ZodString; rawSamples: Zod.ZodArray; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; currentPipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -1039,22 +1077,10 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }>; connectorId: Zod.ZodString; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", + "ESProcessorItemInput", + "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1070,7 +1096,11 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>; }, \"strip\", Zod.ZodTypeAny, { results: { pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1086,22 +1116,26 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }>" + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }, { results: { pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "integrationAssistant", - "id": "def-common.CategorizationResponse", + "id": "def-common.CheckPipelineRequestBody", "type": "Object", "tags": [], - "label": "CategorizationResponse", + "label": "CheckPipelineRequestBody", "description": [], "signature": [ - "Zod.ZodObject<{ results: Zod.ZodObject<{ docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -1150,22 +1172,10 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { pipeline: { processors: ", + "ESProcessorItemInput", + "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1181,7 +1191,41 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { pipeline: { processors: ", + "[] | undefined; }; }, { rawSamples: string[]; pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; }>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.CheckPipelineResponse", + "type": "Object", + "tags": [], + "label": "CheckPipelineResponse", + "description": [], + "signature": [ + "Zod.ZodObject<{ results: Zod.ZodObject<{ docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>; }, \"strip\", Zod.ZodTypeAny, { results: { docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }, { results: { docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.DataStream", + "type": "Object", + "tags": [], + "label": "DataStream", + "description": [], + "signature": [ + "Zod.ZodObject<{ name: Zod.ZodString; title: Zod.ZodString; description: Zod.ZodString; inputTypes: Zod.ZodArray, \"many\">; rawSamples: Zod.ZodArray; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional[]; }>; }, \"strip\", Zod.ZodTypeAny, { results: { pipeline: { processors: ", + ", Zod.ZodTypeDef, ", + "ESProcessorItemInput", + ">, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1213,7 +1261,11 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }, { results: { pipeline: { processors: ", + "[] | undefined; }, { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1229,246 +1281,13 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }>" + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/categorization/categorization_route.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "integrationAssistant", - "id": "def-common.CheckPipelineRequestBody", - "type": "Object", - "tags": [], - "label": "CheckPipelineRequestBody", - "description": [], - "signature": [ - "Zod.ZodObject<{ rawSamples: Zod.ZodArray; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { rawSamples: string[]; pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }; }, { rawSamples: string[]; pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }; }>" - ], - "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "integrationAssistant", - "id": "def-common.CheckPipelineResponse", - "type": "Object", - "tags": [], - "label": "CheckPipelineResponse", - "description": [], - "signature": [ - "Zod.ZodObject<{ results: Zod.ZodObject<{ docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>; }, \"strip\", Zod.ZodTypeAny, { results: { docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }, { results: { docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }>" - ], - "path": "x-pack/plugins/integration_assistant/common/api/check_pipeline/check_pipeline.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "integrationAssistant", - "id": "def-common.DataStream", - "type": "Object", - "tags": [], - "label": "DataStream", - "description": [], - "signature": [ - "Zod.ZodObject<{ name: Zod.ZodString; title: Zod.ZodString; description: Zod.ZodString; inputTypes: Zod.ZodArray, \"many\">; rawSamples: Zod.ZodArray; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }>" - ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -1483,115 +1302,20 @@ "signature": [ "Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "integrationAssistant", - "id": "def-common.EcsMappingRequestBody", - "type": "Object", - "tags": [], - "label": "EcsMappingRequestBody", - "description": [], - "signature": [ - "Zod.ZodObject<{ packageName: Zod.ZodString; dataStreamName: Zod.ZodString; rawSamples: Zod.ZodArray; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; mapping: Zod.ZodOptional, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>>; additionalProcessors: Zod.ZodOptional, \"many\">>; connectorId: Zod.ZodString; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; mapping?: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\"> | undefined; additionalProcessors?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; mapping?: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\"> | undefined; additionalProcessors?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }>" - ], - "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "integrationAssistant", - "id": "def-common.EcsMappingResponse", - "type": "Object", - "tags": [], - "label": "EcsMappingResponse", - "description": [], - "signature": [ - "Zod.ZodObject<{ results: Zod.ZodObject<{ mapping: Zod.ZodObject<{}, \"passthrough\", Zod.ZodTypeAny, Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }, { processors: ", + { + "parentPluginId": "integrationAssistant", + "id": "def-common.EcsMappingRequestBody", + "type": "Object", + "tags": [], + "label": "EcsMappingRequestBody", + "description": [], + "signature": [ + "Zod.ZodObject<{ packageName: Zod.ZodString; dataStreamName: Zod.ZodString; rawSamples: Zod.ZodArray; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; mapping: Zod.ZodOptional, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>>; additionalProcessors: Zod.ZodOptional, \"many\">>; connectorId: Zod.ZodString; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; mapping?: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\"> | undefined; additionalProcessors?: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1607,7 +1333,24 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { pipeline: { processors: ", + "[] | undefined; }, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; mapping?: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\"> | undefined; additionalProcessors?: ", + "ESProcessorItemInput", + "[] | undefined; }>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.EcsMappingResponse", + "type": "Object", + "tags": [], + "label": "EcsMappingResponse", + "description": [], + "signature": [ + "Zod.ZodObject<{ results: Zod.ZodObject<{ mapping: Zod.ZodObject<{}, \"passthrough\", Zod.ZodTypeAny, Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>; pipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1639,7 +1386,11 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }>; }, \"strip\", Zod.ZodTypeAny, { results: { pipeline: { processors: ", + "[] | undefined; }, { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1655,7 +1406,11 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }; }, { results: { pipeline: { processors: ", + "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }, { pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", + "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }>; }, \"strip\", Zod.ZodTypeAny, { results: { pipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -1671,9 +1426,13 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, + "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }; }, { results: { pipeline: { processors: ", + "ESProcessorItemInput", + "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", + "ESProcessorItemInput", "[] | undefined; }; mapping: {} & { [k: string]: unknown; }; }; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/ecs/ecs_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -1695,16 +1454,10 @@ "text": "ESProcessorItem" }, ", Zod.ZodTypeDef, ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", ">" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/processor_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/processor_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -1719,7 +1472,7 @@ "signature": [ "Zod.ZodEnum<[\"aws-cloudwatch\", \"aws-s3\", \"azure-blob-storage\", \"azure-eventhub\", \"cel\", \"cloudfoundry\", \"filestream\", \"gcp-pubsub\", \"gcs\", \"http_endpoint\", \"journald\", \"kafka\", \"tcp\", \"udp\"]>" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -1741,13 +1494,7 @@ "text": "ESProcessorItem" }, ", Zod.ZodTypeDef, ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", ">, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -1781,21 +1522,9 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", @@ -1813,21 +1542,9 @@ "text": "ESProcessorItem" }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }, { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }>, \"many\">; logo: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", { "pluginId": "integrationAssistant", @@ -1845,24 +1562,27 @@ "text": "ESProcessorItem" }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }, { name: string; title: string; description: string; dataStreams: { name: string; title: string; description: string; inputTypes: (\"kafka\" | \"aws-cloudwatch\" | \"aws-s3\" | \"azure-blob-storage\" | \"azure-eventhub\" | \"cel\" | \"cloudfoundry\" | \"filestream\" | \"gcp-pubsub\" | \"gcs\" | \"http_endpoint\" | \"journald\" | \"tcp\" | \"udp\")[]; rawSamples: string[]; pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.LangSmithOptions", + "type": "Object", + "tags": [], + "label": "LangSmithOptions", + "description": [], + "signature": [ + "Zod.ZodObject<{ projectName: Zod.ZodString; apiKey: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { apiKey: string; projectName: string; }, { apiKey: string; projectName: string; }>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -1884,13 +1604,7 @@ "text": "ESProcessorItem" }, ", Zod.ZodTypeDef, ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", ">, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -1924,24 +1632,12 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -1954,7 +1650,7 @@ "label": "RelatedRequestBody", "description": [], "signature": [ - "Zod.ZodObject<{ packageName: Zod.ZodString; dataStreamName: Zod.ZodString; rawSamples: Zod.ZodArray; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; currentPipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray; currentPipeline: Zod.ZodObject<{ name: Zod.ZodOptional; description: Zod.ZodOptional; version: Zod.ZodOptional; processors: Zod.ZodArray, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -2003,22 +1687,10 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, - "[] | undefined; }>; connectorId: Zod.ZodString; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", + "ESProcessorItemInput", + "[] | undefined; }>; connectorId: Zod.ZodString; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>; langSmithOptions: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -2035,24 +1707,12 @@ "text": "ESProcessorItem" }, "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }, { connectorId: string; packageName: string; rawSamples: string[]; samplesFormat: { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; dataStreamName: string; currentPipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }; langSmithOptions?: { apiKey: string; projectName: string; } | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -2074,13 +1734,7 @@ "text": "ESProcessorItem" }, ", Zod.ZodTypeDef, ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", ">, \"many\">; on_failure: Zod.ZodOptional, \"many\">>; }, \"strip\", Zod.ZodTypeAny, { processors: ", { "pluginId": "integrationAssistant", @@ -2114,21 +1762,9 @@ "text": "ESProcessorItem" }, "[] | undefined; }, { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { pipeline: { processors: ", { "pluginId": "integrationAssistant", @@ -2146,21 +1782,9 @@ "text": "ESProcessorItem" }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>; }, \"strip\", Zod.ZodTypeAny, { results: { pipeline: { processors: ", { "pluginId": "integrationAssistant", @@ -2178,24 +1802,12 @@ "text": "ESProcessorItem" }, "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }, { results: { pipeline: { processors: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[]; version?: number | undefined; name?: string | undefined; description?: string | undefined; on_failure?: ", - { - "pluginId": "integrationAssistant", - "scope": "common", - "docId": "kibIntegrationAssistantPluginApi", - "section": "def-common.ESProcessorItem", - "text": "ESProcessorItem" - }, + "ESProcessorItemInput", "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.ts", + "path": "x-pack/plugins/integration_assistant/common/api/related/related_route.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -2210,7 +1822,22 @@ "signature": [ "Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"unsupported\" | \"json\" | \"ndjson\" | \"csv\" | \"structured\" | \"unstructured\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>" ], - "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.SamplesFormatName", + "type": "Object", + "tags": [], + "label": "SamplesFormatName", + "description": [], + "signature": [ + "Zod.ZodEnum<[\"ndjson\", \"json\", \"csv\", \"structured\", \"unstructured\", \"unsupported\"]>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.gen.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false diff --git a/api_docs/integration_assistant.mdx b/api_docs/integration_assistant.mdx index 549932c21dea2..e1a02841a440f 100644 --- a/api_docs/integration_assistant.mdx +++ b/api_docs/integration_assistant.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/integrationAssistant title: "integrationAssistant" image: https://source.unsplash.com/400x175/?github description: API docs for the integrationAssistant plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'integrationAssistant'] --- import integrationAssistantObj from './integration_assistant.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/security-scalability](https://github.com/orgs/elastic/teams/se | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 54 | 0 | 46 | 3 | +| 59 | 0 | 49 | 4 | ## Client @@ -44,6 +44,9 @@ Contact [@elastic/security-scalability](https://github.com/orgs/elastic/teams/se ### Objects +### Interfaces + + ### Consts, variables and types diff --git a/api_docs/interactive_setup.mdx b/api_docs/interactive_setup.mdx index dbe988497a1c5..9d7903243a206 100644 --- a/api_docs/interactive_setup.mdx +++ b/api_docs/interactive_setup.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/interactiveSetup title: "interactiveSetup" image: https://source.unsplash.com/400x175/?github description: API docs for the interactiveSetup plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'interactiveSetup'] --- import interactiveSetupObj from './interactive_setup.devdocs.json'; diff --git a/api_docs/inventory.devdocs.json b/api_docs/inventory.devdocs.json index 26f3f2490f5b6..d58433a956b01 100644 --- a/api_docs/inventory.devdocs.json +++ b/api_docs/inventory.devdocs.json @@ -50,7 +50,7 @@ "label": "InventoryServerRouteRepository", "description": [], "signature": [ - "{ \"GET /internal/inventory/entity_types\": ", + "{ \"GET /internal/inventory/entities\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -58,10 +58,28 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /internal/inventory/entity_types\", undefined, ", + "<\"GET /internal/inventory/entities\", ", + "TypeC", + "<{ query: ", + "IntersectionC", + "<[", + "TypeC", + "<{ sortField: ", + "StringC", + "; sortDirection: ", + "UnionC", + "<[", + "LiteralC", + "<\"asc\">, ", + "LiteralC", + "<\"desc\">]>; }>, ", + "PartialC", + "<{ entityTypes: ", + "Type", + "<(\"service\" | \"host\" | \"container\")[], string, unknown>; }>]>; }>, ", "InventoryRouteHandlerResources", - ", { definitions: ", - "EntityTypeDefinition", + ", { entities: ", + "LatestEntity", "[]; }, ", "InventoryRouteCreateOptions", ">; }" diff --git a/api_docs/inventory.mdx b/api_docs/inventory.mdx index 438359ff00cad..e00f0bd6b14ec 100644 --- a/api_docs/inventory.mdx +++ b/api_docs/inventory.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/inventory title: "inventory" image: https://source.unsplash.com/400x175/?github description: API docs for the inventory plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'inventory'] --- import inventoryObj from './inventory.devdocs.json'; diff --git a/api_docs/investigate.mdx b/api_docs/investigate.mdx index c3c540de2f7f3..18f1572b50ba8 100644 --- a/api_docs/investigate.mdx +++ b/api_docs/investigate.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/investigate title: "investigate" image: https://source.unsplash.com/400x175/?github description: API docs for the investigate plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'investigate'] --- import investigateObj from './investigate.devdocs.json'; diff --git a/api_docs/investigate_app.devdocs.json b/api_docs/investigate_app.devdocs.json index 089eb27f74985..4e3aa2a0d4482 100644 --- a/api_docs/investigate_app.devdocs.json +++ b/api_docs/investigate_app.devdocs.json @@ -50,7 +50,43 @@ "label": "InvestigateAppServerRouteRepository", "description": [], "signature": [ - "{ \"GET /api/observability/investigations/{investigationId}/items 2023-10-31\": ", + "{ \"GET /api/observability/investigations/_tags 2023-10-31\": ", + { + "pluginId": "@kbn/server-route-repository-utils", + "scope": "common", + "docId": "kibKbnServerRouteRepositoryUtilsPluginApi", + "section": "def-common.ServerRoute", + "text": "ServerRoute" + }, + "<\"GET /api/observability/investigations/_tags 2023-10-31\", Zod.ZodObject<{ query: Zod.ZodObject<{}, \"strip\", Zod.ZodTypeAny, {}, {}>; }, \"strip\", Zod.ZodTypeAny, { query: {}; }, { query: {}; }>, ", + "InvestigateAppRouteHandlerResources", + ", string[], ", + "InvestigateAppRouteCreateOptions", + ">; \"GET /api/observability/investigations/_stats 2023-10-31\": ", + { + "pluginId": "@kbn/server-route-repository-utils", + "scope": "common", + "docId": "kibKbnServerRouteRepositoryUtilsPluginApi", + "section": "def-common.ServerRoute", + "text": "ServerRoute" + }, + "<\"GET /api/observability/investigations/_stats 2023-10-31\", Zod.ZodObject<{ query: Zod.ZodObject<{}, \"strip\", Zod.ZodTypeAny, {}, {}>; }, \"strip\", Zod.ZodTypeAny, { query: {}; }, { query: {}; }>, ", + "InvestigateAppRouteHandlerResources", + ", { count: Partial>; total: number; }, ", + "InvestigateAppRouteCreateOptions", + ">; \"GET /api/observability/events 2023-10-31\": ", + { + "pluginId": "@kbn/server-route-repository-utils", + "scope": "common", + "docId": "kibKbnServerRouteRepositoryUtilsPluginApi", + "section": "def-common.ServerRoute", + "text": "ServerRoute" + }, + "<\"GET /api/observability/events 2023-10-31\", Zod.ZodObject<{ query: Zod.ZodOptional; rangeTo: Zod.ZodOptional; filter: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; }, { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; }>>; }, \"strip\", Zod.ZodTypeAny, { query?: { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; } | undefined; }, { query?: { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; } | undefined; }>, ", + "InvestigateAppRouteHandlerResources", + ", ({ id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; } & ({ eventType: \"annotation\"; annotationType?: string | undefined; } | { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }))[], ", + "InvestigateAppRouteCreateOptions", + ">; \"GET /api/observability/investigations/{investigationId}/items 2023-10-31\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -60,7 +96,7 @@ }, "<\"GET /api/observability/investigations/{investigationId}/items 2023-10-31\", Zod.ZodObject<{ path: Zod.ZodObject<{ investigationId: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { investigationId: string; }, { investigationId: string; }>; }, \"strip\", Zod.ZodTypeAny, { path: { investigationId: string; }; }, { path: { investigationId: string; }; }>, ", "InvestigateAppRouteHandlerResources", - ", ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[], ", + ", ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[], ", "InvestigateAppRouteCreateOptions", ">; \"PUT /api/observability/investigations/{investigationId}/items/{itemId} 2023-10-31\": ", { @@ -96,7 +132,7 @@ }, "<\"POST /api/observability/investigations/{investigationId}/items 2023-10-31\", Zod.ZodObject<{ path: Zod.ZodObject<{ investigationId: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { investigationId: string; }, { investigationId: string; }>; body: Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>; }, \"strip\", Zod.ZodTypeAny, { body: { params: Record; type: string; title: string; }; path: { investigationId: string; }; }, { body: { params: Record; type: string; title: string; }; path: { investigationId: string; }; }>, ", "InvestigateAppRouteHandlerResources", - ", { id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; }, ", + ", { id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; }, ", "InvestigateAppRouteCreateOptions", ">; \"DELETE /api/observability/investigations/{investigationId}/notes/{noteId} 2023-10-31\": ", { @@ -132,7 +168,7 @@ }, "<\"GET /api/observability/investigations/{investigationId}/notes 2023-10-31\", Zod.ZodObject<{ path: Zod.ZodObject<{ investigationId: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { investigationId: string; }, { investigationId: string; }>; }, \"strip\", Zod.ZodTypeAny, { path: { investigationId: string; }; }, { path: { investigationId: string; }; }>, ", "InvestigateAppRouteHandlerResources", - ", { id: string; createdBy: string; createdAt: number; content: string; }[], ", + ", { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[], ", "InvestigateAppRouteCreateOptions", ">; \"POST /api/observability/investigations/{investigationId}/notes 2023-10-31\": ", { @@ -144,7 +180,7 @@ }, "<\"POST /api/observability/investigations/{investigationId}/notes 2023-10-31\", Zod.ZodObject<{ path: Zod.ZodObject<{ investigationId: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { investigationId: string; }, { investigationId: string; }>; body: Zod.ZodObject<{ content: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { content: string; }, { content: string; }>; }, \"strip\", Zod.ZodTypeAny, { body: { content: string; }; path: { investigationId: string; }; }, { body: { content: string; }; path: { investigationId: string; }; }>, ", "InvestigateAppRouteHandlerResources", - ", { id: string; createdBy: string; createdAt: number; content: string; }, ", + ", { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }, ", "InvestigateAppRouteCreateOptions", ">; \"DELETE /api/observability/investigations/{investigationId} 2023-10-31\": ", { @@ -168,7 +204,7 @@ }, "<\"PUT /api/observability/investigations/{investigationId} 2023-10-31\", Zod.ZodObject<{ path: Zod.ZodObject<{ investigationId: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { investigationId: string; }, { investigationId: string; }>; body: Zod.ZodObject<{ title: Zod.ZodOptional; status: Zod.ZodOptional, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>>; params: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>>; tags: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { params?: { timeRange: { from: number; to: number; }; } | undefined; tags?: string[] | undefined; title?: string | undefined; status?: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\" | undefined; }, { params?: { timeRange: { from: number; to: number; }; } | undefined; tags?: string[] | undefined; title?: string | undefined; status?: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\" | undefined; }>; }, \"strip\", Zod.ZodTypeAny, { body: { params?: { timeRange: { from: number; to: number; }; } | undefined; tags?: string[] | undefined; title?: string | undefined; status?: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\" | undefined; }; path: { investigationId: string; }; }, { body: { params?: { timeRange: { from: number; to: number; }; } | undefined; tags?: string[] | undefined; title?: string | undefined; status?: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\" | undefined; }; path: { investigationId: string; }; }>, ", "InvestigateAppRouteHandlerResources", - ", { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, ", + ", { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, ", "InvestigateAppRouteCreateOptions", ">; \"GET /api/observability/investigations/{investigationId} 2023-10-31\": ", { @@ -180,7 +216,7 @@ }, "<\"GET /api/observability/investigations/{investigationId} 2023-10-31\", Zod.ZodObject<{ path: Zod.ZodObject<{ investigationId: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { investigationId: string; }, { investigationId: string; }>; }, \"strip\", Zod.ZodTypeAny, { path: { investigationId: string; }; }, { path: { investigationId: string; }; }>, ", "InvestigateAppRouteHandlerResources", - ", { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, ", + ", { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, ", "InvestigateAppRouteCreateOptions", ">; \"GET /api/observability/investigations 2023-10-31\": ", { @@ -190,9 +226,9 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /api/observability/investigations 2023-10-31\", Zod.ZodObject<{ query: Zod.ZodOptional; page: Zod.ZodOptional; perPage: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; }, { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; }>>; }, \"strip\", Zod.ZodTypeAny, { query?: { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; } | undefined; }, { query?: { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; } | undefined; }>, ", + "<\"GET /api/observability/investigations 2023-10-31\", Zod.ZodObject<{ query: Zod.ZodOptional; search: Zod.ZodOptional; filter: Zod.ZodOptional; page: Zod.ZodOptional; perPage: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; }, { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; }>>; }, \"strip\", Zod.ZodTypeAny, { query?: { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; } | undefined; }, { query?: { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; } | undefined; }>, ", "InvestigateAppRouteHandlerResources", - ", { page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }[]; perPage: number; total: number; }, ", + ", { page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }[]; perPage: number; total: number; }, ", "InvestigateAppRouteCreateOptions", ">; \"POST /api/observability/investigations 2023-10-31\": ", { @@ -204,7 +240,7 @@ }, "<\"POST /api/observability/investigations 2023-10-31\", Zod.ZodObject<{ body: Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; tags: Zod.ZodArray; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; }>; }, \"strip\", Zod.ZodTypeAny, { body: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; }; }, { body: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; }; }>, ", "InvestigateAppRouteHandlerResources", - ", { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, ", + ", { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, ", "InvestigateAppRouteCreateOptions", ">; }" ], diff --git a/api_docs/investigate_app.mdx b/api_docs/investigate_app.mdx index 800cd212dbdba..ba9a79b716dd7 100644 --- a/api_docs/investigate_app.mdx +++ b/api_docs/investigate_app.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/investigateApp title: "investigateApp" image: https://source.unsplash.com/400x175/?github description: API docs for the investigateApp plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'investigateApp'] --- import investigateAppObj from './investigate_app.devdocs.json'; diff --git a/api_docs/kbn_ace.mdx b/api_docs/kbn_ace.mdx index 8d38bd5aab9a8..21407e5401d3c 100644 --- a/api_docs/kbn_ace.mdx +++ b/api_docs/kbn_ace.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ace title: "@kbn/ace" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ace plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ace'] --- import kbnAceObj from './kbn_ace.devdocs.json'; diff --git a/api_docs/kbn_actions_types.mdx b/api_docs/kbn_actions_types.mdx index 6c6e95b152d4e..7bd46b655e3dd 100644 --- a/api_docs/kbn_actions_types.mdx +++ b/api_docs/kbn_actions_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-actions-types title: "@kbn/actions-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/actions-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/actions-types'] --- import kbnActionsTypesObj from './kbn_actions_types.devdocs.json'; diff --git a/api_docs/kbn_aiops_components.mdx b/api_docs/kbn_aiops_components.mdx index 14eab4e516aec..330d1daf1fe69 100644 --- a/api_docs/kbn_aiops_components.mdx +++ b/api_docs/kbn_aiops_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-aiops-components title: "@kbn/aiops-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/aiops-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/aiops-components'] --- import kbnAiopsComponentsObj from './kbn_aiops_components.devdocs.json'; diff --git a/api_docs/kbn_aiops_log_pattern_analysis.mdx b/api_docs/kbn_aiops_log_pattern_analysis.mdx index 67db1a10d31c6..c61f1b7acf872 100644 --- a/api_docs/kbn_aiops_log_pattern_analysis.mdx +++ b/api_docs/kbn_aiops_log_pattern_analysis.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-aiops-log-pattern-analysis title: "@kbn/aiops-log-pattern-analysis" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/aiops-log-pattern-analysis plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/aiops-log-pattern-analysis'] --- import kbnAiopsLogPatternAnalysisObj from './kbn_aiops_log_pattern_analysis.devdocs.json'; diff --git a/api_docs/kbn_aiops_log_rate_analysis.mdx b/api_docs/kbn_aiops_log_rate_analysis.mdx index bfb2d31be4cf6..c0373e5fda6c3 100644 --- a/api_docs/kbn_aiops_log_rate_analysis.mdx +++ b/api_docs/kbn_aiops_log_rate_analysis.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-aiops-log-rate-analysis title: "@kbn/aiops-log-rate-analysis" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/aiops-log-rate-analysis plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/aiops-log-rate-analysis'] --- import kbnAiopsLogRateAnalysisObj from './kbn_aiops_log_rate_analysis.devdocs.json'; diff --git a/api_docs/kbn_alerting_api_integration_helpers.mdx b/api_docs/kbn_alerting_api_integration_helpers.mdx index ed5c88415cf06..aba34876fed3e 100644 --- a/api_docs/kbn_alerting_api_integration_helpers.mdx +++ b/api_docs/kbn_alerting_api_integration_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerting-api-integration-helpers title: "@kbn/alerting-api-integration-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerting-api-integration-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerting-api-integration-helpers'] --- import kbnAlertingApiIntegrationHelpersObj from './kbn_alerting_api_integration_helpers.devdocs.json'; diff --git a/api_docs/kbn_alerting_comparators.mdx b/api_docs/kbn_alerting_comparators.mdx index 8027193871167..bee730ce9626c 100644 --- a/api_docs/kbn_alerting_comparators.mdx +++ b/api_docs/kbn_alerting_comparators.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerting-comparators title: "@kbn/alerting-comparators" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerting-comparators plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerting-comparators'] --- import kbnAlertingComparatorsObj from './kbn_alerting_comparators.devdocs.json'; diff --git a/api_docs/kbn_alerting_state_types.mdx b/api_docs/kbn_alerting_state_types.mdx index 38e15414ee87b..4f31741d85f0b 100644 --- a/api_docs/kbn_alerting_state_types.mdx +++ b/api_docs/kbn_alerting_state_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerting-state-types title: "@kbn/alerting-state-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerting-state-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerting-state-types'] --- import kbnAlertingStateTypesObj from './kbn_alerting_state_types.devdocs.json'; diff --git a/api_docs/kbn_alerting_types.mdx b/api_docs/kbn_alerting_types.mdx index e5b1131bcbd42..3e33a8df31808 100644 --- a/api_docs/kbn_alerting_types.mdx +++ b/api_docs/kbn_alerting_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerting-types title: "@kbn/alerting-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerting-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerting-types'] --- import kbnAlertingTypesObj from './kbn_alerting_types.devdocs.json'; diff --git a/api_docs/kbn_alerts_as_data_utils.mdx b/api_docs/kbn_alerts_as_data_utils.mdx index 7b07c4266f2c6..c0f9cafa95708 100644 --- a/api_docs/kbn_alerts_as_data_utils.mdx +++ b/api_docs/kbn_alerts_as_data_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerts-as-data-utils title: "@kbn/alerts-as-data-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerts-as-data-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerts-as-data-utils'] --- import kbnAlertsAsDataUtilsObj from './kbn_alerts_as_data_utils.devdocs.json'; diff --git a/api_docs/kbn_alerts_grouping.mdx b/api_docs/kbn_alerts_grouping.mdx index 80721130e4797..6d90d0917defd 100644 --- a/api_docs/kbn_alerts_grouping.mdx +++ b/api_docs/kbn_alerts_grouping.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerts-grouping title: "@kbn/alerts-grouping" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerts-grouping plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerts-grouping'] --- import kbnAlertsGroupingObj from './kbn_alerts_grouping.devdocs.json'; diff --git a/api_docs/kbn_alerts_ui_shared.devdocs.json b/api_docs/kbn_alerts_ui_shared.devdocs.json index d4055da83b06d..731409da954e8 100644 --- a/api_docs/kbn_alerts_ui_shared.devdocs.json +++ b/api_docs/kbn_alerts_ui_shared.devdocs.json @@ -3117,13 +3117,19 @@ " extends Pick<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">, \"chainingSystem\">" ], "path": "packages/kbn-alerts-ui-shared/src/alert_filter_controls/types.ts", @@ -3490,7 +3496,7 @@ "text": "ControlGroupRendererProps" } ], - "path": "src/plugins/controls/public/control_group/external_api/control_group_renderer_lazy.tsx", + "path": "src/plugins/controls/public/react_controls/external_api/control_group_renderer_lazy.tsx", "deprecated": false, "trackAdoption": false } @@ -5848,13 +5854,7 @@ "description": [], "signature": [ "Omit<", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" - }, + "OptionsListControlState", ", \"dataViewId\"> & { persist?: boolean | undefined; }" ], "path": "packages/kbn-alerts-ui-shared/src/alert_filter_controls/types.ts", @@ -5888,21 +5888,27 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupSerializedState", + "section": "def-common.ControlGroupSerializedState", "text": "ControlGroupSerializedState" }, ", ", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/presentation-publishing", @@ -5930,13 +5936,19 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlPanelState", + "section": "def-common.ControlPanelState", "text": "ControlPanelState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">> & ", { "pluginId": "@kbn/presentation-publishing", @@ -5945,14 +5957,6 @@ "section": "def-public.HasEditCapabilities", "text": "HasEditCapabilities" }, - " & ", - { - "pluginId": "@kbn/presentation-publishing", - "scope": "public", - "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishesDataLoading", - "text": "PublishesDataLoading" - }, " & Pick<", { "pluginId": "@kbn/presentation-publishing", @@ -5964,13 +5968,19 @@ "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>, \"unsavedChanges\"> & ", { "pluginId": "@kbn/presentation-publishing", @@ -6054,7 +6064,13 @@ "text": "PublishingSubject" }, "<", - "ControlStyle", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlLabelPosition", + "text": "ControlLabelPosition" + }, ">; asyncResetUnsavedChanges: () => Promise; controlFetch$: (controlUuid: string) => ", "Observable", "<", @@ -6068,9 +6084,21 @@ "text": "ControlStateTransform" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, "> | undefined; onSave?: (() => void) | undefined; } | undefined) => void; untilInitialized: () => Promise; getEditorConfig: () => ", - "ControlGroupEditorConfig", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlGroupEditorConfig", + "text": "ControlGroupEditorConfig" + }, " | undefined; getLastSavedControlState: (controlUuid: string) => object; setChainingSystem: (chainingSystem: ", { "pluginId": "controls", @@ -6082,25 +6110,37 @@ ") => void; } & { reload: () => void; updateInput: (input: Partial<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>) => void; getInput$: () => ", "BehaviorSubject", "<", { "pluginId": "controls", - "scope": "public", + "scope": "common", "docId": "kibControlsPluginApi", - "section": "def-public.ControlGroupRuntimeState", + "section": "def-common.ControlGroupRuntimeState", "text": "ControlGroupRuntimeState" }, "<", - "DefaultControlState", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.DefaultControlState", + "text": "DefaultControlState" + }, ">>; }" ], "path": "packages/kbn-alerts-ui-shared/src/alert_filter_controls/types.ts", @@ -6117,14 +6157,8 @@ "description": [], "signature": [ "{ [x: string]: Pick<", - { - "pluginId": "controls", - "scope": "public", - "docId": "kibControlsPluginApi", - "section": "def-public.OptionsListControlState", - "text": "OptionsListControlState" - }, - ", \"selectedOptions\" | \"title\" | \"fieldName\" | \"existsSelected\" | \"exclude\">; }" + "OptionsListControlState", + ", \"selectedOptions\" | \"title\" | \"fieldName\" | \"exclude\" | \"existsSelected\">; }" ], "path": "packages/kbn-alerts-ui-shared/src/alert_filter_controls/types.ts", "deprecated": false, diff --git a/api_docs/kbn_alerts_ui_shared.mdx b/api_docs/kbn_alerts_ui_shared.mdx index 164f1b1e678cc..17b7243d3df1c 100644 --- a/api_docs/kbn_alerts_ui_shared.mdx +++ b/api_docs/kbn_alerts_ui_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-alerts-ui-shared title: "@kbn/alerts-ui-shared" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/alerts-ui-shared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerts-ui-shared'] --- import kbnAlertsUiSharedObj from './kbn_alerts_ui_shared.devdocs.json'; diff --git a/api_docs/kbn_analytics.mdx b/api_docs/kbn_analytics.mdx index b5360f43e50a1..f45880014bd4a 100644 --- a/api_docs/kbn_analytics.mdx +++ b/api_docs/kbn_analytics.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics title: "@kbn/analytics" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics'] --- import kbnAnalyticsObj from './kbn_analytics.devdocs.json'; diff --git a/api_docs/kbn_analytics_collection_utils.mdx b/api_docs/kbn_analytics_collection_utils.mdx index 356b94b5b147c..12aa4a85dc93c 100644 --- a/api_docs/kbn_analytics_collection_utils.mdx +++ b/api_docs/kbn_analytics_collection_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-collection-utils title: "@kbn/analytics-collection-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-collection-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-collection-utils'] --- import kbnAnalyticsCollectionUtilsObj from './kbn_analytics_collection_utils.devdocs.json'; diff --git a/api_docs/kbn_apm_config_loader.mdx b/api_docs/kbn_apm_config_loader.mdx index e4003a21704b0..d60cba60dda4d 100644 --- a/api_docs/kbn_apm_config_loader.mdx +++ b/api_docs/kbn_apm_config_loader.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-apm-config-loader title: "@kbn/apm-config-loader" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/apm-config-loader plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-config-loader'] --- import kbnApmConfigLoaderObj from './kbn_apm_config_loader.devdocs.json'; diff --git a/api_docs/kbn_apm_data_view.mdx b/api_docs/kbn_apm_data_view.mdx index 33fb5d7d44173..e7794b3e77551 100644 --- a/api_docs/kbn_apm_data_view.mdx +++ b/api_docs/kbn_apm_data_view.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-apm-data-view title: "@kbn/apm-data-view" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/apm-data-view plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-data-view'] --- import kbnApmDataViewObj from './kbn_apm_data_view.devdocs.json'; diff --git a/api_docs/kbn_apm_synthtrace.mdx b/api_docs/kbn_apm_synthtrace.mdx index 01e1c158024ea..4c44faaacfd41 100644 --- a/api_docs/kbn_apm_synthtrace.mdx +++ b/api_docs/kbn_apm_synthtrace.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-apm-synthtrace title: "@kbn/apm-synthtrace" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/apm-synthtrace plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-synthtrace'] --- import kbnApmSynthtraceObj from './kbn_apm_synthtrace.devdocs.json'; diff --git a/api_docs/kbn_apm_synthtrace_client.mdx b/api_docs/kbn_apm_synthtrace_client.mdx index 3ce66e195254a..d9b843da76e65 100644 --- a/api_docs/kbn_apm_synthtrace_client.mdx +++ b/api_docs/kbn_apm_synthtrace_client.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-apm-synthtrace-client title: "@kbn/apm-synthtrace-client" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/apm-synthtrace-client plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-synthtrace-client'] --- import kbnApmSynthtraceClientObj from './kbn_apm_synthtrace_client.devdocs.json'; diff --git a/api_docs/kbn_apm_types.mdx b/api_docs/kbn_apm_types.mdx index 83327cef25953..42a4705773c1c 100644 --- a/api_docs/kbn_apm_types.mdx +++ b/api_docs/kbn_apm_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-apm-types title: "@kbn/apm-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/apm-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-types'] --- import kbnApmTypesObj from './kbn_apm_types.devdocs.json'; diff --git a/api_docs/kbn_apm_utils.mdx b/api_docs/kbn_apm_utils.mdx index d53ea4526ab27..3dabeb9d984f6 100644 --- a/api_docs/kbn_apm_utils.mdx +++ b/api_docs/kbn_apm_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-apm-utils title: "@kbn/apm-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/apm-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-utils'] --- import kbnApmUtilsObj from './kbn_apm_utils.devdocs.json'; diff --git a/api_docs/kbn_avc_banner.mdx b/api_docs/kbn_avc_banner.mdx index 233d64762f81d..f1a5bb031120b 100644 --- a/api_docs/kbn_avc_banner.mdx +++ b/api_docs/kbn_avc_banner.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-avc-banner title: "@kbn/avc-banner" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/avc-banner plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/avc-banner'] --- import kbnAvcBannerObj from './kbn_avc_banner.devdocs.json'; diff --git a/api_docs/kbn_axe_config.mdx b/api_docs/kbn_axe_config.mdx index 431dde47131ab..8c34d0e568bde 100644 --- a/api_docs/kbn_axe_config.mdx +++ b/api_docs/kbn_axe_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-axe-config title: "@kbn/axe-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/axe-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/axe-config'] --- import kbnAxeConfigObj from './kbn_axe_config.devdocs.json'; diff --git a/api_docs/kbn_bfetch_error.mdx b/api_docs/kbn_bfetch_error.mdx index 72e0634b95007..bbd03914cd226 100644 --- a/api_docs/kbn_bfetch_error.mdx +++ b/api_docs/kbn_bfetch_error.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-bfetch-error title: "@kbn/bfetch-error" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/bfetch-error plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/bfetch-error'] --- import kbnBfetchErrorObj from './kbn_bfetch_error.devdocs.json'; diff --git a/api_docs/kbn_calculate_auto.mdx b/api_docs/kbn_calculate_auto.mdx index b3087deea5837..68ef42d09d85c 100644 --- a/api_docs/kbn_calculate_auto.mdx +++ b/api_docs/kbn_calculate_auto.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-calculate-auto title: "@kbn/calculate-auto" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/calculate-auto plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/calculate-auto'] --- import kbnCalculateAutoObj from './kbn_calculate_auto.devdocs.json'; diff --git a/api_docs/kbn_calculate_width_from_char_count.mdx b/api_docs/kbn_calculate_width_from_char_count.mdx index e2ab61dcb1f7f..2d6ccb0dc7c63 100644 --- a/api_docs/kbn_calculate_width_from_char_count.mdx +++ b/api_docs/kbn_calculate_width_from_char_count.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-calculate-width-from-char-count title: "@kbn/calculate-width-from-char-count" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/calculate-width-from-char-count plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/calculate-width-from-char-count'] --- import kbnCalculateWidthFromCharCountObj from './kbn_calculate_width_from_char_count.devdocs.json'; diff --git a/api_docs/kbn_cases_components.mdx b/api_docs/kbn_cases_components.mdx index 8847c805efde0..7532e67882f7b 100644 --- a/api_docs/kbn_cases_components.mdx +++ b/api_docs/kbn_cases_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cases-components title: "@kbn/cases-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cases-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cases-components'] --- import kbnCasesComponentsObj from './kbn_cases_components.devdocs.json'; diff --git a/api_docs/kbn_cbor.mdx b/api_docs/kbn_cbor.mdx index 6ec6babc7fb58..75f4eee3fec8f 100644 --- a/api_docs/kbn_cbor.mdx +++ b/api_docs/kbn_cbor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cbor title: "@kbn/cbor" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cbor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cbor'] --- import kbnCborObj from './kbn_cbor.devdocs.json'; diff --git a/api_docs/kbn_cell_actions.mdx b/api_docs/kbn_cell_actions.mdx index 1cdf8bb8fd27a..9b4682db6ea3c 100644 --- a/api_docs/kbn_cell_actions.mdx +++ b/api_docs/kbn_cell_actions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cell-actions title: "@kbn/cell-actions" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cell-actions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cell-actions'] --- import kbnCellActionsObj from './kbn_cell_actions.devdocs.json'; diff --git a/api_docs/kbn_chart_expressions_common.mdx b/api_docs/kbn_chart_expressions_common.mdx index af779b6352f8f..51e48e3ea52c0 100644 --- a/api_docs/kbn_chart_expressions_common.mdx +++ b/api_docs/kbn_chart_expressions_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-chart-expressions-common title: "@kbn/chart-expressions-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/chart-expressions-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/chart-expressions-common'] --- import kbnChartExpressionsCommonObj from './kbn_chart_expressions_common.devdocs.json'; diff --git a/api_docs/kbn_chart_icons.mdx b/api_docs/kbn_chart_icons.mdx index 3cd7fd83ef675..d490ba3e41a7d 100644 --- a/api_docs/kbn_chart_icons.mdx +++ b/api_docs/kbn_chart_icons.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-chart-icons title: "@kbn/chart-icons" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/chart-icons plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/chart-icons'] --- import kbnChartIconsObj from './kbn_chart_icons.devdocs.json'; diff --git a/api_docs/kbn_ci_stats_core.mdx b/api_docs/kbn_ci_stats_core.mdx index d36f032077178..bbb2560c76007 100644 --- a/api_docs/kbn_ci_stats_core.mdx +++ b/api_docs/kbn_ci_stats_core.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ci-stats-core title: "@kbn/ci-stats-core" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ci-stats-core plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ci-stats-core'] --- import kbnCiStatsCoreObj from './kbn_ci_stats_core.devdocs.json'; diff --git a/api_docs/kbn_ci_stats_performance_metrics.mdx b/api_docs/kbn_ci_stats_performance_metrics.mdx index 4557bb5299e54..0a9d18433dd29 100644 --- a/api_docs/kbn_ci_stats_performance_metrics.mdx +++ b/api_docs/kbn_ci_stats_performance_metrics.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ci-stats-performance-metrics title: "@kbn/ci-stats-performance-metrics" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ci-stats-performance-metrics plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ci-stats-performance-metrics'] --- import kbnCiStatsPerformanceMetricsObj from './kbn_ci_stats_performance_metrics.devdocs.json'; diff --git a/api_docs/kbn_ci_stats_reporter.mdx b/api_docs/kbn_ci_stats_reporter.mdx index 158927f168a33..dda4ca61bcf2e 100644 --- a/api_docs/kbn_ci_stats_reporter.mdx +++ b/api_docs/kbn_ci_stats_reporter.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ci-stats-reporter title: "@kbn/ci-stats-reporter" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ci-stats-reporter plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ci-stats-reporter'] --- import kbnCiStatsReporterObj from './kbn_ci_stats_reporter.devdocs.json'; diff --git a/api_docs/kbn_cli_dev_mode.mdx b/api_docs/kbn_cli_dev_mode.mdx index 458b21a9e9c26..f86b1b49700c0 100644 --- a/api_docs/kbn_cli_dev_mode.mdx +++ b/api_docs/kbn_cli_dev_mode.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cli-dev-mode title: "@kbn/cli-dev-mode" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cli-dev-mode plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cli-dev-mode'] --- import kbnCliDevModeObj from './kbn_cli_dev_mode.devdocs.json'; diff --git a/api_docs/kbn_cloud_security_posture.mdx b/api_docs/kbn_cloud_security_posture.mdx index dddebd2460fa8..26a39b27842cc 100644 --- a/api_docs/kbn_cloud_security_posture.mdx +++ b/api_docs/kbn_cloud_security_posture.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cloud-security-posture title: "@kbn/cloud-security-posture" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cloud-security-posture plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cloud-security-posture'] --- import kbnCloudSecurityPostureObj from './kbn_cloud_security_posture.devdocs.json'; diff --git a/api_docs/kbn_cloud_security_posture_common.mdx b/api_docs/kbn_cloud_security_posture_common.mdx index 06636275aac11..3e03a0caaa377 100644 --- a/api_docs/kbn_cloud_security_posture_common.mdx +++ b/api_docs/kbn_cloud_security_posture_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cloud-security-posture-common title: "@kbn/cloud-security-posture-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cloud-security-posture-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cloud-security-posture-common'] --- import kbnCloudSecurityPostureCommonObj from './kbn_cloud_security_posture_common.devdocs.json'; diff --git a/api_docs/kbn_code_editor.mdx b/api_docs/kbn_code_editor.mdx index ef1f930f73a73..22883f72e90f6 100644 --- a/api_docs/kbn_code_editor.mdx +++ b/api_docs/kbn_code_editor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-code-editor title: "@kbn/code-editor" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/code-editor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/code-editor'] --- import kbnCodeEditorObj from './kbn_code_editor.devdocs.json'; diff --git a/api_docs/kbn_code_editor_mock.mdx b/api_docs/kbn_code_editor_mock.mdx index 4cd0ac063b295..73cdcf5992213 100644 --- a/api_docs/kbn_code_editor_mock.mdx +++ b/api_docs/kbn_code_editor_mock.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-code-editor-mock title: "@kbn/code-editor-mock" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/code-editor-mock plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/code-editor-mock'] --- import kbnCodeEditorMockObj from './kbn_code_editor_mock.devdocs.json'; diff --git a/api_docs/kbn_code_owners.mdx b/api_docs/kbn_code_owners.mdx index 1837a351ab81f..87485757247dc 100644 --- a/api_docs/kbn_code_owners.mdx +++ b/api_docs/kbn_code_owners.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-code-owners title: "@kbn/code-owners" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/code-owners plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/code-owners'] --- import kbnCodeOwnersObj from './kbn_code_owners.devdocs.json'; diff --git a/api_docs/kbn_coloring.mdx b/api_docs/kbn_coloring.mdx index fa7b9b3370873..8ce23f2089d2d 100644 --- a/api_docs/kbn_coloring.mdx +++ b/api_docs/kbn_coloring.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-coloring title: "@kbn/coloring" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/coloring plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/coloring'] --- import kbnColoringObj from './kbn_coloring.devdocs.json'; diff --git a/api_docs/kbn_config.mdx b/api_docs/kbn_config.mdx index ffdcb0df99ff7..047e8fbe4b7e6 100644 --- a/api_docs/kbn_config.mdx +++ b/api_docs/kbn_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-config title: "@kbn/config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/config'] --- import kbnConfigObj from './kbn_config.devdocs.json'; diff --git a/api_docs/kbn_config_mocks.mdx b/api_docs/kbn_config_mocks.mdx index d5c5afaa1ff4a..f08d02851441d 100644 --- a/api_docs/kbn_config_mocks.mdx +++ b/api_docs/kbn_config_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-config-mocks title: "@kbn/config-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/config-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/config-mocks'] --- import kbnConfigMocksObj from './kbn_config_mocks.devdocs.json'; diff --git a/api_docs/kbn_config_schema.mdx b/api_docs/kbn_config_schema.mdx index 7b0267bf91d70..f01b736418d57 100644 --- a/api_docs/kbn_config_schema.mdx +++ b/api_docs/kbn_config_schema.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-config-schema title: "@kbn/config-schema" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/config-schema plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/config-schema'] --- import kbnConfigSchemaObj from './kbn_config_schema.devdocs.json'; diff --git a/api_docs/kbn_content_management_content_editor.mdx b/api_docs/kbn_content_management_content_editor.mdx index 1c6873650a77d..65cfb7b19b20b 100644 --- a/api_docs/kbn_content_management_content_editor.mdx +++ b/api_docs/kbn_content_management_content_editor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-content-editor title: "@kbn/content-management-content-editor" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-content-editor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-content-editor'] --- import kbnContentManagementContentEditorObj from './kbn_content_management_content_editor.devdocs.json'; diff --git a/api_docs/kbn_content_management_content_insights_public.mdx b/api_docs/kbn_content_management_content_insights_public.mdx index c0c9b3b664627..3d392fa8bedf0 100644 --- a/api_docs/kbn_content_management_content_insights_public.mdx +++ b/api_docs/kbn_content_management_content_insights_public.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-content-insights-public title: "@kbn/content-management-content-insights-public" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-content-insights-public plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-content-insights-public'] --- import kbnContentManagementContentInsightsPublicObj from './kbn_content_management_content_insights_public.devdocs.json'; diff --git a/api_docs/kbn_content_management_content_insights_server.mdx b/api_docs/kbn_content_management_content_insights_server.mdx index 3475f4b887614..e021c0868de3a 100644 --- a/api_docs/kbn_content_management_content_insights_server.mdx +++ b/api_docs/kbn_content_management_content_insights_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-content-insights-server title: "@kbn/content-management-content-insights-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-content-insights-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-content-insights-server'] --- import kbnContentManagementContentInsightsServerObj from './kbn_content_management_content_insights_server.devdocs.json'; diff --git a/api_docs/kbn_content_management_favorites_public.mdx b/api_docs/kbn_content_management_favorites_public.mdx index 0f9def9418f08..07b4d0c9dfbfc 100644 --- a/api_docs/kbn_content_management_favorites_public.mdx +++ b/api_docs/kbn_content_management_favorites_public.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-favorites-public title: "@kbn/content-management-favorites-public" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-favorites-public plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-favorites-public'] --- import kbnContentManagementFavoritesPublicObj from './kbn_content_management_favorites_public.devdocs.json'; diff --git a/api_docs/kbn_content_management_favorites_server.mdx b/api_docs/kbn_content_management_favorites_server.mdx index 93c38d33446d4..9ded67b298292 100644 --- a/api_docs/kbn_content_management_favorites_server.mdx +++ b/api_docs/kbn_content_management_favorites_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-favorites-server title: "@kbn/content-management-favorites-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-favorites-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-favorites-server'] --- import kbnContentManagementFavoritesServerObj from './kbn_content_management_favorites_server.devdocs.json'; diff --git a/api_docs/kbn_content_management_tabbed_table_list_view.mdx b/api_docs/kbn_content_management_tabbed_table_list_view.mdx index c5874a17a7e44..4063fb44ce59b 100644 --- a/api_docs/kbn_content_management_tabbed_table_list_view.mdx +++ b/api_docs/kbn_content_management_tabbed_table_list_view.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-tabbed-table-list-view title: "@kbn/content-management-tabbed-table-list-view" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-tabbed-table-list-view plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-tabbed-table-list-view'] --- import kbnContentManagementTabbedTableListViewObj from './kbn_content_management_tabbed_table_list_view.devdocs.json'; diff --git a/api_docs/kbn_content_management_table_list_view.mdx b/api_docs/kbn_content_management_table_list_view.mdx index 1695b9b4cf7a0..21f254a9421dc 100644 --- a/api_docs/kbn_content_management_table_list_view.mdx +++ b/api_docs/kbn_content_management_table_list_view.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-table-list-view title: "@kbn/content-management-table-list-view" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-table-list-view plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-table-list-view'] --- import kbnContentManagementTableListViewObj from './kbn_content_management_table_list_view.devdocs.json'; diff --git a/api_docs/kbn_content_management_table_list_view_common.mdx b/api_docs/kbn_content_management_table_list_view_common.mdx index 1e6d22f0e395d..e96753233ef4e 100644 --- a/api_docs/kbn_content_management_table_list_view_common.mdx +++ b/api_docs/kbn_content_management_table_list_view_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-table-list-view-common title: "@kbn/content-management-table-list-view-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-table-list-view-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-table-list-view-common'] --- import kbnContentManagementTableListViewCommonObj from './kbn_content_management_table_list_view_common.devdocs.json'; diff --git a/api_docs/kbn_content_management_table_list_view_table.mdx b/api_docs/kbn_content_management_table_list_view_table.mdx index 5297d8f4a120f..477ae2525ff73 100644 --- a/api_docs/kbn_content_management_table_list_view_table.mdx +++ b/api_docs/kbn_content_management_table_list_view_table.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-table-list-view-table title: "@kbn/content-management-table-list-view-table" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-table-list-view-table plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-table-list-view-table'] --- import kbnContentManagementTableListViewTableObj from './kbn_content_management_table_list_view_table.devdocs.json'; diff --git a/api_docs/kbn_content_management_user_profiles.mdx b/api_docs/kbn_content_management_user_profiles.mdx index 54b5be39e5992..66b9ac1cfc2ce 100644 --- a/api_docs/kbn_content_management_user_profiles.mdx +++ b/api_docs/kbn_content_management_user_profiles.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-user-profiles title: "@kbn/content-management-user-profiles" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-user-profiles plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-user-profiles'] --- import kbnContentManagementUserProfilesObj from './kbn_content_management_user_profiles.devdocs.json'; diff --git a/api_docs/kbn_content_management_utils.mdx b/api_docs/kbn_content_management_utils.mdx index 3ff84783eec75..653210b7a300a 100644 --- a/api_docs/kbn_content_management_utils.mdx +++ b/api_docs/kbn_content_management_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-content-management-utils title: "@kbn/content-management-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/content-management-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-utils'] --- import kbnContentManagementUtilsObj from './kbn_content_management_utils.devdocs.json'; diff --git a/api_docs/kbn_core_analytics_browser.devdocs.json b/api_docs/kbn_core_analytics_browser.devdocs.json index 1b2f965ed1619..c72c8e37bd6b3 100644 --- a/api_docs/kbn_core_analytics_browser.devdocs.json +++ b/api_docs/kbn_core_analytics_browser.devdocs.json @@ -978,6 +978,14 @@ "plugin": "apm", "path": "x-pack/plugins/observability_solution/apm/public/services/telemetry/telemetry_client.ts" }, + { + "plugin": "apm", + "path": "x-pack/plugins/observability_solution/apm/public/services/telemetry/telemetry_client.ts" + }, + { + "plugin": "apm", + "path": "x-pack/plugins/observability_solution/apm/public/services/telemetry/telemetry_client.ts" + }, { "plugin": "observabilityLogsExplorer", "path": "x-pack/plugins/observability_solution/observability_logs_explorer/public/state_machines/observability_logs_explorer/src/telemetry_events.ts" diff --git a/api_docs/kbn_core_analytics_browser.mdx b/api_docs/kbn_core_analytics_browser.mdx index 8ec085dfba3e5..3d36cef557842 100644 --- a/api_docs/kbn_core_analytics_browser.mdx +++ b/api_docs/kbn_core_analytics_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-analytics-browser title: "@kbn/core-analytics-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-analytics-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-analytics-browser'] --- import kbnCoreAnalyticsBrowserObj from './kbn_core_analytics_browser.devdocs.json'; diff --git a/api_docs/kbn_core_analytics_browser_internal.mdx b/api_docs/kbn_core_analytics_browser_internal.mdx index f56d94ce1c1c7..0bd6d2f76bb5f 100644 --- a/api_docs/kbn_core_analytics_browser_internal.mdx +++ b/api_docs/kbn_core_analytics_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-analytics-browser-internal title: "@kbn/core-analytics-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-analytics-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-analytics-browser-internal'] --- import kbnCoreAnalyticsBrowserInternalObj from './kbn_core_analytics_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_analytics_browser_mocks.mdx b/api_docs/kbn_core_analytics_browser_mocks.mdx index d329f90a85725..aeb9800fb70d4 100644 --- a/api_docs/kbn_core_analytics_browser_mocks.mdx +++ b/api_docs/kbn_core_analytics_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-analytics-browser-mocks title: "@kbn/core-analytics-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-analytics-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-analytics-browser-mocks'] --- import kbnCoreAnalyticsBrowserMocksObj from './kbn_core_analytics_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_analytics_server.devdocs.json b/api_docs/kbn_core_analytics_server.devdocs.json index e507fa869a6ef..634566ac17f0b 100644 --- a/api_docs/kbn_core_analytics_server.devdocs.json +++ b/api_docs/kbn_core_analytics_server.devdocs.json @@ -986,6 +986,14 @@ "plugin": "apm", "path": "x-pack/plugins/observability_solution/apm/public/services/telemetry/telemetry_client.ts" }, + { + "plugin": "apm", + "path": "x-pack/plugins/observability_solution/apm/public/services/telemetry/telemetry_client.ts" + }, + { + "plugin": "apm", + "path": "x-pack/plugins/observability_solution/apm/public/services/telemetry/telemetry_client.ts" + }, { "plugin": "observabilityLogsExplorer", "path": "x-pack/plugins/observability_solution/observability_logs_explorer/public/state_machines/observability_logs_explorer/src/telemetry_events.ts" diff --git a/api_docs/kbn_core_analytics_server.mdx b/api_docs/kbn_core_analytics_server.mdx index 5114fb3dbf83a..7b8b0d7f8ff84 100644 --- a/api_docs/kbn_core_analytics_server.mdx +++ b/api_docs/kbn_core_analytics_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-analytics-server title: "@kbn/core-analytics-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-analytics-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-analytics-server'] --- import kbnCoreAnalyticsServerObj from './kbn_core_analytics_server.devdocs.json'; diff --git a/api_docs/kbn_core_analytics_server_internal.mdx b/api_docs/kbn_core_analytics_server_internal.mdx index 71d17250a65fb..89d49ec5358ea 100644 --- a/api_docs/kbn_core_analytics_server_internal.mdx +++ b/api_docs/kbn_core_analytics_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-analytics-server-internal title: "@kbn/core-analytics-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-analytics-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-analytics-server-internal'] --- import kbnCoreAnalyticsServerInternalObj from './kbn_core_analytics_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_analytics_server_mocks.mdx b/api_docs/kbn_core_analytics_server_mocks.mdx index 26ec671e63652..583a0359cd001 100644 --- a/api_docs/kbn_core_analytics_server_mocks.mdx +++ b/api_docs/kbn_core_analytics_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-analytics-server-mocks title: "@kbn/core-analytics-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-analytics-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-analytics-server-mocks'] --- import kbnCoreAnalyticsServerMocksObj from './kbn_core_analytics_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_application_browser.mdx b/api_docs/kbn_core_application_browser.mdx index 6da1034bc5900..4fc25fdd55274 100644 --- a/api_docs/kbn_core_application_browser.mdx +++ b/api_docs/kbn_core_application_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-application-browser title: "@kbn/core-application-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-application-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-application-browser'] --- import kbnCoreApplicationBrowserObj from './kbn_core_application_browser.devdocs.json'; diff --git a/api_docs/kbn_core_application_browser_internal.mdx b/api_docs/kbn_core_application_browser_internal.mdx index 100ef9c48e53c..24eaeba9a0524 100644 --- a/api_docs/kbn_core_application_browser_internal.mdx +++ b/api_docs/kbn_core_application_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-application-browser-internal title: "@kbn/core-application-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-application-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-application-browser-internal'] --- import kbnCoreApplicationBrowserInternalObj from './kbn_core_application_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_application_browser_mocks.mdx b/api_docs/kbn_core_application_browser_mocks.mdx index 2068679e41060..59e07e8efefe8 100644 --- a/api_docs/kbn_core_application_browser_mocks.mdx +++ b/api_docs/kbn_core_application_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-application-browser-mocks title: "@kbn/core-application-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-application-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-application-browser-mocks'] --- import kbnCoreApplicationBrowserMocksObj from './kbn_core_application_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_application_common.mdx b/api_docs/kbn_core_application_common.mdx index 5afc3c31f07ff..e8006fa3c2e08 100644 --- a/api_docs/kbn_core_application_common.mdx +++ b/api_docs/kbn_core_application_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-application-common title: "@kbn/core-application-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-application-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-application-common'] --- import kbnCoreApplicationCommonObj from './kbn_core_application_common.devdocs.json'; diff --git a/api_docs/kbn_core_apps_browser_internal.mdx b/api_docs/kbn_core_apps_browser_internal.mdx index c38bee8197eb4..9561c15624d0b 100644 --- a/api_docs/kbn_core_apps_browser_internal.mdx +++ b/api_docs/kbn_core_apps_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-apps-browser-internal title: "@kbn/core-apps-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-apps-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-apps-browser-internal'] --- import kbnCoreAppsBrowserInternalObj from './kbn_core_apps_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_apps_browser_mocks.mdx b/api_docs/kbn_core_apps_browser_mocks.mdx index 99061d4ee9dbf..1dc319b9009c2 100644 --- a/api_docs/kbn_core_apps_browser_mocks.mdx +++ b/api_docs/kbn_core_apps_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-apps-browser-mocks title: "@kbn/core-apps-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-apps-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-apps-browser-mocks'] --- import kbnCoreAppsBrowserMocksObj from './kbn_core_apps_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_apps_server_internal.mdx b/api_docs/kbn_core_apps_server_internal.mdx index 513fac7a1d164..5e03c4bc9539a 100644 --- a/api_docs/kbn_core_apps_server_internal.mdx +++ b/api_docs/kbn_core_apps_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-apps-server-internal title: "@kbn/core-apps-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-apps-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-apps-server-internal'] --- import kbnCoreAppsServerInternalObj from './kbn_core_apps_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_base_browser_mocks.mdx b/api_docs/kbn_core_base_browser_mocks.mdx index fc1574f3ffa5d..bbbc987f2443c 100644 --- a/api_docs/kbn_core_base_browser_mocks.mdx +++ b/api_docs/kbn_core_base_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-base-browser-mocks title: "@kbn/core-base-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-base-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-base-browser-mocks'] --- import kbnCoreBaseBrowserMocksObj from './kbn_core_base_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_base_common.mdx b/api_docs/kbn_core_base_common.mdx index 82e8ce70f7644..a5475c04899db 100644 --- a/api_docs/kbn_core_base_common.mdx +++ b/api_docs/kbn_core_base_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-base-common title: "@kbn/core-base-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-base-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-base-common'] --- import kbnCoreBaseCommonObj from './kbn_core_base_common.devdocs.json'; diff --git a/api_docs/kbn_core_base_server_internal.mdx b/api_docs/kbn_core_base_server_internal.mdx index 25d96744f8d90..8ca0ac1008dc3 100644 --- a/api_docs/kbn_core_base_server_internal.mdx +++ b/api_docs/kbn_core_base_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-base-server-internal title: "@kbn/core-base-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-base-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-base-server-internal'] --- import kbnCoreBaseServerInternalObj from './kbn_core_base_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_base_server_mocks.mdx b/api_docs/kbn_core_base_server_mocks.mdx index 6ac844b6ab62f..78eaaa9b6f9c4 100644 --- a/api_docs/kbn_core_base_server_mocks.mdx +++ b/api_docs/kbn_core_base_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-base-server-mocks title: "@kbn/core-base-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-base-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-base-server-mocks'] --- import kbnCoreBaseServerMocksObj from './kbn_core_base_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_capabilities_browser_mocks.mdx b/api_docs/kbn_core_capabilities_browser_mocks.mdx index 0156d4bb6a216..ddcc033da4a33 100644 --- a/api_docs/kbn_core_capabilities_browser_mocks.mdx +++ b/api_docs/kbn_core_capabilities_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-capabilities-browser-mocks title: "@kbn/core-capabilities-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-capabilities-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-capabilities-browser-mocks'] --- import kbnCoreCapabilitiesBrowserMocksObj from './kbn_core_capabilities_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_capabilities_common.mdx b/api_docs/kbn_core_capabilities_common.mdx index c2de5533641cb..a1b1df98d78d0 100644 --- a/api_docs/kbn_core_capabilities_common.mdx +++ b/api_docs/kbn_core_capabilities_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-capabilities-common title: "@kbn/core-capabilities-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-capabilities-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-capabilities-common'] --- import kbnCoreCapabilitiesCommonObj from './kbn_core_capabilities_common.devdocs.json'; diff --git a/api_docs/kbn_core_capabilities_server.mdx b/api_docs/kbn_core_capabilities_server.mdx index dbeae64609253..32e734d28ded2 100644 --- a/api_docs/kbn_core_capabilities_server.mdx +++ b/api_docs/kbn_core_capabilities_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-capabilities-server title: "@kbn/core-capabilities-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-capabilities-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-capabilities-server'] --- import kbnCoreCapabilitiesServerObj from './kbn_core_capabilities_server.devdocs.json'; diff --git a/api_docs/kbn_core_capabilities_server_mocks.mdx b/api_docs/kbn_core_capabilities_server_mocks.mdx index 55e78ca2f1354..f450c0e1a2398 100644 --- a/api_docs/kbn_core_capabilities_server_mocks.mdx +++ b/api_docs/kbn_core_capabilities_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-capabilities-server-mocks title: "@kbn/core-capabilities-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-capabilities-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-capabilities-server-mocks'] --- import kbnCoreCapabilitiesServerMocksObj from './kbn_core_capabilities_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_chrome_browser.devdocs.json b/api_docs/kbn_core_chrome_browser.devdocs.json index f66b6baf4e4ec..947e0b5b92e53 100644 --- a/api_docs/kbn_core_chrome_browser.devdocs.json +++ b/api_docs/kbn_core_chrome_browser.devdocs.json @@ -2732,23 +2732,19 @@ }, { "parentPluginId": "@kbn/core-chrome-browser", - "id": "def-public.ChromeStart.getIsSideNavCollapsed$", - "type": "Function", + "id": "def-public.ChromeStart.sideNav", + "type": "Object", "tags": [], - "label": "getIsSideNavCollapsed$", - "description": [ - "\nGet an observable of the current collapsed state of the side nav." - ], + "label": "sideNav", + "description": [], "signature": [ - "() => ", + "{ getIsCollapsed$(): ", "Observable", - "" + "; setIsCollapsed(isCollapsed: boolean): void; }" ], "path": "packages/core/chrome/core-chrome-browser/src/contracts.ts", "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [] + "trackAdoption": false }, { "parentPluginId": "@kbn/core-chrome-browser", diff --git a/api_docs/kbn_core_chrome_browser.mdx b/api_docs/kbn_core_chrome_browser.mdx index 36cc7511677d7..4be4b2b05f6c3 100644 --- a/api_docs/kbn_core_chrome_browser.mdx +++ b/api_docs/kbn_core_chrome_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-chrome-browser title: "@kbn/core-chrome-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-chrome-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-chrome-browser'] --- import kbnCoreChromeBrowserObj from './kbn_core_chrome_browser.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sh | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 207 | 0 | 100 | 0 | +| 207 | 0 | 101 | 0 | ## Client diff --git a/api_docs/kbn_core_chrome_browser_mocks.mdx b/api_docs/kbn_core_chrome_browser_mocks.mdx index 94bc58481f62d..7777ebca0552f 100644 --- a/api_docs/kbn_core_chrome_browser_mocks.mdx +++ b/api_docs/kbn_core_chrome_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-chrome-browser-mocks title: "@kbn/core-chrome-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-chrome-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-chrome-browser-mocks'] --- import kbnCoreChromeBrowserMocksObj from './kbn_core_chrome_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_config_server_internal.mdx b/api_docs/kbn_core_config_server_internal.mdx index a81585f3e2bf6..cf7990ad46b75 100644 --- a/api_docs/kbn_core_config_server_internal.mdx +++ b/api_docs/kbn_core_config_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-config-server-internal title: "@kbn/core-config-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-config-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-config-server-internal'] --- import kbnCoreConfigServerInternalObj from './kbn_core_config_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_browser.mdx b/api_docs/kbn_core_custom_branding_browser.mdx index 8bbfd04b44d91..b3bb6b19c9073 100644 --- a/api_docs/kbn_core_custom_branding_browser.mdx +++ b/api_docs/kbn_core_custom_branding_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-browser title: "@kbn/core-custom-branding-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-browser'] --- import kbnCoreCustomBrandingBrowserObj from './kbn_core_custom_branding_browser.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_browser_internal.mdx b/api_docs/kbn_core_custom_branding_browser_internal.mdx index 1e3f4df6d6712..7034c10b045ce 100644 --- a/api_docs/kbn_core_custom_branding_browser_internal.mdx +++ b/api_docs/kbn_core_custom_branding_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-browser-internal title: "@kbn/core-custom-branding-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-browser-internal'] --- import kbnCoreCustomBrandingBrowserInternalObj from './kbn_core_custom_branding_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_browser_mocks.mdx b/api_docs/kbn_core_custom_branding_browser_mocks.mdx index e87533f446bf6..a3e2e6f527031 100644 --- a/api_docs/kbn_core_custom_branding_browser_mocks.mdx +++ b/api_docs/kbn_core_custom_branding_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-browser-mocks title: "@kbn/core-custom-branding-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-browser-mocks'] --- import kbnCoreCustomBrandingBrowserMocksObj from './kbn_core_custom_branding_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_common.mdx b/api_docs/kbn_core_custom_branding_common.mdx index 45f604e553f9b..f423a08b9296a 100644 --- a/api_docs/kbn_core_custom_branding_common.mdx +++ b/api_docs/kbn_core_custom_branding_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-common title: "@kbn/core-custom-branding-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-common'] --- import kbnCoreCustomBrandingCommonObj from './kbn_core_custom_branding_common.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_server.mdx b/api_docs/kbn_core_custom_branding_server.mdx index e99e65bcbc9b4..f80f77426200d 100644 --- a/api_docs/kbn_core_custom_branding_server.mdx +++ b/api_docs/kbn_core_custom_branding_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-server title: "@kbn/core-custom-branding-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-server'] --- import kbnCoreCustomBrandingServerObj from './kbn_core_custom_branding_server.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_server_internal.mdx b/api_docs/kbn_core_custom_branding_server_internal.mdx index 129b273546d49..e77560f2d0861 100644 --- a/api_docs/kbn_core_custom_branding_server_internal.mdx +++ b/api_docs/kbn_core_custom_branding_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-server-internal title: "@kbn/core-custom-branding-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-server-internal'] --- import kbnCoreCustomBrandingServerInternalObj from './kbn_core_custom_branding_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_custom_branding_server_mocks.mdx b/api_docs/kbn_core_custom_branding_server_mocks.mdx index c0175f3203325..6123a5a65192d 100644 --- a/api_docs/kbn_core_custom_branding_server_mocks.mdx +++ b/api_docs/kbn_core_custom_branding_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-custom-branding-server-mocks title: "@kbn/core-custom-branding-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-custom-branding-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-custom-branding-server-mocks'] --- import kbnCoreCustomBrandingServerMocksObj from './kbn_core_custom_branding_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_browser.mdx b/api_docs/kbn_core_deprecations_browser.mdx index d8e1c14611fe9..872064b3df1b9 100644 --- a/api_docs/kbn_core_deprecations_browser.mdx +++ b/api_docs/kbn_core_deprecations_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-browser title: "@kbn/core-deprecations-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-browser'] --- import kbnCoreDeprecationsBrowserObj from './kbn_core_deprecations_browser.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_browser_internal.mdx b/api_docs/kbn_core_deprecations_browser_internal.mdx index 5ee9a49bb3711..e63139fb73058 100644 --- a/api_docs/kbn_core_deprecations_browser_internal.mdx +++ b/api_docs/kbn_core_deprecations_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-browser-internal title: "@kbn/core-deprecations-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-browser-internal'] --- import kbnCoreDeprecationsBrowserInternalObj from './kbn_core_deprecations_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_browser_mocks.mdx b/api_docs/kbn_core_deprecations_browser_mocks.mdx index 39d097b05c6af..58f7db65c14e9 100644 --- a/api_docs/kbn_core_deprecations_browser_mocks.mdx +++ b/api_docs/kbn_core_deprecations_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-browser-mocks title: "@kbn/core-deprecations-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-browser-mocks'] --- import kbnCoreDeprecationsBrowserMocksObj from './kbn_core_deprecations_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_common.mdx b/api_docs/kbn_core_deprecations_common.mdx index 2c304f1621f00..d0f9e34e38481 100644 --- a/api_docs/kbn_core_deprecations_common.mdx +++ b/api_docs/kbn_core_deprecations_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-common title: "@kbn/core-deprecations-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-common'] --- import kbnCoreDeprecationsCommonObj from './kbn_core_deprecations_common.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_server.mdx b/api_docs/kbn_core_deprecations_server.mdx index c8f71ac2048aa..c768ced867f6c 100644 --- a/api_docs/kbn_core_deprecations_server.mdx +++ b/api_docs/kbn_core_deprecations_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-server title: "@kbn/core-deprecations-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-server'] --- import kbnCoreDeprecationsServerObj from './kbn_core_deprecations_server.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_server_internal.mdx b/api_docs/kbn_core_deprecations_server_internal.mdx index 2fc8ee5cc6e08..439081e3b9170 100644 --- a/api_docs/kbn_core_deprecations_server_internal.mdx +++ b/api_docs/kbn_core_deprecations_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-server-internal title: "@kbn/core-deprecations-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-server-internal'] --- import kbnCoreDeprecationsServerInternalObj from './kbn_core_deprecations_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_deprecations_server_mocks.mdx b/api_docs/kbn_core_deprecations_server_mocks.mdx index 4b559adbb8f57..4dbea8335d921 100644 --- a/api_docs/kbn_core_deprecations_server_mocks.mdx +++ b/api_docs/kbn_core_deprecations_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-deprecations-server-mocks title: "@kbn/core-deprecations-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-deprecations-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-deprecations-server-mocks'] --- import kbnCoreDeprecationsServerMocksObj from './kbn_core_deprecations_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_doc_links_browser.mdx b/api_docs/kbn_core_doc_links_browser.mdx index e23684271a62e..a8c868008710e 100644 --- a/api_docs/kbn_core_doc_links_browser.mdx +++ b/api_docs/kbn_core_doc_links_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-doc-links-browser title: "@kbn/core-doc-links-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-doc-links-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-doc-links-browser'] --- import kbnCoreDocLinksBrowserObj from './kbn_core_doc_links_browser.devdocs.json'; diff --git a/api_docs/kbn_core_doc_links_browser_mocks.mdx b/api_docs/kbn_core_doc_links_browser_mocks.mdx index 2d8544beb3963..9f741ba7daa8f 100644 --- a/api_docs/kbn_core_doc_links_browser_mocks.mdx +++ b/api_docs/kbn_core_doc_links_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-doc-links-browser-mocks title: "@kbn/core-doc-links-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-doc-links-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-doc-links-browser-mocks'] --- import kbnCoreDocLinksBrowserMocksObj from './kbn_core_doc_links_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_doc_links_server.mdx b/api_docs/kbn_core_doc_links_server.mdx index 37fb3282ccb11..9f814d1ab7a77 100644 --- a/api_docs/kbn_core_doc_links_server.mdx +++ b/api_docs/kbn_core_doc_links_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-doc-links-server title: "@kbn/core-doc-links-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-doc-links-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-doc-links-server'] --- import kbnCoreDocLinksServerObj from './kbn_core_doc_links_server.devdocs.json'; diff --git a/api_docs/kbn_core_doc_links_server_mocks.mdx b/api_docs/kbn_core_doc_links_server_mocks.mdx index 23d413a014cff..0baf54733d3c6 100644 --- a/api_docs/kbn_core_doc_links_server_mocks.mdx +++ b/api_docs/kbn_core_doc_links_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-doc-links-server-mocks title: "@kbn/core-doc-links-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-doc-links-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-doc-links-server-mocks'] --- import kbnCoreDocLinksServerMocksObj from './kbn_core_doc_links_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_elasticsearch_client_server_internal.mdx b/api_docs/kbn_core_elasticsearch_client_server_internal.mdx index 223057aa76828..3e2b4fbfcde94 100644 --- a/api_docs/kbn_core_elasticsearch_client_server_internal.mdx +++ b/api_docs/kbn_core_elasticsearch_client_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-elasticsearch-client-server-internal title: "@kbn/core-elasticsearch-client-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-elasticsearch-client-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-elasticsearch-client-server-internal'] --- import kbnCoreElasticsearchClientServerInternalObj from './kbn_core_elasticsearch_client_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_elasticsearch_client_server_mocks.mdx b/api_docs/kbn_core_elasticsearch_client_server_mocks.mdx index 00d95d44e6784..e5deb095e2a55 100644 --- a/api_docs/kbn_core_elasticsearch_client_server_mocks.mdx +++ b/api_docs/kbn_core_elasticsearch_client_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-elasticsearch-client-server-mocks title: "@kbn/core-elasticsearch-client-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-elasticsearch-client-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-elasticsearch-client-server-mocks'] --- import kbnCoreElasticsearchClientServerMocksObj from './kbn_core_elasticsearch_client_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_elasticsearch_server.devdocs.json b/api_docs/kbn_core_elasticsearch_server.devdocs.json index 3545ca05a5d0a..14c2183992b42 100644 --- a/api_docs/kbn_core_elasticsearch_server.devdocs.json +++ b/api_docs/kbn_core_elasticsearch_server.devdocs.json @@ -957,6 +957,22 @@ "trackAdoption": false, "children": [], "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-elasticsearch-server", + "id": "def-server.ElasticsearchServiceStart.publicBaseUrl", + "type": "string", + "tags": [], + "label": "publicBaseUrl", + "description": [ + "\nThe public base URL (if any) that should be used by end users to access the Elasticsearch cluster." + ], + "signature": [ + "string | undefined" + ], + "path": "packages/core/elasticsearch/core-elasticsearch-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/kbn_core_elasticsearch_server.mdx b/api_docs/kbn_core_elasticsearch_server.mdx index 46652758eac87..bb361d8daea6f 100644 --- a/api_docs/kbn_core_elasticsearch_server.mdx +++ b/api_docs/kbn_core_elasticsearch_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-elasticsearch-server title: "@kbn/core-elasticsearch-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-elasticsearch-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-elasticsearch-server'] --- import kbnCoreElasticsearchServerObj from './kbn_core_elasticsearch_server.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 117 | 0 | 56 | 0 | +| 118 | 0 | 56 | 0 | ## Server diff --git a/api_docs/kbn_core_elasticsearch_server_internal.mdx b/api_docs/kbn_core_elasticsearch_server_internal.mdx index ceb10897fa4d2..ac2e619de320b 100644 --- a/api_docs/kbn_core_elasticsearch_server_internal.mdx +++ b/api_docs/kbn_core_elasticsearch_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-elasticsearch-server-internal title: "@kbn/core-elasticsearch-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-elasticsearch-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-elasticsearch-server-internal'] --- import kbnCoreElasticsearchServerInternalObj from './kbn_core_elasticsearch_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_elasticsearch_server_mocks.devdocs.json b/api_docs/kbn_core_elasticsearch_server_mocks.devdocs.json index 702a8890af3d9..7c0baefca2c20 100644 --- a/api_docs/kbn_core_elasticsearch_server_mocks.devdocs.json +++ b/api_docs/kbn_core_elasticsearch_server_mocks.devdocs.json @@ -57,7 +57,7 @@ "label": "MockedElasticSearchServiceStart", "description": [], "signature": [ - "{ getCapabilities: jest.MockInstance<", + "{ readonly publicBaseUrl?: string | undefined; getCapabilities: jest.MockInstance<", { "pluginId": "@kbn/core-elasticsearch-server", "scope": "server", diff --git a/api_docs/kbn_core_elasticsearch_server_mocks.mdx b/api_docs/kbn_core_elasticsearch_server_mocks.mdx index 5672e3320fe34..715d5c25493b9 100644 --- a/api_docs/kbn_core_elasticsearch_server_mocks.mdx +++ b/api_docs/kbn_core_elasticsearch_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-elasticsearch-server-mocks title: "@kbn/core-elasticsearch-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-elasticsearch-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-elasticsearch-server-mocks'] --- import kbnCoreElasticsearchServerMocksObj from './kbn_core_elasticsearch_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_environment_server_internal.mdx b/api_docs/kbn_core_environment_server_internal.mdx index ff771cdf88623..11bfb9e26df74 100644 --- a/api_docs/kbn_core_environment_server_internal.mdx +++ b/api_docs/kbn_core_environment_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-environment-server-internal title: "@kbn/core-environment-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-environment-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-environment-server-internal'] --- import kbnCoreEnvironmentServerInternalObj from './kbn_core_environment_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_environment_server_mocks.mdx b/api_docs/kbn_core_environment_server_mocks.mdx index f0da8bfb29d36..57cad2b1d4cba 100644 --- a/api_docs/kbn_core_environment_server_mocks.mdx +++ b/api_docs/kbn_core_environment_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-environment-server-mocks title: "@kbn/core-environment-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-environment-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-environment-server-mocks'] --- import kbnCoreEnvironmentServerMocksObj from './kbn_core_environment_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_browser.mdx b/api_docs/kbn_core_execution_context_browser.mdx index 11f2e73fe7d36..2b7452c501110 100644 --- a/api_docs/kbn_core_execution_context_browser.mdx +++ b/api_docs/kbn_core_execution_context_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-browser title: "@kbn/core-execution-context-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-browser'] --- import kbnCoreExecutionContextBrowserObj from './kbn_core_execution_context_browser.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_browser_internal.mdx b/api_docs/kbn_core_execution_context_browser_internal.mdx index 0ec0b27c0fdf0..293bf0ed890ad 100644 --- a/api_docs/kbn_core_execution_context_browser_internal.mdx +++ b/api_docs/kbn_core_execution_context_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-browser-internal title: "@kbn/core-execution-context-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-browser-internal'] --- import kbnCoreExecutionContextBrowserInternalObj from './kbn_core_execution_context_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_browser_mocks.mdx b/api_docs/kbn_core_execution_context_browser_mocks.mdx index 21be12294aade..7f9972d184abe 100644 --- a/api_docs/kbn_core_execution_context_browser_mocks.mdx +++ b/api_docs/kbn_core_execution_context_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-browser-mocks title: "@kbn/core-execution-context-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-browser-mocks'] --- import kbnCoreExecutionContextBrowserMocksObj from './kbn_core_execution_context_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_common.mdx b/api_docs/kbn_core_execution_context_common.mdx index fe4eb753599fd..bad76c3bd2395 100644 --- a/api_docs/kbn_core_execution_context_common.mdx +++ b/api_docs/kbn_core_execution_context_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-common title: "@kbn/core-execution-context-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-common'] --- import kbnCoreExecutionContextCommonObj from './kbn_core_execution_context_common.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_server.mdx b/api_docs/kbn_core_execution_context_server.mdx index c3b0dc19d8f24..2bbc7849cf89b 100644 --- a/api_docs/kbn_core_execution_context_server.mdx +++ b/api_docs/kbn_core_execution_context_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-server title: "@kbn/core-execution-context-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-server'] --- import kbnCoreExecutionContextServerObj from './kbn_core_execution_context_server.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_server_internal.mdx b/api_docs/kbn_core_execution_context_server_internal.mdx index bed630363560a..e6d31a8d50c79 100644 --- a/api_docs/kbn_core_execution_context_server_internal.mdx +++ b/api_docs/kbn_core_execution_context_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-server-internal title: "@kbn/core-execution-context-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-server-internal'] --- import kbnCoreExecutionContextServerInternalObj from './kbn_core_execution_context_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_execution_context_server_mocks.mdx b/api_docs/kbn_core_execution_context_server_mocks.mdx index 295607d98d13d..8d5766cf3272b 100644 --- a/api_docs/kbn_core_execution_context_server_mocks.mdx +++ b/api_docs/kbn_core_execution_context_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-execution-context-server-mocks title: "@kbn/core-execution-context-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-execution-context-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-execution-context-server-mocks'] --- import kbnCoreExecutionContextServerMocksObj from './kbn_core_execution_context_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_fatal_errors_browser.mdx b/api_docs/kbn_core_fatal_errors_browser.mdx index 89a791ab6f81e..9c6bd827f7f31 100644 --- a/api_docs/kbn_core_fatal_errors_browser.mdx +++ b/api_docs/kbn_core_fatal_errors_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-fatal-errors-browser title: "@kbn/core-fatal-errors-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-fatal-errors-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-fatal-errors-browser'] --- import kbnCoreFatalErrorsBrowserObj from './kbn_core_fatal_errors_browser.devdocs.json'; diff --git a/api_docs/kbn_core_fatal_errors_browser_mocks.mdx b/api_docs/kbn_core_fatal_errors_browser_mocks.mdx index fd33da167c615..cadbbf580773a 100644 --- a/api_docs/kbn_core_fatal_errors_browser_mocks.mdx +++ b/api_docs/kbn_core_fatal_errors_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-fatal-errors-browser-mocks title: "@kbn/core-fatal-errors-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-fatal-errors-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-fatal-errors-browser-mocks'] --- import kbnCoreFatalErrorsBrowserMocksObj from './kbn_core_fatal_errors_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_feature_flags_browser.devdocs.json b/api_docs/kbn_core_feature_flags_browser.devdocs.json new file mode 100644 index 0000000000000..51162d3e750cb --- /dev/null +++ b/api_docs/kbn_core_feature_flags_browser.devdocs.json @@ -0,0 +1,596 @@ +{ + "id": "@kbn/core-feature-flags-browser", + "client": { + "classes": [], + "functions": [], + "interfaces": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsSetup", + "type": "Interface", + "tags": [], + "label": "FeatureFlagsSetup", + "description": [ + "\nSetup contract of the Feature Flags Service" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsSetup.setProvider", + "type": "Function", + "tags": [], + "label": "setProvider", + "description": [ + "\nRegisters an OpenFeature provider to talk to the\n3rd-party service that manages the Feature Flags." + ], + "signature": [ + "(provider: ", + "Provider", + ") => void" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsSetup.setProvider.$1", + "type": "Object", + "tags": [], + "label": "provider", + "description": [ + "The {@link Provider | OpenFeature Provider} to handle the communication with the feature flags management system." + ], + "signature": [ + "Provider" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsSetup.appendContext", + "type": "Function", + "tags": [], + "label": "appendContext", + "description": [ + "\nAppends new keys to the evaluation context." + ], + "signature": [ + "(contextToAppend: ", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.EvaluationContext", + "text": "EvaluationContext" + }, + ") => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsSetup.appendContext.$1", + "type": "CompoundType", + "tags": [], + "label": "contextToAppend", + "description": [ + "The additional keys that should be appended/modified in the evaluation context." + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.EvaluationContext", + "text": "EvaluationContext" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart", + "type": "Interface", + "tags": [], + "label": "FeatureFlagsStart", + "description": [ + "\nSetup contract of the Feature Flags Service" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.appendContext", + "type": "Function", + "tags": [], + "label": "appendContext", + "description": [ + "\nAppends new keys to the evaluation context." + ], + "signature": [ + "(contextToAppend: ", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.EvaluationContext", + "text": "EvaluationContext" + }, + ") => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.appendContext.$1", + "type": "CompoundType", + "tags": [], + "label": "contextToAppend", + "description": [ + "The additional keys that should be appended/modified in the evaluation context." + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.EvaluationContext", + "text": "EvaluationContext" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getBooleanValue", + "type": "Function", + "tags": [], + "label": "getBooleanValue", + "description": [ + "\nEvaluates a boolean flag" + ], + "signature": [ + "(flagName: string, fallbackValue: boolean) => boolean" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getBooleanValue.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getBooleanValue.$2", + "type": "boolean", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "boolean" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getStringValue", + "type": "Function", + "tags": [], + "label": "getStringValue", + "description": [ + "\nEvaluates a string flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getStringValue.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getStringValue.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getNumberValue", + "type": "Function", + "tags": [], + "label": "getNumberValue", + "description": [ + "\nEvaluates a number flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getNumberValue.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getNumberValue.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getBooleanValue$", + "type": "Function", + "tags": [], + "label": "getBooleanValue$", + "description": [ + "\nReturns an observable of a boolean flag" + ], + "signature": [ + "(flagName: string, fallbackValue: boolean) => ", + "Observable", + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getBooleanValue$.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getBooleanValue$.$2", + "type": "boolean", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "boolean" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getStringValue$", + "type": "Function", + "tags": [], + "label": "getStringValue$", + "description": [ + "\nReturns an observable of a string flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => ", + "Observable", + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getStringValue$.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getStringValue$.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getNumberValue$", + "type": "Function", + "tags": [], + "label": "getNumberValue$", + "description": [ + "\nReturns an observable of a number flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => ", + "Observable", + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getNumberValue$.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.FeatureFlagsStart.getNumberValue$.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.EvaluationContext", + "type": "Type", + "tags": [], + "label": "EvaluationContext", + "description": [ + "\nThe evaluation context to use when retrieving the flags.\n\nWe use multi-context so that we can apply segmentation rules at different levels (`organization`/`kibana`).\n* `organization` includes any information that is common to all the projects/deployments in an organization. An example is the in_trial status.\n* The `kibana` context includes all the information that identifies a project/deployment. Examples are version, offering, and has_data.\nKind helps us specify which sub-context should receive the new attributes.\nIf no `kind` is provided, it defaults to `kibana`.\n" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.MultiContextEvaluationContext", + "text": "MultiContextEvaluationContext" + }, + " | ", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.SingleContextEvaluationContext", + "text": "SingleContextEvaluationContext" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.MultiContextEvaluationContext", + "type": "Type", + "tags": [], + "label": "MultiContextEvaluationContext", + "description": [ + "\nMulti-context format. The sub-contexts are provided in their nested properties." + ], + "signature": [ + "{ targetingKey?: string | undefined; } & Record & { kind: \"multi\"; organization?: ", + "EvaluationContext", + " | undefined; kibana?: ", + "EvaluationContext", + " | undefined; }" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser", + "id": "def-public.SingleContextEvaluationContext", + "type": "Type", + "tags": [], + "label": "SingleContextEvaluationContext", + "description": [ + "\nSingle Context format. If `kind` is not specified, it applies to the `kibana` sub-context." + ], + "signature": [ + "{ targetingKey?: string | undefined; } & Record & { kind?: \"kibana\" | \"organization\" | undefined; }" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser/src/types.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + } + ], + "objects": [] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_core_feature_flags_browser.mdx b/api_docs/kbn_core_feature_flags_browser.mdx new file mode 100644 index 0000000000000..0293441f14615 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_browser.mdx @@ -0,0 +1,33 @@ +--- +#### +#### This document is auto-generated and is meant to be viewed inside our experimental, new docs system. +#### Reach out in #docs-engineering for more info. +#### +id: kibKbnCoreFeatureFlagsBrowserPluginApi +slug: /kibana-dev-docs/api/kbn-core-feature-flags-browser +title: "@kbn/core-feature-flags-browser" +image: https://source.unsplash.com/400x175/?github +description: API docs for the @kbn/core-feature-flags-browser plugin +date: 2024-09-20 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-feature-flags-browser'] +--- +import kbnCoreFeatureFlagsBrowserObj from './kbn_core_feature_flags_browser.devdocs.json'; + + + +Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 29 | 0 | 0 | 0 | + +## Client + +### Interfaces + + +### Consts, variables and types + + diff --git a/api_docs/kbn_core_feature_flags_browser_internal.devdocs.json b/api_docs/kbn_core_feature_flags_browser_internal.devdocs.json new file mode 100644 index 0000000000000..690abce26781e --- /dev/null +++ b/api_docs/kbn_core_feature_flags_browser_internal.devdocs.json @@ -0,0 +1,218 @@ +{ + "id": "@kbn/core-feature-flags-browser-internal", + "client": { + "classes": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService", + "type": "Class", + "tags": [ + "private" + ], + "label": "FeatureFlagsService", + "description": [ + "\nThe browser-side Feature Flags Service" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [ + "\nThe core service's constructor" + ], + "signature": [ + "any" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "core", + "description": [ + "{@link CoreContext }" + ], + "signature": [ + "CoreContext" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService.setup", + "type": "Function", + "tags": [], + "label": "setup", + "description": [ + "\nSetup lifecycle method" + ], + "signature": [ + "(deps: ", + { + "pluginId": "@kbn/core-feature-flags-browser-internal", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserInternalPluginApi", + "section": "def-public.FeatureFlagsSetupDeps", + "text": "FeatureFlagsSetupDeps" + }, + ") => ", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService.setup.$1", + "type": "Object", + "tags": [], + "label": "deps", + "description": [ + "{@link FeatureFlagsSetup } including the {@link InternalInjectedMetadataSetup } used to retrieve the feature flags." + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-browser-internal", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserInternalPluginApi", + "section": "def-public.FeatureFlagsSetupDeps", + "text": "FeatureFlagsSetupDeps" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService.start", + "type": "Function", + "tags": [], + "label": "start", + "description": [ + "\nStart lifecycle method" + ], + "signature": [ + "() => Promise<", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsService.stop", + "type": "Function", + "tags": [], + "label": "stop", + "description": [ + "\nStop lifecycle method" + ], + "signature": [ + "() => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "functions": [], + "interfaces": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsSetupDeps", + "type": "Interface", + "tags": [ + "private" + ], + "label": "FeatureFlagsSetupDeps", + "description": [ + "\nsetup method dependencies" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-internal", + "id": "def-public.FeatureFlagsSetupDeps.injectedMetadata", + "type": "Object", + "tags": [], + "label": "injectedMetadata", + "description": [ + "\nUsed to read the flag overrides set up in the configuration file." + ], + "signature": [ + "InternalInjectedMetadataSetup" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_core_feature_flags_browser_internal.mdx b/api_docs/kbn_core_feature_flags_browser_internal.mdx new file mode 100644 index 0000000000000..c163cf40155a6 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_browser_internal.mdx @@ -0,0 +1,33 @@ +--- +#### +#### This document is auto-generated and is meant to be viewed inside our experimental, new docs system. +#### Reach out in #docs-engineering for more info. +#### +id: kibKbnCoreFeatureFlagsBrowserInternalPluginApi +slug: /kibana-dev-docs/api/kbn-core-feature-flags-browser-internal +title: "@kbn/core-feature-flags-browser-internal" +image: https://source.unsplash.com/400x175/?github +description: API docs for the @kbn/core-feature-flags-browser-internal plugin +date: 2024-09-20 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-feature-flags-browser-internal'] +--- +import kbnCoreFeatureFlagsBrowserInternalObj from './kbn_core_feature_flags_browser_internal.devdocs.json'; + + + +Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 9 | 0 | 0 | 0 | + +## Client + +### Classes + + +### Interfaces + + diff --git a/api_docs/kbn_core_feature_flags_browser_mocks.devdocs.json b/api_docs/kbn_core_feature_flags_browser_mocks.devdocs.json new file mode 100644 index 0000000000000..1b445ec5e4c08 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_browser_mocks.devdocs.json @@ -0,0 +1,130 @@ +{ + "id": "@kbn/core-feature-flags-browser-mocks", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-mocks", + "id": "def-public.coreFeatureFlagsMock", + "type": "Object", + "tags": [], + "label": "coreFeatureFlagsMock", + "description": [ + "\nMocks for the Feature Flags service (browser-side)" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-browser-mocks", + "id": "def-public.coreFeatureFlagsMock.create", + "type": "Function", + "tags": [], + "label": "create", + "description": [ + "/**\n * Mocks the entire feature flags service\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/utility-types", + "scope": "common", + "docId": "kibKbnUtilityTypesPluginApi", + "section": "def-common.PublicMethodsOf", + "text": "PublicMethodsOf" + }, + "<", + { + "pluginId": "@kbn/core-feature-flags-browser-internal", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserInternalPluginApi", + "section": "def-public.FeatureFlagsService", + "text": "FeatureFlagsService" + }, + ">>" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser-mocks", + "id": "def-public.coreFeatureFlagsMock.createSetup", + "type": "Function", + "tags": [], + "label": "createSetup", + "description": [ + "/**\n * Mocks the setup contract\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-browser-mocks", + "id": "def-public.coreFeatureFlagsMock.createStart", + "type": "Function", + "tags": [], + "label": "createStart", + "description": [ + "/**\n * Mocks the start contract\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + } + ], + "initialIsOpen": false + } + ] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_core_feature_flags_browser_mocks.mdx b/api_docs/kbn_core_feature_flags_browser_mocks.mdx new file mode 100644 index 0000000000000..94547c6b7132a --- /dev/null +++ b/api_docs/kbn_core_feature_flags_browser_mocks.mdx @@ -0,0 +1,30 @@ +--- +#### +#### This document is auto-generated and is meant to be viewed inside our experimental, new docs system. +#### Reach out in #docs-engineering for more info. +#### +id: kibKbnCoreFeatureFlagsBrowserMocksPluginApi +slug: /kibana-dev-docs/api/kbn-core-feature-flags-browser-mocks +title: "@kbn/core-feature-flags-browser-mocks" +image: https://source.unsplash.com/400x175/?github +description: API docs for the @kbn/core-feature-flags-browser-mocks plugin +date: 2024-09-20 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-feature-flags-browser-mocks'] +--- +import kbnCoreFeatureFlagsBrowserMocksObj from './kbn_core_feature_flags_browser_mocks.devdocs.json'; + + + +Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 4 | 0 | 0 | 0 | + +## Client + +### Objects + + diff --git a/api_docs/kbn_core_feature_flags_server.devdocs.json b/api_docs/kbn_core_feature_flags_server.devdocs.json new file mode 100644 index 0000000000000..db13ba23e7eb5 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_server.devdocs.json @@ -0,0 +1,770 @@ +{ + "id": "@kbn/core-feature-flags-server", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition", + "type": "Interface", + "tags": [], + "label": "FeatureFlagDefinition", + "description": [ + "\nDefinition of a feature flag" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagDefinition", + "text": "FeatureFlagDefinition" + }, + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition.key", + "type": "string", + "tags": [], + "label": "key", + "description": [ + "\nThe ID of the feature flag. Used to reference it when evaluating the flag." + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition.name", + "type": "string", + "tags": [], + "label": "name", + "description": [ + "\nHuman friendly name." + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition.description", + "type": "string", + "tags": [], + "label": "description", + "description": [ + "\nDescription of the purpose of the feature flag." + ], + "signature": [ + "string | undefined" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition.tags", + "type": "Array", + "tags": [], + "label": "tags", + "description": [ + "\nTags to apply to the feature flag for easier categorizing. It may include the plugin, the solution, the team." + ], + "signature": [ + "string[]" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition.variationType", + "type": "Uncategorized", + "tags": [], + "label": "variationType", + "description": [ + "\nThe type of the values returned by the feature flag (\"string\", \"boolean\", or \"number\")." + ], + "signature": [ + "ValueType" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinition.variations", + "type": "Array", + "tags": [], + "label": "variations", + "description": [ + "\nList of variations of the feature flags." + ], + "signature": [ + "{ name: string; description?: string | undefined; value: ValueType extends \"string\" ? string : ValueType extends \"boolean\" ? boolean : number; }[]" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsSetup", + "type": "Interface", + "tags": [], + "label": "FeatureFlagsSetup", + "description": [ + "\nSetup contract of the Feature Flags Service" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsSetup.setProvider", + "type": "Function", + "tags": [], + "label": "setProvider", + "description": [ + "\nRegisters an OpenFeature provider to talk to the\n3rd-party service that manages the Feature Flags." + ], + "signature": [ + "(provider: ", + "Provider", + ") => void" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsSetup.setProvider.$1", + "type": "Object", + "tags": [], + "label": "provider", + "description": [ + "The {@link Provider | OpenFeature Provider} to handle the communication with the feature flags management system." + ], + "signature": [ + "Provider" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsSetup.appendContext", + "type": "Function", + "tags": [], + "label": "appendContext", + "description": [ + "\nAppends new keys to the evaluation context." + ], + "signature": [ + "(contextToAppend: ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.EvaluationContext", + "text": "EvaluationContext" + }, + ") => void" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsSetup.appendContext.$1", + "type": "CompoundType", + "tags": [], + "label": "contextToAppend", + "description": [ + "The additional keys that should be appended/modified in the evaluation context." + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.EvaluationContext", + "text": "EvaluationContext" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart", + "type": "Interface", + "tags": [], + "label": "FeatureFlagsStart", + "description": [ + "\nSetup contract of the Feature Flags Service" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.appendContext", + "type": "Function", + "tags": [], + "label": "appendContext", + "description": [ + "\nAppends new keys to the evaluation context." + ], + "signature": [ + "(contextToAppend: ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.EvaluationContext", + "text": "EvaluationContext" + }, + ") => void" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.appendContext.$1", + "type": "CompoundType", + "tags": [], + "label": "contextToAppend", + "description": [ + "The additional keys that should be appended/modified in the evaluation context." + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.EvaluationContext", + "text": "EvaluationContext" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getBooleanValue", + "type": "Function", + "tags": [], + "label": "getBooleanValue", + "description": [ + "\nEvaluates a boolean flag" + ], + "signature": [ + "(flagName: string, fallbackValue: boolean) => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getBooleanValue.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getBooleanValue.$2", + "type": "boolean", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "boolean" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getStringValue", + "type": "Function", + "tags": [], + "label": "getStringValue", + "description": [ + "\nEvaluates a string flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getStringValue.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getStringValue.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getNumberValue", + "type": "Function", + "tags": [], + "label": "getNumberValue", + "description": [ + "\nEvaluates a number flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getNumberValue.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getNumberValue.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getBooleanValue$", + "type": "Function", + "tags": [], + "label": "getBooleanValue$", + "description": [ + "\nReturns an observable of a boolean flag" + ], + "signature": [ + "(flagName: string, fallbackValue: boolean) => ", + "Observable", + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getBooleanValue$.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getBooleanValue$.$2", + "type": "boolean", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "boolean" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getStringValue$", + "type": "Function", + "tags": [], + "label": "getStringValue$", + "description": [ + "\nReturns an observable of a string flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => ", + "Observable", + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getStringValue$.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getStringValue$.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getNumberValue$", + "type": "Function", + "tags": [], + "label": "getNumberValue$", + "description": [ + "\nReturns an observable of a number flag" + ], + "signature": [ + "(flagName: string, fallbackValue: Value) => ", + "Observable", + "" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getNumberValue$.$1", + "type": "string", + "tags": [], + "label": "flagName", + "description": [ + "The flag ID to evaluate" + ], + "signature": [ + "string" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsStart.getNumberValue$.$2", + "type": "Uncategorized", + "tags": [], + "label": "fallbackValue", + "description": [ + "If the flag cannot be evaluated for whatever reason, the fallback value is provided." + ], + "signature": [ + "Value" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [ + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.EvaluationContext", + "type": "Type", + "tags": [], + "label": "EvaluationContext", + "description": [ + "\nThe evaluation context to use when retrieving the flags.\n\nWe use multi-context so that we can apply segmentation rules at different levels (`organization`/`kibana`).\n* `organization` includes any information that is common to all the projects/deployments in an organization. An example is the in_trial status.\n* The `kibana` context includes all the information that identifies a project/deployment. Examples are version, offering, and has_data.\nKind helps us specify which sub-context should receive the new attributes.\nIf no `kind` is provided, it defaults to `kibana`.\n" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.MultiContextEvaluationContext", + "text": "MultiContextEvaluationContext" + }, + " | ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.SingleContextEvaluationContext", + "text": "SingleContextEvaluationContext" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagDefinitions", + "type": "Type", + "tags": [], + "label": "FeatureFlagDefinitions", + "description": [ + "\nList of {@link FeatureFlagDefinition}" + ], + "signature": [ + "(", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagDefinition", + "text": "FeatureFlagDefinition" + }, + "<\"boolean\"> | ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagDefinition", + "text": "FeatureFlagDefinition" + }, + "<\"string\"> | ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagDefinition", + "text": "FeatureFlagDefinition" + }, + "<\"number\">)[]" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.FeatureFlagsRequestHandlerContext", + "type": "Type", + "tags": [], + "label": "FeatureFlagsRequestHandlerContext", + "description": [ + "\nThe HTTP request handler context for evaluating feature flags" + ], + "signature": [ + "{ getBooleanValue: (flagName: string, fallbackValue: boolean) => Promise; getStringValue: (flagName: string, fallbackValue: Value) => Promise; getNumberValue: (flagName: string, fallbackValue: Value) => Promise; }" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/request_handler_context.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.MultiContextEvaluationContext", + "type": "Type", + "tags": [], + "label": "MultiContextEvaluationContext", + "description": [ + "\nMulti-context format. The sub-contexts are provided in their nested properties." + ], + "signature": [ + "{ targetingKey?: string | undefined; } & Record & { kind: \"multi\"; organization?: ", + "EvaluationContext", + " | undefined; kibana?: ", + "EvaluationContext", + " | undefined; }" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server", + "id": "def-server.SingleContextEvaluationContext", + "type": "Type", + "tags": [], + "label": "SingleContextEvaluationContext", + "description": [ + "\nSingle Context format. If `kind` is not specified, it applies to the `kibana` sub-context." + ], + "signature": [ + "{ targetingKey?: string | undefined; } & Record & { kind?: \"kibana\" | \"organization\" | undefined; }" + ], + "path": "packages/core/feature-flags/core-feature-flags-server/src/contracts.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + } + ], + "objects": [] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_core_feature_flags_server.mdx b/api_docs/kbn_core_feature_flags_server.mdx new file mode 100644 index 0000000000000..3c8e56af7b14d --- /dev/null +++ b/api_docs/kbn_core_feature_flags_server.mdx @@ -0,0 +1,33 @@ +--- +#### +#### This document is auto-generated and is meant to be viewed inside our experimental, new docs system. +#### Reach out in #docs-engineering for more info. +#### +id: kibKbnCoreFeatureFlagsServerPluginApi +slug: /kibana-dev-docs/api/kbn-core-feature-flags-server +title: "@kbn/core-feature-flags-server" +image: https://source.unsplash.com/400x175/?github +description: API docs for the @kbn/core-feature-flags-server plugin +date: 2024-09-20 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-feature-flags-server'] +--- +import kbnCoreFeatureFlagsServerObj from './kbn_core_feature_flags_server.devdocs.json'; + + + +Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 38 | 0 | 0 | 0 | + +## Server + +### Interfaces + + +### Consts, variables and types + + diff --git a/api_docs/kbn_core_feature_flags_server_internal.devdocs.json b/api_docs/kbn_core_feature_flags_server_internal.devdocs.json new file mode 100644 index 0000000000000..b8515b428f6db --- /dev/null +++ b/api_docs/kbn_core_feature_flags_server_internal.devdocs.json @@ -0,0 +1,267 @@ +{ + "id": "@kbn/core-feature-flags-server-internal", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.FeatureFlagsService", + "type": "Class", + "tags": [ + "private" + ], + "label": "FeatureFlagsService", + "description": [ + "\nThe server-side Feature Flags Service" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.FeatureFlagsService.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [ + "\nThe core service's constructor" + ], + "signature": [ + "any" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.FeatureFlagsService.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "core", + "description": [ + "{@link CoreContext }" + ], + "signature": [ + "CoreContext" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.FeatureFlagsService.setup", + "type": "Function", + "tags": [], + "label": "setup", + "description": [ + "\nSetup lifecycle method" + ], + "signature": [ + "() => ", + { + "pluginId": "@kbn/core-feature-flags-server-internal", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerInternalPluginApi", + "section": "def-server.InternalFeatureFlagsSetup", + "text": "InternalFeatureFlagsSetup" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.FeatureFlagsService.start", + "type": "Function", + "tags": [], + "label": "start", + "description": [ + "\nStart lifecycle method" + ], + "signature": [ + "() => ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsStart", + "text": "FeatureFlagsStart" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.FeatureFlagsService.stop", + "type": "Function", + "tags": [], + "label": "stop", + "description": [ + "\nStop lifecycle method" + ], + "signature": [ + "() => Promise" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "functions": [], + "interfaces": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.InternalFeatureFlagsSetup", + "type": "Interface", + "tags": [ + "private" + ], + "label": "InternalFeatureFlagsSetup", + "description": [ + "\nCore-internal contract for the setup lifecycle step." + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server-internal", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerInternalPluginApi", + "section": "def-server.InternalFeatureFlagsSetup", + "text": "InternalFeatureFlagsSetup" + }, + " extends ", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + } + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.InternalFeatureFlagsSetup.getOverrides", + "type": "Function", + "tags": [], + "label": "getOverrides", + "description": [ + "\nUsed by the rendering service to share the overrides with the service on the browser side." + ], + "signature": [ + "() => Record" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [], + "objects": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.featureFlagsConfig", + "type": "Object", + "tags": [ + "private" + ], + "label": "featureFlagsConfig", + "description": [ + "\nConfig descriptor for the feature flags service" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_config.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.featureFlagsConfig.path", + "type": "string", + "tags": [], + "label": "path", + "description": [ + "/**\n * All config is prefixed by `feature_flags`\n */" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_config.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-internal", + "id": "def-server.featureFlagsConfig.schema", + "type": "Object", + "tags": [], + "label": "schema", + "description": [ + "/**\n * The definition of the validation config schema\n */" + ], + "signature": [ + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ overrides: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + " | undefined>; }>" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_config.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_core_feature_flags_server_internal.mdx b/api_docs/kbn_core_feature_flags_server_internal.mdx new file mode 100644 index 0000000000000..cc88d175dc185 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_server_internal.mdx @@ -0,0 +1,36 @@ +--- +#### +#### This document is auto-generated and is meant to be viewed inside our experimental, new docs system. +#### Reach out in #docs-engineering for more info. +#### +id: kibKbnCoreFeatureFlagsServerInternalPluginApi +slug: /kibana-dev-docs/api/kbn-core-feature-flags-server-internal +title: "@kbn/core-feature-flags-server-internal" +image: https://source.unsplash.com/400x175/?github +description: API docs for the @kbn/core-feature-flags-server-internal plugin +date: 2024-09-20 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-feature-flags-server-internal'] +--- +import kbnCoreFeatureFlagsServerInternalObj from './kbn_core_feature_flags_server_internal.devdocs.json'; + + + +Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 11 | 0 | 0 | 0 | + +## Server + +### Objects + + +### Classes + + +### Interfaces + + diff --git a/api_docs/kbn_core_feature_flags_server_mocks.devdocs.json b/api_docs/kbn_core_feature_flags_server_mocks.devdocs.json new file mode 100644 index 0000000000000..7c450607542c2 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_server_mocks.devdocs.json @@ -0,0 +1,182 @@ +{ + "id": "@kbn/core-feature-flags-server-mocks", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-mocks", + "id": "def-server.coreFeatureFlagsMock", + "type": "Object", + "tags": [], + "label": "coreFeatureFlagsMock", + "description": [ + "\nMocks for the Feature Flags service (browser-side)" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/core-feature-flags-server-mocks", + "id": "def-server.coreFeatureFlagsMock.create", + "type": "Function", + "tags": [], + "label": "create", + "description": [ + "/**\n * Mocks the entire feature flags service\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/utility-types", + "scope": "common", + "docId": "kibKbnUtilityTypesPluginApi", + "section": "def-common.PublicMethodsOf", + "text": "PublicMethodsOf" + }, + "<", + { + "pluginId": "@kbn/core-feature-flags-server-internal", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerInternalPluginApi", + "section": "def-server.FeatureFlagsService", + "text": "FeatureFlagsService" + }, + ">>" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-mocks", + "id": "def-server.coreFeatureFlagsMock.createInternalSetup", + "type": "Function", + "tags": [], + "label": "createInternalSetup", + "description": [ + "/**\n * Mocks the core-internal setup contract\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-server-internal", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerInternalPluginApi", + "section": "def-server.InternalFeatureFlagsSetup", + "text": "InternalFeatureFlagsSetup" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-mocks", + "id": "def-server.coreFeatureFlagsMock.createSetup", + "type": "Function", + "tags": [], + "label": "createSetup", + "description": [ + "/**\n * Mocks the setup contract\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-mocks", + "id": "def-server.coreFeatureFlagsMock.createStart", + "type": "Function", + "tags": [], + "label": "createStart", + "description": [ + "/**\n * Mocks the start contract\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + }, + { + "parentPluginId": "@kbn/core-feature-flags-server-mocks", + "id": "def-server.coreFeatureFlagsMock.createRequestHandlerContext", + "type": "Function", + "tags": [], + "label": "createRequestHandlerContext", + "description": [ + "/**\n * Mocks the request handler context contract\n */" + ], + "signature": [ + "() => jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsRequestHandlerContext", + "text": "FeatureFlagsRequestHandlerContext" + }, + ">" + ], + "path": "packages/core/feature-flags/core-feature-flags-server-mocks/index.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [] + } + ], + "initialIsOpen": false + } + ] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_core_feature_flags_server_mocks.mdx b/api_docs/kbn_core_feature_flags_server_mocks.mdx new file mode 100644 index 0000000000000..7e6e6d8b9e539 --- /dev/null +++ b/api_docs/kbn_core_feature_flags_server_mocks.mdx @@ -0,0 +1,30 @@ +--- +#### +#### This document is auto-generated and is meant to be viewed inside our experimental, new docs system. +#### Reach out in #docs-engineering for more info. +#### +id: kibKbnCoreFeatureFlagsServerMocksPluginApi +slug: /kibana-dev-docs/api/kbn-core-feature-flags-server-mocks +title: "@kbn/core-feature-flags-server-mocks" +image: https://source.unsplash.com/400x175/?github +description: API docs for the @kbn/core-feature-flags-server-mocks plugin +date: 2024-09-20 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-feature-flags-server-mocks'] +--- +import kbnCoreFeatureFlagsServerMocksObj from './kbn_core_feature_flags_server_mocks.devdocs.json'; + + + +Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 6 | 0 | 0 | 0 | + +## Server + +### Objects + + diff --git a/api_docs/kbn_core_http_browser.mdx b/api_docs/kbn_core_http_browser.mdx index 61be0b0a4ed55..6581b27a433f6 100644 --- a/api_docs/kbn_core_http_browser.mdx +++ b/api_docs/kbn_core_http_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-browser title: "@kbn/core-http-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-browser'] --- import kbnCoreHttpBrowserObj from './kbn_core_http_browser.devdocs.json'; diff --git a/api_docs/kbn_core_http_browser_internal.mdx b/api_docs/kbn_core_http_browser_internal.mdx index dc22767351e39..39563f17dc6e6 100644 --- a/api_docs/kbn_core_http_browser_internal.mdx +++ b/api_docs/kbn_core_http_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-browser-internal title: "@kbn/core-http-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-browser-internal'] --- import kbnCoreHttpBrowserInternalObj from './kbn_core_http_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_http_browser_mocks.mdx b/api_docs/kbn_core_http_browser_mocks.mdx index 4551c3ba09b3e..de937ef5a9668 100644 --- a/api_docs/kbn_core_http_browser_mocks.mdx +++ b/api_docs/kbn_core_http_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-browser-mocks title: "@kbn/core-http-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-browser-mocks'] --- import kbnCoreHttpBrowserMocksObj from './kbn_core_http_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_http_common.mdx b/api_docs/kbn_core_http_common.mdx index db09c2a9a7868..98c590162e705 100644 --- a/api_docs/kbn_core_http_common.mdx +++ b/api_docs/kbn_core_http_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-common title: "@kbn/core-http-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-common'] --- import kbnCoreHttpCommonObj from './kbn_core_http_common.devdocs.json'; diff --git a/api_docs/kbn_core_http_context_server_mocks.mdx b/api_docs/kbn_core_http_context_server_mocks.mdx index 1a579720428f7..1fb388fb50455 100644 --- a/api_docs/kbn_core_http_context_server_mocks.mdx +++ b/api_docs/kbn_core_http_context_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-context-server-mocks title: "@kbn/core-http-context-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-context-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-context-server-mocks'] --- import kbnCoreHttpContextServerMocksObj from './kbn_core_http_context_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_http_request_handler_context_server.devdocs.json b/api_docs/kbn_core_http_request_handler_context_server.devdocs.json index 92953db4a39e4..8bb3cb0dff266 100644 --- a/api_docs/kbn_core_http_request_handler_context_server.devdocs.json +++ b/api_docs/kbn_core_http_request_handler_context_server.devdocs.json @@ -31,7 +31,9 @@ "type": "Object", "tags": [], "label": "savedObjects", - "description": [], + "description": [ + "\n{@link SavedObjectsRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-saved-objects-server", @@ -51,7 +53,9 @@ "type": "Object", "tags": [], "label": "elasticsearch", - "description": [], + "description": [ + "\n{@link ElasticsearchRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-elasticsearch-server", @@ -65,13 +69,31 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "@kbn/core-http-request-handler-context-server", + "id": "def-server.CoreRequestHandlerContext.featureFlags", + "type": "Object", + "tags": [], + "label": "featureFlags", + "description": [ + "\n{@link FeatureFlagsRequestHandlerContext}" + ], + "signature": [ + "{ getBooleanValue: (flagName: string, fallbackValue: boolean) => Promise; getStringValue: (flagName: string, fallbackValue: Value) => Promise; getNumberValue: (flagName: string, fallbackValue: Value) => Promise; }" + ], + "path": "packages/core/http/core-http-request-handler-context-server/src/request_handler_context.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "@kbn/core-http-request-handler-context-server", "id": "def-server.CoreRequestHandlerContext.uiSettings", "type": "Object", "tags": [], "label": "uiSettings", - "description": [], + "description": [ + "\n{@link UiSettingsRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-ui-settings-server", @@ -91,7 +113,9 @@ "type": "Object", "tags": [], "label": "deprecations", - "description": [], + "description": [ + "\n{@link DeprecationsRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-deprecations-server", @@ -111,7 +135,9 @@ "type": "Object", "tags": [], "label": "security", - "description": [], + "description": [ + "\n{@link SecurityRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-security-server", @@ -131,7 +157,9 @@ "type": "Object", "tags": [], "label": "userProfile", - "description": [], + "description": [ + "\n{@link UserProfileRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-user-profile-server", @@ -154,7 +182,9 @@ "type": "Interface", "tags": [], "label": "PrebootCoreRequestHandlerContext", - "description": [], + "description": [ + "\nThe `core` context provided to route handler during the preboot phase." + ], "path": "packages/core/http/core-http-request-handler-context-server/src/preboot_request_handler_context.ts", "deprecated": false, "trackAdoption": false, @@ -165,7 +195,9 @@ "type": "Object", "tags": [], "label": "uiSettings", - "description": [], + "description": [ + "\n{@link PrebootUiSettingsRequestHandlerContext}" + ], "signature": [ { "pluginId": "@kbn/core-http-request-handler-context-server", @@ -188,7 +220,9 @@ "type": "Interface", "tags": [], "label": "PrebootRequestHandlerContext", - "description": [], + "description": [ + "\nBase context passed to a route handler during the preboot phase, containing the `core` context part." + ], "signature": [ { "pluginId": "@kbn/core-http-request-handler-context-server", @@ -216,7 +250,9 @@ "type": "Object", "tags": [], "label": "core", - "description": [], + "description": [ + "\nPromise that resolves the {@link PrebootCoreRequestHandlerContext}" + ], "signature": [ "Promise<", { @@ -241,7 +277,9 @@ "type": "Interface", "tags": [], "label": "PrebootUiSettingsRequestHandlerContext", - "description": [], + "description": [ + "\n`uiSettings` http request context provider during the preboot phase." + ], "path": "packages/core/http/core-http-request-handler-context-server/src/preboot_request_handler_context.ts", "deprecated": false, "trackAdoption": false, @@ -252,7 +290,9 @@ "type": "Object", "tags": [], "label": "client", - "description": [], + "description": [ + "\nThe {@link IUiSettingsClient | UI Settings client}." + ], "signature": [ { "pluginId": "@kbn/core-ui-settings-server", @@ -305,7 +345,9 @@ "type": "Object", "tags": [], "label": "core", - "description": [], + "description": [ + "\nPromise that resolves the {@link CoreRequestHandlerContext}" + ], "signature": [ "Promise<", { diff --git a/api_docs/kbn_core_http_request_handler_context_server.mdx b/api_docs/kbn_core_http_request_handler_context_server.mdx index d731693893a86..fa0aa8cc8e05f 100644 --- a/api_docs/kbn_core_http_request_handler_context_server.mdx +++ b/api_docs/kbn_core_http_request_handler_context_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-request-handler-context-server title: "@kbn/core-http-request-handler-context-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-request-handler-context-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-request-handler-context-server'] --- import kbnCoreHttpRequestHandlerContextServerObj from './kbn_core_http_request_handler_context_server.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 16 | 0 | 13 | 0 | +| 17 | 0 | 0 | 0 | ## Server diff --git a/api_docs/kbn_core_http_resources_server.mdx b/api_docs/kbn_core_http_resources_server.mdx index c3df575a1da21..683850b8ea017 100644 --- a/api_docs/kbn_core_http_resources_server.mdx +++ b/api_docs/kbn_core_http_resources_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-resources-server title: "@kbn/core-http-resources-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-resources-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-resources-server'] --- import kbnCoreHttpResourcesServerObj from './kbn_core_http_resources_server.devdocs.json'; diff --git a/api_docs/kbn_core_http_resources_server_internal.mdx b/api_docs/kbn_core_http_resources_server_internal.mdx index 8a0577c4b90d0..74f803867f54d 100644 --- a/api_docs/kbn_core_http_resources_server_internal.mdx +++ b/api_docs/kbn_core_http_resources_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-resources-server-internal title: "@kbn/core-http-resources-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-resources-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-resources-server-internal'] --- import kbnCoreHttpResourcesServerInternalObj from './kbn_core_http_resources_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_http_resources_server_mocks.mdx b/api_docs/kbn_core_http_resources_server_mocks.mdx index da5066b59b6bc..27b6a34ec58fd 100644 --- a/api_docs/kbn_core_http_resources_server_mocks.mdx +++ b/api_docs/kbn_core_http_resources_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-resources-server-mocks title: "@kbn/core-http-resources-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-resources-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-resources-server-mocks'] --- import kbnCoreHttpResourcesServerMocksObj from './kbn_core_http_resources_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_http_router_server_internal.mdx b/api_docs/kbn_core_http_router_server_internal.mdx index bebfe0c6ea899..5136ae90c0ceb 100644 --- a/api_docs/kbn_core_http_router_server_internal.mdx +++ b/api_docs/kbn_core_http_router_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-router-server-internal title: "@kbn/core-http-router-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-router-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-router-server-internal'] --- import kbnCoreHttpRouterServerInternalObj from './kbn_core_http_router_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_http_router_server_mocks.mdx b/api_docs/kbn_core_http_router_server_mocks.mdx index d92f6c6db61b8..3942218a1ab16 100644 --- a/api_docs/kbn_core_http_router_server_mocks.mdx +++ b/api_docs/kbn_core_http_router_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-router-server-mocks title: "@kbn/core-http-router-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-router-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-router-server-mocks'] --- import kbnCoreHttpRouterServerMocksObj from './kbn_core_http_router_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_http_server.devdocs.json b/api_docs/kbn_core_http_server.devdocs.json index 3ceda5885b570..09c0da0905891 100644 --- a/api_docs/kbn_core_http_server.devdocs.json +++ b/api_docs/kbn_core_http_server.devdocs.json @@ -3998,6 +3998,10 @@ "plugin": "triggersActionsUi", "path": "x-pack/plugins/triggers_actions_ui/server/routes/config.ts" }, + { + "plugin": "inference", + "path": "x-pack/plugins/inference/server/routes/connectors.ts" + }, { "plugin": "globalSearch", "path": "x-pack/plugins/global_search/server/routes/get_searchable_types.ts" @@ -4442,10 +4446,6 @@ "plugin": "indexLifecycleManagement", "path": "x-pack/plugins/index_lifecycle_management/server/routes/api/snapshot_repositories/register_fetch_route.ts" }, - { - "plugin": "inference", - "path": "x-pack/plugins/inference/server/routes/connectors.ts" - }, { "plugin": "ingestPipelines", "path": "x-pack/plugins/ingest_pipelines/server/routes/api/get.ts" @@ -6688,6 +6688,10 @@ "plugin": "triggersActionsUi", "path": "x-pack/plugins/triggers_actions_ui/server/data/routes/indices.ts" }, + { + "plugin": "inference", + "path": "x-pack/plugins/inference/server/routes/chat_complete.ts" + }, { "plugin": "globalSearch", "path": "x-pack/plugins/global_search/server/routes/find.ts" @@ -7060,10 +7064,6 @@ "plugin": "indexLifecycleManagement", "path": "x-pack/plugins/index_lifecycle_management/server/routes/api/templates/register_add_policy_route.ts" }, - { - "plugin": "inference", - "path": "x-pack/plugins/inference/server/routes/chat_complete.ts" - }, { "plugin": "ingestPipelines", "path": "x-pack/plugins/ingest_pipelines/server/routes/api/create.ts" @@ -7236,6 +7236,10 @@ "plugin": "searchPlayground", "path": "x-pack/plugins/search_playground/server/routes.ts" }, + { + "plugin": "searchPlayground", + "path": "x-pack/plugins/search_playground/server/routes.ts" + }, { "plugin": "searchprofiler", "path": "x-pack/plugins/searchprofiler/server/routes/profile.ts" @@ -14250,6 +14254,10 @@ "plugin": "@kbn/core-metrics-server-internal", "path": "packages/core/metrics/core-metrics-server-internal/src/routes/elu_history.ts" }, + { + "plugin": "cloud", + "path": "x-pack/plugins/cloud/server/routes/elasticsearch_routes.ts" + }, { "plugin": "@kbn/core-http-router-server-mocks", "path": "packages/core/http/core-http-router-server-mocks/src/versioned_router.mock.ts" @@ -15018,6 +15026,18 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/risk_engine/routes/settings.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/entities/list.ts" + }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/get.ts" + }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/list.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/routes/metadata/index.ts" @@ -16472,6 +16492,18 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/risk_engine/routes/schedule_now.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/init.ts" + }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/start.ts" + }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/stop.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/routes/actions/response_actions.ts" @@ -16564,6 +16596,10 @@ "plugin": "synthetics", "path": "x-pack/plugins/observability_solution/synthetics/server/server.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/stats.ts" + }, { "plugin": "controls", "path": "src/plugins/controls/server/options_list/options_list_suggestions_route.ts" @@ -17030,6 +17066,10 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/asset_criticality/routes/delete.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/lib/entity_analytics/entity_store/routes/delete.ts" + }, { "plugin": "synthetics", "path": "x-pack/plugins/observability_solution/synthetics/server/server.ts" diff --git a/api_docs/kbn_core_http_server.mdx b/api_docs/kbn_core_http_server.mdx index 8267ac272233d..c4ab7c580b611 100644 --- a/api_docs/kbn_core_http_server.mdx +++ b/api_docs/kbn_core_http_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-server title: "@kbn/core-http-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-server'] --- import kbnCoreHttpServerObj from './kbn_core_http_server.devdocs.json'; diff --git a/api_docs/kbn_core_http_server_internal.mdx b/api_docs/kbn_core_http_server_internal.mdx index e8fb07352b982..33e9a0c3ade6f 100644 --- a/api_docs/kbn_core_http_server_internal.mdx +++ b/api_docs/kbn_core_http_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-server-internal title: "@kbn/core-http-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-server-internal'] --- import kbnCoreHttpServerInternalObj from './kbn_core_http_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_http_server_mocks.mdx b/api_docs/kbn_core_http_server_mocks.mdx index d9b26755f3bee..f4075a90bc72e 100644 --- a/api_docs/kbn_core_http_server_mocks.mdx +++ b/api_docs/kbn_core_http_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-http-server-mocks title: "@kbn/core-http-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-http-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-server-mocks'] --- import kbnCoreHttpServerMocksObj from './kbn_core_http_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_i18n_browser.mdx b/api_docs/kbn_core_i18n_browser.mdx index 9e8140935a19e..572b3e7d794d5 100644 --- a/api_docs/kbn_core_i18n_browser.mdx +++ b/api_docs/kbn_core_i18n_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-i18n-browser title: "@kbn/core-i18n-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-i18n-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-i18n-browser'] --- import kbnCoreI18nBrowserObj from './kbn_core_i18n_browser.devdocs.json'; diff --git a/api_docs/kbn_core_i18n_browser_mocks.mdx b/api_docs/kbn_core_i18n_browser_mocks.mdx index 3d00ba9302dfb..e2d673d573808 100644 --- a/api_docs/kbn_core_i18n_browser_mocks.mdx +++ b/api_docs/kbn_core_i18n_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-i18n-browser-mocks title: "@kbn/core-i18n-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-i18n-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-i18n-browser-mocks'] --- import kbnCoreI18nBrowserMocksObj from './kbn_core_i18n_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_i18n_server.mdx b/api_docs/kbn_core_i18n_server.mdx index eae90099a6639..f6581fb208883 100644 --- a/api_docs/kbn_core_i18n_server.mdx +++ b/api_docs/kbn_core_i18n_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-i18n-server title: "@kbn/core-i18n-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-i18n-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-i18n-server'] --- import kbnCoreI18nServerObj from './kbn_core_i18n_server.devdocs.json'; diff --git a/api_docs/kbn_core_i18n_server_internal.mdx b/api_docs/kbn_core_i18n_server_internal.mdx index ef5ec29bbb9ad..89b76e6a28e09 100644 --- a/api_docs/kbn_core_i18n_server_internal.mdx +++ b/api_docs/kbn_core_i18n_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-i18n-server-internal title: "@kbn/core-i18n-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-i18n-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-i18n-server-internal'] --- import kbnCoreI18nServerInternalObj from './kbn_core_i18n_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_i18n_server_mocks.mdx b/api_docs/kbn_core_i18n_server_mocks.mdx index 9c1b3c95106c2..745b7c04b9a98 100644 --- a/api_docs/kbn_core_i18n_server_mocks.mdx +++ b/api_docs/kbn_core_i18n_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-i18n-server-mocks title: "@kbn/core-i18n-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-i18n-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-i18n-server-mocks'] --- import kbnCoreI18nServerMocksObj from './kbn_core_i18n_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_injected_metadata_browser_mocks.mdx b/api_docs/kbn_core_injected_metadata_browser_mocks.mdx index f010c8b75273f..1300a21202f63 100644 --- a/api_docs/kbn_core_injected_metadata_browser_mocks.mdx +++ b/api_docs/kbn_core_injected_metadata_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-injected-metadata-browser-mocks title: "@kbn/core-injected-metadata-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-injected-metadata-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-injected-metadata-browser-mocks'] --- import kbnCoreInjectedMetadataBrowserMocksObj from './kbn_core_injected_metadata_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_integrations_browser_internal.mdx b/api_docs/kbn_core_integrations_browser_internal.mdx index 32d348478ffef..1504c5944d490 100644 --- a/api_docs/kbn_core_integrations_browser_internal.mdx +++ b/api_docs/kbn_core_integrations_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-integrations-browser-internal title: "@kbn/core-integrations-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-integrations-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-integrations-browser-internal'] --- import kbnCoreIntegrationsBrowserInternalObj from './kbn_core_integrations_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_integrations_browser_mocks.mdx b/api_docs/kbn_core_integrations_browser_mocks.mdx index f1208b2d1da65..b17bb74133b52 100644 --- a/api_docs/kbn_core_integrations_browser_mocks.mdx +++ b/api_docs/kbn_core_integrations_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-integrations-browser-mocks title: "@kbn/core-integrations-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-integrations-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-integrations-browser-mocks'] --- import kbnCoreIntegrationsBrowserMocksObj from './kbn_core_integrations_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_lifecycle_browser.devdocs.json b/api_docs/kbn_core_lifecycle_browser.devdocs.json index 295994fc63a54..6dc2ededac6e0 100644 --- a/api_docs/kbn_core_lifecycle_browser.devdocs.json +++ b/api_docs/kbn_core_lifecycle_browser.devdocs.json @@ -125,6 +125,28 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "@kbn/core-lifecycle-browser", + "id": "def-public.CoreSetup.featureFlags", + "type": "Object", + "tags": [], + "label": "featureFlags", + "description": [ + "{@link FeatureFlagsSetup}" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + } + ], + "path": "packages/core/lifecycle/core-lifecycle-browser/src/core_setup.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "@kbn/core-lifecycle-browser", "id": "def-public.CoreSetup.http", @@ -499,6 +521,28 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "@kbn/core-lifecycle-browser", + "id": "def-public.CoreStart.featureFlags", + "type": "Object", + "tags": [], + "label": "featureFlags", + "description": [ + "{@link FeatureFlagsStart}" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsStart", + "text": "FeatureFlagsStart" + } + ], + "path": "packages/core/lifecycle/core-lifecycle-browser/src/core_start.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "@kbn/core-lifecycle-browser", "id": "def-public.CoreStart.http", diff --git a/api_docs/kbn_core_lifecycle_browser.mdx b/api_docs/kbn_core_lifecycle_browser.mdx index c91fcf1bb2342..01d2f1a69dedc 100644 --- a/api_docs/kbn_core_lifecycle_browser.mdx +++ b/api_docs/kbn_core_lifecycle_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-lifecycle-browser title: "@kbn/core-lifecycle-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-lifecycle-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-lifecycle-browser'] --- import kbnCoreLifecycleBrowserObj from './kbn_core_lifecycle_browser.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 36 | 0 | 0 | 0 | +| 38 | 0 | 0 | 0 | ## Client diff --git a/api_docs/kbn_core_lifecycle_browser_mocks.devdocs.json b/api_docs/kbn_core_lifecycle_browser_mocks.devdocs.json index cb694e0347a00..253d371df5591 100644 --- a/api_docs/kbn_core_lifecycle_browser_mocks.devdocs.json +++ b/api_docs/kbn_core_lifecycle_browser_mocks.devdocs.json @@ -70,6 +70,14 @@ "section": "def-public.FatalErrorsSetup", "text": "FatalErrorsSetup" }, + ">; featureFlags: jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + }, ">; getStartServices: jest.Mock; featureFlags: jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, ">; http: ", { "pluginId": "@kbn/core-http-browser-mocks", @@ -401,6 +417,14 @@ "section": "def-public.ExecutionContextSetup", "text": "ExecutionContextSetup" }, + ">; featureFlags: jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, ">; http: ", { "pluginId": "@kbn/core-http-browser-mocks", diff --git a/api_docs/kbn_core_lifecycle_browser_mocks.mdx b/api_docs/kbn_core_lifecycle_browser_mocks.mdx index 8d702b8382f38..1428d7bba9204 100644 --- a/api_docs/kbn_core_lifecycle_browser_mocks.mdx +++ b/api_docs/kbn_core_lifecycle_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-lifecycle-browser-mocks title: "@kbn/core-lifecycle-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-lifecycle-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-lifecycle-browser-mocks'] --- import kbnCoreLifecycleBrowserMocksObj from './kbn_core_lifecycle_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_lifecycle_server.devdocs.json b/api_docs/kbn_core_lifecycle_server.devdocs.json index bc9633a4c0006..9176697ed155e 100644 --- a/api_docs/kbn_core_lifecycle_server.devdocs.json +++ b/api_docs/kbn_core_lifecycle_server.devdocs.json @@ -300,6 +300,28 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "@kbn/core-lifecycle-server", + "id": "def-server.CoreSetup.featureFlags", + "type": "Object", + "tags": [], + "label": "featureFlags", + "description": [ + "{@link FeatureFlagsSetup}" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsSetup", + "text": "FeatureFlagsSetup" + } + ], + "path": "packages/core/lifecycle/core-lifecycle-server/src/core_setup.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "@kbn/core-lifecycle-server", "id": "def-server.CoreSetup.http", @@ -755,6 +777,28 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "@kbn/core-lifecycle-server", + "id": "def-server.CoreStart.featureFlags", + "type": "Object", + "tags": [], + "label": "featureFlags", + "description": [ + "{@link FeatureFlagsStart}" + ], + "signature": [ + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsStart", + "text": "FeatureFlagsStart" + } + ], + "path": "packages/core/lifecycle/core-lifecycle-server/src/core_start.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "@kbn/core-lifecycle-server", "id": "def-server.CoreStart.http", diff --git a/api_docs/kbn_core_lifecycle_server.mdx b/api_docs/kbn_core_lifecycle_server.mdx index cdde236c79842..994a83ba82b76 100644 --- a/api_docs/kbn_core_lifecycle_server.mdx +++ b/api_docs/kbn_core_lifecycle_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-lifecycle-server title: "@kbn/core-lifecycle-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-lifecycle-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-lifecycle-server'] --- import kbnCoreLifecycleServerObj from './kbn_core_lifecycle_server.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 40 | 0 | 0 | 0 | +| 42 | 0 | 0 | 0 | ## Server diff --git a/api_docs/kbn_core_lifecycle_server_mocks.devdocs.json b/api_docs/kbn_core_lifecycle_server_mocks.devdocs.json index 0cb5b13788926..b0e66b991dc36 100644 --- a/api_docs/kbn_core_lifecycle_server_mocks.devdocs.json +++ b/api_docs/kbn_core_lifecycle_server_mocks.devdocs.json @@ -114,7 +114,15 @@ "section": "def-server.DocLinksServiceSetup", "text": "DocLinksServiceSetup" }, - "; elasticsearch: MockedInternalElasticSearchServiceSetup; http: ", + "; elasticsearch: MockedInternalElasticSearchServiceSetup; featureFlags: jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-server-internal", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerInternalPluginApi", + "section": "def-server.InternalFeatureFlagsSetup", + "text": "InternalFeatureFlagsSetup" + }, + ">; http: ", { "pluginId": "@kbn/core-http-server-mocks", "scope": "server", @@ -234,7 +242,15 @@ "section": "def-server.DocLinksServiceSetup", "text": "DocLinksServiceSetup" }, - "; elasticsearch: MockedInternalElasticsearchServiceStart; http: ", + "; elasticsearch: MockedInternalElasticsearchServiceStart; featureFlags: jest.Mocked<", + { + "pluginId": "@kbn/core-feature-flags-server", + "scope": "server", + "docId": "kibKbnCoreFeatureFlagsServerPluginApi", + "section": "def-server.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, + ">; http: ", { "pluginId": "@kbn/core-http-server-mocks", "scope": "server", diff --git a/api_docs/kbn_core_lifecycle_server_mocks.mdx b/api_docs/kbn_core_lifecycle_server_mocks.mdx index 87528841eea11..070677f5edb47 100644 --- a/api_docs/kbn_core_lifecycle_server_mocks.mdx +++ b/api_docs/kbn_core_lifecycle_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-lifecycle-server-mocks title: "@kbn/core-lifecycle-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-lifecycle-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-lifecycle-server-mocks'] --- import kbnCoreLifecycleServerMocksObj from './kbn_core_lifecycle_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_logging_browser_mocks.mdx b/api_docs/kbn_core_logging_browser_mocks.mdx index e5ea66d095629..a784834b0ab25 100644 --- a/api_docs/kbn_core_logging_browser_mocks.mdx +++ b/api_docs/kbn_core_logging_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-logging-browser-mocks title: "@kbn/core-logging-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-logging-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-logging-browser-mocks'] --- import kbnCoreLoggingBrowserMocksObj from './kbn_core_logging_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_logging_common_internal.mdx b/api_docs/kbn_core_logging_common_internal.mdx index 15c7161f20b31..435290205514e 100644 --- a/api_docs/kbn_core_logging_common_internal.mdx +++ b/api_docs/kbn_core_logging_common_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-logging-common-internal title: "@kbn/core-logging-common-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-logging-common-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-logging-common-internal'] --- import kbnCoreLoggingCommonInternalObj from './kbn_core_logging_common_internal.devdocs.json'; diff --git a/api_docs/kbn_core_logging_server.mdx b/api_docs/kbn_core_logging_server.mdx index f3938004d1bf4..9aa501d7e97c3 100644 --- a/api_docs/kbn_core_logging_server.mdx +++ b/api_docs/kbn_core_logging_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-logging-server title: "@kbn/core-logging-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-logging-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-logging-server'] --- import kbnCoreLoggingServerObj from './kbn_core_logging_server.devdocs.json'; diff --git a/api_docs/kbn_core_logging_server_internal.mdx b/api_docs/kbn_core_logging_server_internal.mdx index 2eedaaf5c530d..e29ff073f19dd 100644 --- a/api_docs/kbn_core_logging_server_internal.mdx +++ b/api_docs/kbn_core_logging_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-logging-server-internal title: "@kbn/core-logging-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-logging-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-logging-server-internal'] --- import kbnCoreLoggingServerInternalObj from './kbn_core_logging_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_logging_server_mocks.mdx b/api_docs/kbn_core_logging_server_mocks.mdx index 8da2b1f519cf6..c7a164b03f9d8 100644 --- a/api_docs/kbn_core_logging_server_mocks.mdx +++ b/api_docs/kbn_core_logging_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-logging-server-mocks title: "@kbn/core-logging-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-logging-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-logging-server-mocks'] --- import kbnCoreLoggingServerMocksObj from './kbn_core_logging_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_metrics_collectors_server_internal.mdx b/api_docs/kbn_core_metrics_collectors_server_internal.mdx index ead61b1758574..d7f31e54092b3 100644 --- a/api_docs/kbn_core_metrics_collectors_server_internal.mdx +++ b/api_docs/kbn_core_metrics_collectors_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-metrics-collectors-server-internal title: "@kbn/core-metrics-collectors-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-metrics-collectors-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-metrics-collectors-server-internal'] --- import kbnCoreMetricsCollectorsServerInternalObj from './kbn_core_metrics_collectors_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_metrics_collectors_server_mocks.mdx b/api_docs/kbn_core_metrics_collectors_server_mocks.mdx index e80ad71c5139c..3e2663580b27e 100644 --- a/api_docs/kbn_core_metrics_collectors_server_mocks.mdx +++ b/api_docs/kbn_core_metrics_collectors_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-metrics-collectors-server-mocks title: "@kbn/core-metrics-collectors-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-metrics-collectors-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-metrics-collectors-server-mocks'] --- import kbnCoreMetricsCollectorsServerMocksObj from './kbn_core_metrics_collectors_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_metrics_server.mdx b/api_docs/kbn_core_metrics_server.mdx index 2372703cf6d21..20cec39f84f09 100644 --- a/api_docs/kbn_core_metrics_server.mdx +++ b/api_docs/kbn_core_metrics_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-metrics-server title: "@kbn/core-metrics-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-metrics-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-metrics-server'] --- import kbnCoreMetricsServerObj from './kbn_core_metrics_server.devdocs.json'; diff --git a/api_docs/kbn_core_metrics_server_internal.mdx b/api_docs/kbn_core_metrics_server_internal.mdx index 2d049dae63595..4601edb2a7de4 100644 --- a/api_docs/kbn_core_metrics_server_internal.mdx +++ b/api_docs/kbn_core_metrics_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-metrics-server-internal title: "@kbn/core-metrics-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-metrics-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-metrics-server-internal'] --- import kbnCoreMetricsServerInternalObj from './kbn_core_metrics_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_metrics_server_mocks.mdx b/api_docs/kbn_core_metrics_server_mocks.mdx index fdf27ca280067..aac17040622d0 100644 --- a/api_docs/kbn_core_metrics_server_mocks.mdx +++ b/api_docs/kbn_core_metrics_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-metrics-server-mocks title: "@kbn/core-metrics-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-metrics-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-metrics-server-mocks'] --- import kbnCoreMetricsServerMocksObj from './kbn_core_metrics_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_mount_utils_browser.mdx b/api_docs/kbn_core_mount_utils_browser.mdx index 3bdddcb8eca75..6784b9db8fcb7 100644 --- a/api_docs/kbn_core_mount_utils_browser.mdx +++ b/api_docs/kbn_core_mount_utils_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-mount-utils-browser title: "@kbn/core-mount-utils-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-mount-utils-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-mount-utils-browser'] --- import kbnCoreMountUtilsBrowserObj from './kbn_core_mount_utils_browser.devdocs.json'; diff --git a/api_docs/kbn_core_node_server.mdx b/api_docs/kbn_core_node_server.mdx index bcda7033730f3..5714c0edb0cfe 100644 --- a/api_docs/kbn_core_node_server.mdx +++ b/api_docs/kbn_core_node_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-node-server title: "@kbn/core-node-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-node-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-node-server'] --- import kbnCoreNodeServerObj from './kbn_core_node_server.devdocs.json'; diff --git a/api_docs/kbn_core_node_server_internal.mdx b/api_docs/kbn_core_node_server_internal.mdx index 887b3b3b9471c..ae966cf6df326 100644 --- a/api_docs/kbn_core_node_server_internal.mdx +++ b/api_docs/kbn_core_node_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-node-server-internal title: "@kbn/core-node-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-node-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-node-server-internal'] --- import kbnCoreNodeServerInternalObj from './kbn_core_node_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_node_server_mocks.mdx b/api_docs/kbn_core_node_server_mocks.mdx index cd64a225c7a76..c0821cca9849f 100644 --- a/api_docs/kbn_core_node_server_mocks.mdx +++ b/api_docs/kbn_core_node_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-node-server-mocks title: "@kbn/core-node-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-node-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-node-server-mocks'] --- import kbnCoreNodeServerMocksObj from './kbn_core_node_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_notifications_browser.mdx b/api_docs/kbn_core_notifications_browser.mdx index 8cce4107aa925..23e411acec090 100644 --- a/api_docs/kbn_core_notifications_browser.mdx +++ b/api_docs/kbn_core_notifications_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-notifications-browser title: "@kbn/core-notifications-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-notifications-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-notifications-browser'] --- import kbnCoreNotificationsBrowserObj from './kbn_core_notifications_browser.devdocs.json'; diff --git a/api_docs/kbn_core_notifications_browser_internal.mdx b/api_docs/kbn_core_notifications_browser_internal.mdx index df3f6e41e3e1b..da6a5a60284c8 100644 --- a/api_docs/kbn_core_notifications_browser_internal.mdx +++ b/api_docs/kbn_core_notifications_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-notifications-browser-internal title: "@kbn/core-notifications-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-notifications-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-notifications-browser-internal'] --- import kbnCoreNotificationsBrowserInternalObj from './kbn_core_notifications_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_notifications_browser_mocks.mdx b/api_docs/kbn_core_notifications_browser_mocks.mdx index 3cc718ccb17f8..93d669b58506c 100644 --- a/api_docs/kbn_core_notifications_browser_mocks.mdx +++ b/api_docs/kbn_core_notifications_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-notifications-browser-mocks title: "@kbn/core-notifications-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-notifications-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-notifications-browser-mocks'] --- import kbnCoreNotificationsBrowserMocksObj from './kbn_core_notifications_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_overlays_browser.mdx b/api_docs/kbn_core_overlays_browser.mdx index 89305a5b91734..4a210019f8e46 100644 --- a/api_docs/kbn_core_overlays_browser.mdx +++ b/api_docs/kbn_core_overlays_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-overlays-browser title: "@kbn/core-overlays-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-overlays-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-overlays-browser'] --- import kbnCoreOverlaysBrowserObj from './kbn_core_overlays_browser.devdocs.json'; diff --git a/api_docs/kbn_core_overlays_browser_internal.mdx b/api_docs/kbn_core_overlays_browser_internal.mdx index 1e1af76e01831..3ce320d69585f 100644 --- a/api_docs/kbn_core_overlays_browser_internal.mdx +++ b/api_docs/kbn_core_overlays_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-overlays-browser-internal title: "@kbn/core-overlays-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-overlays-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-overlays-browser-internal'] --- import kbnCoreOverlaysBrowserInternalObj from './kbn_core_overlays_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_overlays_browser_mocks.mdx b/api_docs/kbn_core_overlays_browser_mocks.mdx index f378a489ec147..29240fe4f2445 100644 --- a/api_docs/kbn_core_overlays_browser_mocks.mdx +++ b/api_docs/kbn_core_overlays_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-overlays-browser-mocks title: "@kbn/core-overlays-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-overlays-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-overlays-browser-mocks'] --- import kbnCoreOverlaysBrowserMocksObj from './kbn_core_overlays_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_plugins_browser.mdx b/api_docs/kbn_core_plugins_browser.mdx index a0568812f41ac..0d0523e658cc9 100644 --- a/api_docs/kbn_core_plugins_browser.mdx +++ b/api_docs/kbn_core_plugins_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-plugins-browser title: "@kbn/core-plugins-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-plugins-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-plugins-browser'] --- import kbnCorePluginsBrowserObj from './kbn_core_plugins_browser.devdocs.json'; diff --git a/api_docs/kbn_core_plugins_browser_mocks.mdx b/api_docs/kbn_core_plugins_browser_mocks.mdx index 652a957d550ec..3ab790b55730e 100644 --- a/api_docs/kbn_core_plugins_browser_mocks.mdx +++ b/api_docs/kbn_core_plugins_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-plugins-browser-mocks title: "@kbn/core-plugins-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-plugins-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-plugins-browser-mocks'] --- import kbnCorePluginsBrowserMocksObj from './kbn_core_plugins_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_plugins_contracts_browser.mdx b/api_docs/kbn_core_plugins_contracts_browser.mdx index b9efa108d2f86..754be4a572a58 100644 --- a/api_docs/kbn_core_plugins_contracts_browser.mdx +++ b/api_docs/kbn_core_plugins_contracts_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-plugins-contracts-browser title: "@kbn/core-plugins-contracts-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-plugins-contracts-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-plugins-contracts-browser'] --- import kbnCorePluginsContractsBrowserObj from './kbn_core_plugins_contracts_browser.devdocs.json'; diff --git a/api_docs/kbn_core_plugins_contracts_server.mdx b/api_docs/kbn_core_plugins_contracts_server.mdx index 6348383b66a9e..ee9582a69e320 100644 --- a/api_docs/kbn_core_plugins_contracts_server.mdx +++ b/api_docs/kbn_core_plugins_contracts_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-plugins-contracts-server title: "@kbn/core-plugins-contracts-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-plugins-contracts-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-plugins-contracts-server'] --- import kbnCorePluginsContractsServerObj from './kbn_core_plugins_contracts_server.devdocs.json'; diff --git a/api_docs/kbn_core_plugins_server.mdx b/api_docs/kbn_core_plugins_server.mdx index c8bcbd18ff193..b38859c3592d3 100644 --- a/api_docs/kbn_core_plugins_server.mdx +++ b/api_docs/kbn_core_plugins_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-plugins-server title: "@kbn/core-plugins-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-plugins-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-plugins-server'] --- import kbnCorePluginsServerObj from './kbn_core_plugins_server.devdocs.json'; diff --git a/api_docs/kbn_core_plugins_server_mocks.mdx b/api_docs/kbn_core_plugins_server_mocks.mdx index 2e73a3b7ecffb..fc208a8c8eadb 100644 --- a/api_docs/kbn_core_plugins_server_mocks.mdx +++ b/api_docs/kbn_core_plugins_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-plugins-server-mocks title: "@kbn/core-plugins-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-plugins-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-plugins-server-mocks'] --- import kbnCorePluginsServerMocksObj from './kbn_core_plugins_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_preboot_server.mdx b/api_docs/kbn_core_preboot_server.mdx index 6a7c04d0a3449..7e1d2c3bb5d7b 100644 --- a/api_docs/kbn_core_preboot_server.mdx +++ b/api_docs/kbn_core_preboot_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-preboot-server title: "@kbn/core-preboot-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-preboot-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-preboot-server'] --- import kbnCorePrebootServerObj from './kbn_core_preboot_server.devdocs.json'; diff --git a/api_docs/kbn_core_preboot_server_mocks.mdx b/api_docs/kbn_core_preboot_server_mocks.mdx index 085f9d9e67bf3..dc1363e7d04d7 100644 --- a/api_docs/kbn_core_preboot_server_mocks.mdx +++ b/api_docs/kbn_core_preboot_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-preboot-server-mocks title: "@kbn/core-preboot-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-preboot-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-preboot-server-mocks'] --- import kbnCorePrebootServerMocksObj from './kbn_core_preboot_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_rendering_browser_mocks.mdx b/api_docs/kbn_core_rendering_browser_mocks.mdx index b3833f739d3ed..60a9a00f25a98 100644 --- a/api_docs/kbn_core_rendering_browser_mocks.mdx +++ b/api_docs/kbn_core_rendering_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-rendering-browser-mocks title: "@kbn/core-rendering-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-rendering-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-rendering-browser-mocks'] --- import kbnCoreRenderingBrowserMocksObj from './kbn_core_rendering_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_rendering_server_internal.mdx b/api_docs/kbn_core_rendering_server_internal.mdx index 7d277c1218886..a5c9f1dc465bd 100644 --- a/api_docs/kbn_core_rendering_server_internal.mdx +++ b/api_docs/kbn_core_rendering_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-rendering-server-internal title: "@kbn/core-rendering-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-rendering-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-rendering-server-internal'] --- import kbnCoreRenderingServerInternalObj from './kbn_core_rendering_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_rendering_server_mocks.mdx b/api_docs/kbn_core_rendering_server_mocks.mdx index 64639b5376cf3..4fad97ab7aac1 100644 --- a/api_docs/kbn_core_rendering_server_mocks.mdx +++ b/api_docs/kbn_core_rendering_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-rendering-server-mocks title: "@kbn/core-rendering-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-rendering-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-rendering-server-mocks'] --- import kbnCoreRenderingServerMocksObj from './kbn_core_rendering_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_root_server_internal.mdx b/api_docs/kbn_core_root_server_internal.mdx index f5e1821fe2df7..f32003757cc90 100644 --- a/api_docs/kbn_core_root_server_internal.mdx +++ b/api_docs/kbn_core_root_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-root-server-internal title: "@kbn/core-root-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-root-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-root-server-internal'] --- import kbnCoreRootServerInternalObj from './kbn_core_root_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_api_browser.mdx b/api_docs/kbn_core_saved_objects_api_browser.mdx index 6d3a27d87f263..9f707d1d6e060 100644 --- a/api_docs/kbn_core_saved_objects_api_browser.mdx +++ b/api_docs/kbn_core_saved_objects_api_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-api-browser title: "@kbn/core-saved-objects-api-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-api-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-api-browser'] --- import kbnCoreSavedObjectsApiBrowserObj from './kbn_core_saved_objects_api_browser.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_api_server.mdx b/api_docs/kbn_core_saved_objects_api_server.mdx index a4bcf57e3681c..50f69840d6595 100644 --- a/api_docs/kbn_core_saved_objects_api_server.mdx +++ b/api_docs/kbn_core_saved_objects_api_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-api-server title: "@kbn/core-saved-objects-api-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-api-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-api-server'] --- import kbnCoreSavedObjectsApiServerObj from './kbn_core_saved_objects_api_server.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_api_server_mocks.mdx b/api_docs/kbn_core_saved_objects_api_server_mocks.mdx index 043e473a20ff9..1de78b7a10488 100644 --- a/api_docs/kbn_core_saved_objects_api_server_mocks.mdx +++ b/api_docs/kbn_core_saved_objects_api_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-api-server-mocks title: "@kbn/core-saved-objects-api-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-api-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-api-server-mocks'] --- import kbnCoreSavedObjectsApiServerMocksObj from './kbn_core_saved_objects_api_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_base_server_internal.mdx b/api_docs/kbn_core_saved_objects_base_server_internal.mdx index fdab7bdf94f1d..9fdb3f23ed250 100644 --- a/api_docs/kbn_core_saved_objects_base_server_internal.mdx +++ b/api_docs/kbn_core_saved_objects_base_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-base-server-internal title: "@kbn/core-saved-objects-base-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-base-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-base-server-internal'] --- import kbnCoreSavedObjectsBaseServerInternalObj from './kbn_core_saved_objects_base_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_base_server_mocks.mdx b/api_docs/kbn_core_saved_objects_base_server_mocks.mdx index 30d014db8ed89..7b9e79b6ff359 100644 --- a/api_docs/kbn_core_saved_objects_base_server_mocks.mdx +++ b/api_docs/kbn_core_saved_objects_base_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-base-server-mocks title: "@kbn/core-saved-objects-base-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-base-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-base-server-mocks'] --- import kbnCoreSavedObjectsBaseServerMocksObj from './kbn_core_saved_objects_base_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_browser.mdx b/api_docs/kbn_core_saved_objects_browser.mdx index 67387b08b956e..113598d0cce62 100644 --- a/api_docs/kbn_core_saved_objects_browser.mdx +++ b/api_docs/kbn_core_saved_objects_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-browser title: "@kbn/core-saved-objects-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-browser'] --- import kbnCoreSavedObjectsBrowserObj from './kbn_core_saved_objects_browser.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_browser_internal.mdx b/api_docs/kbn_core_saved_objects_browser_internal.mdx index c68f30a6e4de0..ad7018f0925a1 100644 --- a/api_docs/kbn_core_saved_objects_browser_internal.mdx +++ b/api_docs/kbn_core_saved_objects_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-browser-internal title: "@kbn/core-saved-objects-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-browser-internal'] --- import kbnCoreSavedObjectsBrowserInternalObj from './kbn_core_saved_objects_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_browser_mocks.mdx b/api_docs/kbn_core_saved_objects_browser_mocks.mdx index 6702daa6184db..b265190a58015 100644 --- a/api_docs/kbn_core_saved_objects_browser_mocks.mdx +++ b/api_docs/kbn_core_saved_objects_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-browser-mocks title: "@kbn/core-saved-objects-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-browser-mocks'] --- import kbnCoreSavedObjectsBrowserMocksObj from './kbn_core_saved_objects_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_common.devdocs.json b/api_docs/kbn_core_saved_objects_common.devdocs.json index 6c85981032c4b..0f46f3e03e417 100644 --- a/api_docs/kbn_core_saved_objects_common.devdocs.json +++ b/api_docs/kbn_core_saved_objects_common.devdocs.json @@ -2482,54 +2482,6 @@ "plugin": "lens", "path": "x-pack/plugins/lens/common/embeddable_factory/index.ts" }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/options_list/options_list_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/options_list/options_list_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/options_list/options_list_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/range_slider/range_slider_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/range_slider/range_slider_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/range_slider/range_slider_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/time_slider/time_slider_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/time_slider/time_slider_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/time_slider/time_slider_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/control_group/control_group_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/control_group/control_group_persistable_state.ts" - }, - { - "plugin": "controls", - "path": "src/plugins/controls/common/control_group/control_group_persistable_state.ts" - }, { "plugin": "canvas", "path": "x-pack/plugins/canvas/canvas_plugin_src/functions/external/saved_lens.ts" @@ -2650,6 +2602,54 @@ "plugin": "globalSearchProviders", "path": "x-pack/plugins/global_search_providers/server/providers/saved_objects/map_object_to_result.test.ts" }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/control_group/control_group_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/control_group/control_group_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/control_group/control_group_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/options_list/options_list_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/options_list/options_list_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/options_list/options_list_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/range_slider/range_slider_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/range_slider/range_slider_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/range_slider/range_slider_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/time_slider/time_slider_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/time_slider/time_slider_persistable_state.ts" + }, + { + "plugin": "controls", + "path": "src/plugins/controls/server/time_slider/time_slider_persistable_state.ts" + }, { "plugin": "expressions", "path": "src/plugins/expressions/common/executor/executor.test.ts" diff --git a/api_docs/kbn_core_saved_objects_common.mdx b/api_docs/kbn_core_saved_objects_common.mdx index 826ec0fdd6ee6..b1a6ea2f55cfa 100644 --- a/api_docs/kbn_core_saved_objects_common.mdx +++ b/api_docs/kbn_core_saved_objects_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-common title: "@kbn/core-saved-objects-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-common'] --- import kbnCoreSavedObjectsCommonObj from './kbn_core_saved_objects_common.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_import_export_server_internal.mdx b/api_docs/kbn_core_saved_objects_import_export_server_internal.mdx index ed5f3c383f41c..0e9fbb6164f8c 100644 --- a/api_docs/kbn_core_saved_objects_import_export_server_internal.mdx +++ b/api_docs/kbn_core_saved_objects_import_export_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-import-export-server-internal title: "@kbn/core-saved-objects-import-export-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-import-export-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-import-export-server-internal'] --- import kbnCoreSavedObjectsImportExportServerInternalObj from './kbn_core_saved_objects_import_export_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_import_export_server_mocks.mdx b/api_docs/kbn_core_saved_objects_import_export_server_mocks.mdx index 797909c8702cb..d29d87fd91bae 100644 --- a/api_docs/kbn_core_saved_objects_import_export_server_mocks.mdx +++ b/api_docs/kbn_core_saved_objects_import_export_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-import-export-server-mocks title: "@kbn/core-saved-objects-import-export-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-import-export-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-import-export-server-mocks'] --- import kbnCoreSavedObjectsImportExportServerMocksObj from './kbn_core_saved_objects_import_export_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_migration_server_internal.mdx b/api_docs/kbn_core_saved_objects_migration_server_internal.mdx index ec8afbba97d31..068a045258233 100644 --- a/api_docs/kbn_core_saved_objects_migration_server_internal.mdx +++ b/api_docs/kbn_core_saved_objects_migration_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-migration-server-internal title: "@kbn/core-saved-objects-migration-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-migration-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-migration-server-internal'] --- import kbnCoreSavedObjectsMigrationServerInternalObj from './kbn_core_saved_objects_migration_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_migration_server_mocks.mdx b/api_docs/kbn_core_saved_objects_migration_server_mocks.mdx index b631da28cb914..a3f59f852bd1e 100644 --- a/api_docs/kbn_core_saved_objects_migration_server_mocks.mdx +++ b/api_docs/kbn_core_saved_objects_migration_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-migration-server-mocks title: "@kbn/core-saved-objects-migration-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-migration-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-migration-server-mocks'] --- import kbnCoreSavedObjectsMigrationServerMocksObj from './kbn_core_saved_objects_migration_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_server.mdx b/api_docs/kbn_core_saved_objects_server.mdx index 1d93a99a4a400..41e0f0ff877d7 100644 --- a/api_docs/kbn_core_saved_objects_server.mdx +++ b/api_docs/kbn_core_saved_objects_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-server title: "@kbn/core-saved-objects-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-server'] --- import kbnCoreSavedObjectsServerObj from './kbn_core_saved_objects_server.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_server_internal.mdx b/api_docs/kbn_core_saved_objects_server_internal.mdx index 1b7ed797bbe8e..182ac9ef9ff42 100644 --- a/api_docs/kbn_core_saved_objects_server_internal.mdx +++ b/api_docs/kbn_core_saved_objects_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-server-internal title: "@kbn/core-saved-objects-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-server-internal'] --- import kbnCoreSavedObjectsServerInternalObj from './kbn_core_saved_objects_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_server_mocks.mdx b/api_docs/kbn_core_saved_objects_server_mocks.mdx index 24be9a429b1b3..05478dd57cd3f 100644 --- a/api_docs/kbn_core_saved_objects_server_mocks.mdx +++ b/api_docs/kbn_core_saved_objects_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-server-mocks title: "@kbn/core-saved-objects-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-server-mocks'] --- import kbnCoreSavedObjectsServerMocksObj from './kbn_core_saved_objects_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_saved_objects_utils_server.mdx b/api_docs/kbn_core_saved_objects_utils_server.mdx index 7c68d79393db2..88804661dee3e 100644 --- a/api_docs/kbn_core_saved_objects_utils_server.mdx +++ b/api_docs/kbn_core_saved_objects_utils_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-saved-objects-utils-server title: "@kbn/core-saved-objects-utils-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-saved-objects-utils-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-saved-objects-utils-server'] --- import kbnCoreSavedObjectsUtilsServerObj from './kbn_core_saved_objects_utils_server.devdocs.json'; diff --git a/api_docs/kbn_core_security_browser.mdx b/api_docs/kbn_core_security_browser.mdx index 188d36b3a2be4..2b07674a841ff 100644 --- a/api_docs/kbn_core_security_browser.mdx +++ b/api_docs/kbn_core_security_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-browser title: "@kbn/core-security-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-browser'] --- import kbnCoreSecurityBrowserObj from './kbn_core_security_browser.devdocs.json'; diff --git a/api_docs/kbn_core_security_browser_internal.mdx b/api_docs/kbn_core_security_browser_internal.mdx index f43f182f98229..404934cb202e4 100644 --- a/api_docs/kbn_core_security_browser_internal.mdx +++ b/api_docs/kbn_core_security_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-browser-internal title: "@kbn/core-security-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-browser-internal'] --- import kbnCoreSecurityBrowserInternalObj from './kbn_core_security_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_security_browser_mocks.mdx b/api_docs/kbn_core_security_browser_mocks.mdx index bd82e6ac32142..370b685a57c70 100644 --- a/api_docs/kbn_core_security_browser_mocks.mdx +++ b/api_docs/kbn_core_security_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-browser-mocks title: "@kbn/core-security-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-browser-mocks'] --- import kbnCoreSecurityBrowserMocksObj from './kbn_core_security_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_security_common.mdx b/api_docs/kbn_core_security_common.mdx index 0cad54309f9bb..fca01cc52a684 100644 --- a/api_docs/kbn_core_security_common.mdx +++ b/api_docs/kbn_core_security_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-common title: "@kbn/core-security-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-common'] --- import kbnCoreSecurityCommonObj from './kbn_core_security_common.devdocs.json'; diff --git a/api_docs/kbn_core_security_server.mdx b/api_docs/kbn_core_security_server.mdx index ac179f1ea4c61..1d05dc4eda100 100644 --- a/api_docs/kbn_core_security_server.mdx +++ b/api_docs/kbn_core_security_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-server title: "@kbn/core-security-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-server'] --- import kbnCoreSecurityServerObj from './kbn_core_security_server.devdocs.json'; diff --git a/api_docs/kbn_core_security_server_internal.mdx b/api_docs/kbn_core_security_server_internal.mdx index 4dae3f48804d6..0b31c9f906cca 100644 --- a/api_docs/kbn_core_security_server_internal.mdx +++ b/api_docs/kbn_core_security_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-server-internal title: "@kbn/core-security-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-server-internal'] --- import kbnCoreSecurityServerInternalObj from './kbn_core_security_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_security_server_mocks.mdx b/api_docs/kbn_core_security_server_mocks.mdx index 21ec8acd07f01..6dea71309d750 100644 --- a/api_docs/kbn_core_security_server_mocks.mdx +++ b/api_docs/kbn_core_security_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-security-server-mocks title: "@kbn/core-security-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-security-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-security-server-mocks'] --- import kbnCoreSecurityServerMocksObj from './kbn_core_security_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_status_common.mdx b/api_docs/kbn_core_status_common.mdx index 88c7ba4e9e23e..27c3150dfa9e8 100644 --- a/api_docs/kbn_core_status_common.mdx +++ b/api_docs/kbn_core_status_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-status-common title: "@kbn/core-status-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-status-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-status-common'] --- import kbnCoreStatusCommonObj from './kbn_core_status_common.devdocs.json'; diff --git a/api_docs/kbn_core_status_common_internal.mdx b/api_docs/kbn_core_status_common_internal.mdx index 100d54f6e4879..2938d7935e408 100644 --- a/api_docs/kbn_core_status_common_internal.mdx +++ b/api_docs/kbn_core_status_common_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-status-common-internal title: "@kbn/core-status-common-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-status-common-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-status-common-internal'] --- import kbnCoreStatusCommonInternalObj from './kbn_core_status_common_internal.devdocs.json'; diff --git a/api_docs/kbn_core_status_server.mdx b/api_docs/kbn_core_status_server.mdx index fd3dd82aa754d..167264cf6968a 100644 --- a/api_docs/kbn_core_status_server.mdx +++ b/api_docs/kbn_core_status_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-status-server title: "@kbn/core-status-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-status-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-status-server'] --- import kbnCoreStatusServerObj from './kbn_core_status_server.devdocs.json'; diff --git a/api_docs/kbn_core_status_server_internal.mdx b/api_docs/kbn_core_status_server_internal.mdx index a1926e3fb486e..e328391fdfccb 100644 --- a/api_docs/kbn_core_status_server_internal.mdx +++ b/api_docs/kbn_core_status_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-status-server-internal title: "@kbn/core-status-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-status-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-status-server-internal'] --- import kbnCoreStatusServerInternalObj from './kbn_core_status_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_status_server_mocks.mdx b/api_docs/kbn_core_status_server_mocks.mdx index e75ab77fb3fc8..0a749cde2d3fe 100644 --- a/api_docs/kbn_core_status_server_mocks.mdx +++ b/api_docs/kbn_core_status_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-status-server-mocks title: "@kbn/core-status-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-status-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-status-server-mocks'] --- import kbnCoreStatusServerMocksObj from './kbn_core_status_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_test_helpers_deprecations_getters.mdx b/api_docs/kbn_core_test_helpers_deprecations_getters.mdx index ec9eff57347c2..b2447ca543b20 100644 --- a/api_docs/kbn_core_test_helpers_deprecations_getters.mdx +++ b/api_docs/kbn_core_test_helpers_deprecations_getters.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-test-helpers-deprecations-getters title: "@kbn/core-test-helpers-deprecations-getters" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-test-helpers-deprecations-getters plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-test-helpers-deprecations-getters'] --- import kbnCoreTestHelpersDeprecationsGettersObj from './kbn_core_test_helpers_deprecations_getters.devdocs.json'; diff --git a/api_docs/kbn_core_test_helpers_http_setup_browser.devdocs.json b/api_docs/kbn_core_test_helpers_http_setup_browser.devdocs.json index aa57c4bb46738..af410ee15c4d9 100644 --- a/api_docs/kbn_core_test_helpers_http_setup_browser.devdocs.json +++ b/api_docs/kbn_core_test_helpers_http_setup_browser.devdocs.json @@ -139,7 +139,7 @@ "section": "def-common.CustomBranding", "text": "CustomBranding" }, - ", [], unknown>; } & ", + ", [], unknown>; getFeatureFlags: jest.MockInstance<{ overrides: Record; } | undefined, [], unknown>; } & ", "InternalInjectedMetadataSetup" ], "path": "packages/core/test-helpers/core-test-helpers-http-setup-browser/src/http_test_setup.ts", diff --git a/api_docs/kbn_core_test_helpers_http_setup_browser.mdx b/api_docs/kbn_core_test_helpers_http_setup_browser.mdx index 9608a2c90110c..8a32872c2f4f3 100644 --- a/api_docs/kbn_core_test_helpers_http_setup_browser.mdx +++ b/api_docs/kbn_core_test_helpers_http_setup_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-test-helpers-http-setup-browser title: "@kbn/core-test-helpers-http-setup-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-test-helpers-http-setup-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-test-helpers-http-setup-browser'] --- import kbnCoreTestHelpersHttpSetupBrowserObj from './kbn_core_test_helpers_http_setup_browser.devdocs.json'; diff --git a/api_docs/kbn_core_test_helpers_kbn_server.mdx b/api_docs/kbn_core_test_helpers_kbn_server.mdx index f9d1b537e58ce..22e77d7c7f3f1 100644 --- a/api_docs/kbn_core_test_helpers_kbn_server.mdx +++ b/api_docs/kbn_core_test_helpers_kbn_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-test-helpers-kbn-server title: "@kbn/core-test-helpers-kbn-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-test-helpers-kbn-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-test-helpers-kbn-server'] --- import kbnCoreTestHelpersKbnServerObj from './kbn_core_test_helpers_kbn_server.devdocs.json'; diff --git a/api_docs/kbn_core_test_helpers_model_versions.mdx b/api_docs/kbn_core_test_helpers_model_versions.mdx index 2cbee006f1e5b..85ea3227f70f6 100644 --- a/api_docs/kbn_core_test_helpers_model_versions.mdx +++ b/api_docs/kbn_core_test_helpers_model_versions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-test-helpers-model-versions title: "@kbn/core-test-helpers-model-versions" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-test-helpers-model-versions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-test-helpers-model-versions'] --- import kbnCoreTestHelpersModelVersionsObj from './kbn_core_test_helpers_model_versions.devdocs.json'; diff --git a/api_docs/kbn_core_test_helpers_so_type_serializer.mdx b/api_docs/kbn_core_test_helpers_so_type_serializer.mdx index 626449c698a16..8084cd7052ff6 100644 --- a/api_docs/kbn_core_test_helpers_so_type_serializer.mdx +++ b/api_docs/kbn_core_test_helpers_so_type_serializer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-test-helpers-so-type-serializer title: "@kbn/core-test-helpers-so-type-serializer" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-test-helpers-so-type-serializer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-test-helpers-so-type-serializer'] --- import kbnCoreTestHelpersSoTypeSerializerObj from './kbn_core_test_helpers_so_type_serializer.devdocs.json'; diff --git a/api_docs/kbn_core_test_helpers_test_utils.mdx b/api_docs/kbn_core_test_helpers_test_utils.mdx index f48630a187b03..ddf102f4269cf 100644 --- a/api_docs/kbn_core_test_helpers_test_utils.mdx +++ b/api_docs/kbn_core_test_helpers_test_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-test-helpers-test-utils title: "@kbn/core-test-helpers-test-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-test-helpers-test-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-test-helpers-test-utils'] --- import kbnCoreTestHelpersTestUtilsObj from './kbn_core_test_helpers_test_utils.devdocs.json'; diff --git a/api_docs/kbn_core_theme_browser.mdx b/api_docs/kbn_core_theme_browser.mdx index f297480ed6b3a..08e292b39c766 100644 --- a/api_docs/kbn_core_theme_browser.mdx +++ b/api_docs/kbn_core_theme_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-theme-browser title: "@kbn/core-theme-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-theme-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-theme-browser'] --- import kbnCoreThemeBrowserObj from './kbn_core_theme_browser.devdocs.json'; diff --git a/api_docs/kbn_core_theme_browser_mocks.mdx b/api_docs/kbn_core_theme_browser_mocks.mdx index 34161d02910e2..3f09d8540b65e 100644 --- a/api_docs/kbn_core_theme_browser_mocks.mdx +++ b/api_docs/kbn_core_theme_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-theme-browser-mocks title: "@kbn/core-theme-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-theme-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-theme-browser-mocks'] --- import kbnCoreThemeBrowserMocksObj from './kbn_core_theme_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_browser.mdx b/api_docs/kbn_core_ui_settings_browser.mdx index e4e9dd21291f1..33ce5b9b9046c 100644 --- a/api_docs/kbn_core_ui_settings_browser.mdx +++ b/api_docs/kbn_core_ui_settings_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-browser title: "@kbn/core-ui-settings-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-browser'] --- import kbnCoreUiSettingsBrowserObj from './kbn_core_ui_settings_browser.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_browser_internal.mdx b/api_docs/kbn_core_ui_settings_browser_internal.mdx index e98a69122cfba..e3a7d3448de4b 100644 --- a/api_docs/kbn_core_ui_settings_browser_internal.mdx +++ b/api_docs/kbn_core_ui_settings_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-browser-internal title: "@kbn/core-ui-settings-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-browser-internal'] --- import kbnCoreUiSettingsBrowserInternalObj from './kbn_core_ui_settings_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_browser_mocks.mdx b/api_docs/kbn_core_ui_settings_browser_mocks.mdx index 3faefc8b89cf4..244ace3d1d5a4 100644 --- a/api_docs/kbn_core_ui_settings_browser_mocks.mdx +++ b/api_docs/kbn_core_ui_settings_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-browser-mocks title: "@kbn/core-ui-settings-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-browser-mocks'] --- import kbnCoreUiSettingsBrowserMocksObj from './kbn_core_ui_settings_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_common.mdx b/api_docs/kbn_core_ui_settings_common.mdx index c53ffcc1bea3b..f04725ac0f4a2 100644 --- a/api_docs/kbn_core_ui_settings_common.mdx +++ b/api_docs/kbn_core_ui_settings_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-common title: "@kbn/core-ui-settings-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-common'] --- import kbnCoreUiSettingsCommonObj from './kbn_core_ui_settings_common.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_server.mdx b/api_docs/kbn_core_ui_settings_server.mdx index ff54486e38222..fa0cedc6cc5bc 100644 --- a/api_docs/kbn_core_ui_settings_server.mdx +++ b/api_docs/kbn_core_ui_settings_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-server title: "@kbn/core-ui-settings-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-server'] --- import kbnCoreUiSettingsServerObj from './kbn_core_ui_settings_server.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_server_internal.mdx b/api_docs/kbn_core_ui_settings_server_internal.mdx index 9e6afde1a2a67..afa4b334e2ca7 100644 --- a/api_docs/kbn_core_ui_settings_server_internal.mdx +++ b/api_docs/kbn_core_ui_settings_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-server-internal title: "@kbn/core-ui-settings-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-server-internal'] --- import kbnCoreUiSettingsServerInternalObj from './kbn_core_ui_settings_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_ui_settings_server_mocks.mdx b/api_docs/kbn_core_ui_settings_server_mocks.mdx index 46d2ecbc68a86..f841888198821 100644 --- a/api_docs/kbn_core_ui_settings_server_mocks.mdx +++ b/api_docs/kbn_core_ui_settings_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-ui-settings-server-mocks title: "@kbn/core-ui-settings-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-ui-settings-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-ui-settings-server-mocks'] --- import kbnCoreUiSettingsServerMocksObj from './kbn_core_ui_settings_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_usage_data_server.mdx b/api_docs/kbn_core_usage_data_server.mdx index e05b557faef7c..416271b709016 100644 --- a/api_docs/kbn_core_usage_data_server.mdx +++ b/api_docs/kbn_core_usage_data_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-usage-data-server title: "@kbn/core-usage-data-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-usage-data-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-usage-data-server'] --- import kbnCoreUsageDataServerObj from './kbn_core_usage_data_server.devdocs.json'; diff --git a/api_docs/kbn_core_usage_data_server_internal.mdx b/api_docs/kbn_core_usage_data_server_internal.mdx index bfef508232741..2250c920259d8 100644 --- a/api_docs/kbn_core_usage_data_server_internal.mdx +++ b/api_docs/kbn_core_usage_data_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-usage-data-server-internal title: "@kbn/core-usage-data-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-usage-data-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-usage-data-server-internal'] --- import kbnCoreUsageDataServerInternalObj from './kbn_core_usage_data_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_usage_data_server_mocks.mdx b/api_docs/kbn_core_usage_data_server_mocks.mdx index e9a49cba00b5f..ef6d57ac016a0 100644 --- a/api_docs/kbn_core_usage_data_server_mocks.mdx +++ b/api_docs/kbn_core_usage_data_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-usage-data-server-mocks title: "@kbn/core-usage-data-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-usage-data-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-usage-data-server-mocks'] --- import kbnCoreUsageDataServerMocksObj from './kbn_core_usage_data_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_browser.mdx b/api_docs/kbn_core_user_profile_browser.mdx index d1f14e2c46d63..b00ee8f92391a 100644 --- a/api_docs/kbn_core_user_profile_browser.mdx +++ b/api_docs/kbn_core_user_profile_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-browser title: "@kbn/core-user-profile-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-browser'] --- import kbnCoreUserProfileBrowserObj from './kbn_core_user_profile_browser.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_browser_internal.mdx b/api_docs/kbn_core_user_profile_browser_internal.mdx index 6eafd8e35bca7..dcda0d2da190d 100644 --- a/api_docs/kbn_core_user_profile_browser_internal.mdx +++ b/api_docs/kbn_core_user_profile_browser_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-browser-internal title: "@kbn/core-user-profile-browser-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-browser-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-browser-internal'] --- import kbnCoreUserProfileBrowserInternalObj from './kbn_core_user_profile_browser_internal.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_browser_mocks.mdx b/api_docs/kbn_core_user_profile_browser_mocks.mdx index 7485b3ebbb913..b641b8aab8423 100644 --- a/api_docs/kbn_core_user_profile_browser_mocks.mdx +++ b/api_docs/kbn_core_user_profile_browser_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-browser-mocks title: "@kbn/core-user-profile-browser-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-browser-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-browser-mocks'] --- import kbnCoreUserProfileBrowserMocksObj from './kbn_core_user_profile_browser_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_common.mdx b/api_docs/kbn_core_user_profile_common.mdx index bec4a7e4c6527..e88c9817c8bd6 100644 --- a/api_docs/kbn_core_user_profile_common.mdx +++ b/api_docs/kbn_core_user_profile_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-common title: "@kbn/core-user-profile-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-common'] --- import kbnCoreUserProfileCommonObj from './kbn_core_user_profile_common.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_server.mdx b/api_docs/kbn_core_user_profile_server.mdx index 4a08cd62b359f..6757aa3cbbbde 100644 --- a/api_docs/kbn_core_user_profile_server.mdx +++ b/api_docs/kbn_core_user_profile_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-server title: "@kbn/core-user-profile-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-server'] --- import kbnCoreUserProfileServerObj from './kbn_core_user_profile_server.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_server_internal.mdx b/api_docs/kbn_core_user_profile_server_internal.mdx index fb80b2213934b..b485c8d65ee70 100644 --- a/api_docs/kbn_core_user_profile_server_internal.mdx +++ b/api_docs/kbn_core_user_profile_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-server-internal title: "@kbn/core-user-profile-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-server-internal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-server-internal'] --- import kbnCoreUserProfileServerInternalObj from './kbn_core_user_profile_server_internal.devdocs.json'; diff --git a/api_docs/kbn_core_user_profile_server_mocks.mdx b/api_docs/kbn_core_user_profile_server_mocks.mdx index 304e9c4a6129b..09f2e8d0aa38f 100644 --- a/api_docs/kbn_core_user_profile_server_mocks.mdx +++ b/api_docs/kbn_core_user_profile_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-profile-server-mocks title: "@kbn/core-user-profile-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-profile-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-profile-server-mocks'] --- import kbnCoreUserProfileServerMocksObj from './kbn_core_user_profile_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_core_user_settings_server.mdx b/api_docs/kbn_core_user_settings_server.mdx index 48149a8705613..789b890f63a8a 100644 --- a/api_docs/kbn_core_user_settings_server.mdx +++ b/api_docs/kbn_core_user_settings_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-settings-server title: "@kbn/core-user-settings-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-settings-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-settings-server'] --- import kbnCoreUserSettingsServerObj from './kbn_core_user_settings_server.devdocs.json'; diff --git a/api_docs/kbn_core_user_settings_server_mocks.mdx b/api_docs/kbn_core_user_settings_server_mocks.mdx index e3036ccf40e2d..92bea164a66b6 100644 --- a/api_docs/kbn_core_user_settings_server_mocks.mdx +++ b/api_docs/kbn_core_user_settings_server_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-settings-server-mocks title: "@kbn/core-user-settings-server-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-settings-server-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-settings-server-mocks'] --- import kbnCoreUserSettingsServerMocksObj from './kbn_core_user_settings_server_mocks.devdocs.json'; diff --git a/api_docs/kbn_crypto.mdx b/api_docs/kbn_crypto.mdx index 218f5ce1b4fbe..4da22952fe0b1 100644 --- a/api_docs/kbn_crypto.mdx +++ b/api_docs/kbn_crypto.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-crypto title: "@kbn/crypto" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/crypto plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/crypto'] --- import kbnCryptoObj from './kbn_crypto.devdocs.json'; diff --git a/api_docs/kbn_crypto_browser.mdx b/api_docs/kbn_crypto_browser.mdx index f93d62ab7b860..40d3518592a6a 100644 --- a/api_docs/kbn_crypto_browser.mdx +++ b/api_docs/kbn_crypto_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-crypto-browser title: "@kbn/crypto-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/crypto-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/crypto-browser'] --- import kbnCryptoBrowserObj from './kbn_crypto_browser.devdocs.json'; diff --git a/api_docs/kbn_custom_icons.mdx b/api_docs/kbn_custom_icons.mdx index a604b5f7d67ba..677203ee949f2 100644 --- a/api_docs/kbn_custom_icons.mdx +++ b/api_docs/kbn_custom_icons.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-custom-icons title: "@kbn/custom-icons" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/custom-icons plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/custom-icons'] --- import kbnCustomIconsObj from './kbn_custom_icons.devdocs.json'; diff --git a/api_docs/kbn_custom_integrations.mdx b/api_docs/kbn_custom_integrations.mdx index 677464e163f5f..789df75ad4612 100644 --- a/api_docs/kbn_custom_integrations.mdx +++ b/api_docs/kbn_custom_integrations.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-custom-integrations title: "@kbn/custom-integrations" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/custom-integrations plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/custom-integrations'] --- import kbnCustomIntegrationsObj from './kbn_custom_integrations.devdocs.json'; diff --git a/api_docs/kbn_cypress_config.mdx b/api_docs/kbn_cypress_config.mdx index 9212af971bc9a..6b13bbb320acf 100644 --- a/api_docs/kbn_cypress_config.mdx +++ b/api_docs/kbn_cypress_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-cypress-config title: "@kbn/cypress-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/cypress-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cypress-config'] --- import kbnCypressConfigObj from './kbn_cypress_config.devdocs.json'; diff --git a/api_docs/kbn_data_forge.mdx b/api_docs/kbn_data_forge.mdx index ffe5bc0599ed1..7c3643b70bf25 100644 --- a/api_docs/kbn_data_forge.mdx +++ b/api_docs/kbn_data_forge.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-data-forge title: "@kbn/data-forge" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/data-forge plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/data-forge'] --- import kbnDataForgeObj from './kbn_data_forge.devdocs.json'; diff --git a/api_docs/kbn_data_service.mdx b/api_docs/kbn_data_service.mdx index 21167e1c0c3f9..796a710bcf2ec 100644 --- a/api_docs/kbn_data_service.mdx +++ b/api_docs/kbn_data_service.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-data-service title: "@kbn/data-service" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/data-service plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/data-service'] --- import kbnDataServiceObj from './kbn_data_service.devdocs.json'; diff --git a/api_docs/kbn_data_stream_adapter.mdx b/api_docs/kbn_data_stream_adapter.mdx index a1bfc3a561eb5..5f9c0221fb775 100644 --- a/api_docs/kbn_data_stream_adapter.mdx +++ b/api_docs/kbn_data_stream_adapter.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-data-stream-adapter title: "@kbn/data-stream-adapter" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/data-stream-adapter plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/data-stream-adapter'] --- import kbnDataStreamAdapterObj from './kbn_data_stream_adapter.devdocs.json'; diff --git a/api_docs/kbn_data_view_utils.mdx b/api_docs/kbn_data_view_utils.mdx index 7e5d95f6a35ac..ff65b6aa2b1c3 100644 --- a/api_docs/kbn_data_view_utils.mdx +++ b/api_docs/kbn_data_view_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-data-view-utils title: "@kbn/data-view-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/data-view-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/data-view-utils'] --- import kbnDataViewUtilsObj from './kbn_data_view_utils.devdocs.json'; diff --git a/api_docs/kbn_datemath.mdx b/api_docs/kbn_datemath.mdx index 5805ff251e48b..90801531cfb7d 100644 --- a/api_docs/kbn_datemath.mdx +++ b/api_docs/kbn_datemath.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-datemath title: "@kbn/datemath" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/datemath plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/datemath'] --- import kbnDatemathObj from './kbn_datemath.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_analytics.mdx b/api_docs/kbn_deeplinks_analytics.mdx index 3eaf1529882b6..8a0af7518fac0 100644 --- a/api_docs/kbn_deeplinks_analytics.mdx +++ b/api_docs/kbn_deeplinks_analytics.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-analytics title: "@kbn/deeplinks-analytics" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-analytics plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-analytics'] --- import kbnDeeplinksAnalyticsObj from './kbn_deeplinks_analytics.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_devtools.mdx b/api_docs/kbn_deeplinks_devtools.mdx index 59577356c8116..584d52922b71b 100644 --- a/api_docs/kbn_deeplinks_devtools.mdx +++ b/api_docs/kbn_deeplinks_devtools.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-devtools title: "@kbn/deeplinks-devtools" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-devtools plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-devtools'] --- import kbnDeeplinksDevtoolsObj from './kbn_deeplinks_devtools.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_fleet.mdx b/api_docs/kbn_deeplinks_fleet.mdx index 64db325878077..66f41a3165955 100644 --- a/api_docs/kbn_deeplinks_fleet.mdx +++ b/api_docs/kbn_deeplinks_fleet.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-fleet title: "@kbn/deeplinks-fleet" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-fleet plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-fleet'] --- import kbnDeeplinksFleetObj from './kbn_deeplinks_fleet.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_management.mdx b/api_docs/kbn_deeplinks_management.mdx index 1500804687668..60ef86014accb 100644 --- a/api_docs/kbn_deeplinks_management.mdx +++ b/api_docs/kbn_deeplinks_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-management title: "@kbn/deeplinks-management" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-management plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-management'] --- import kbnDeeplinksManagementObj from './kbn_deeplinks_management.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_ml.mdx b/api_docs/kbn_deeplinks_ml.mdx index f54e6a8337ef7..da561029a8f40 100644 --- a/api_docs/kbn_deeplinks_ml.mdx +++ b/api_docs/kbn_deeplinks_ml.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-ml title: "@kbn/deeplinks-ml" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-ml plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-ml'] --- import kbnDeeplinksMlObj from './kbn_deeplinks_ml.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_observability.mdx b/api_docs/kbn_deeplinks_observability.mdx index 2e07fa3b3de57..66424a2fa8250 100644 --- a/api_docs/kbn_deeplinks_observability.mdx +++ b/api_docs/kbn_deeplinks_observability.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-observability title: "@kbn/deeplinks-observability" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-observability plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-observability'] --- import kbnDeeplinksObservabilityObj from './kbn_deeplinks_observability.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_search.mdx b/api_docs/kbn_deeplinks_search.mdx index b7e70207b1528..8d84d81c1579c 100644 --- a/api_docs/kbn_deeplinks_search.mdx +++ b/api_docs/kbn_deeplinks_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-search title: "@kbn/deeplinks-search" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-search plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-search'] --- import kbnDeeplinksSearchObj from './kbn_deeplinks_search.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_security.mdx b/api_docs/kbn_deeplinks_security.mdx index 3f9609d4cfd24..eef7d14f86dd2 100644 --- a/api_docs/kbn_deeplinks_security.mdx +++ b/api_docs/kbn_deeplinks_security.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-security title: "@kbn/deeplinks-security" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-security plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-security'] --- import kbnDeeplinksSecurityObj from './kbn_deeplinks_security.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_shared.mdx b/api_docs/kbn_deeplinks_shared.mdx index 6431437e9e6dc..66f4832448278 100644 --- a/api_docs/kbn_deeplinks_shared.mdx +++ b/api_docs/kbn_deeplinks_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-deeplinks-shared title: "@kbn/deeplinks-shared" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/deeplinks-shared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-shared'] --- import kbnDeeplinksSharedObj from './kbn_deeplinks_shared.devdocs.json'; diff --git a/api_docs/kbn_default_nav_analytics.mdx b/api_docs/kbn_default_nav_analytics.mdx index 349db2ce9357d..0d48002909fae 100644 --- a/api_docs/kbn_default_nav_analytics.mdx +++ b/api_docs/kbn_default_nav_analytics.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-default-nav-analytics title: "@kbn/default-nav-analytics" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/default-nav-analytics plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/default-nav-analytics'] --- import kbnDefaultNavAnalyticsObj from './kbn_default_nav_analytics.devdocs.json'; diff --git a/api_docs/kbn_default_nav_devtools.mdx b/api_docs/kbn_default_nav_devtools.mdx index 9276e1a95b531..ad535738555a3 100644 --- a/api_docs/kbn_default_nav_devtools.mdx +++ b/api_docs/kbn_default_nav_devtools.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-default-nav-devtools title: "@kbn/default-nav-devtools" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/default-nav-devtools plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/default-nav-devtools'] --- import kbnDefaultNavDevtoolsObj from './kbn_default_nav_devtools.devdocs.json'; diff --git a/api_docs/kbn_default_nav_management.mdx b/api_docs/kbn_default_nav_management.mdx index 7aa84b34f6c33..8a33ad62975ad 100644 --- a/api_docs/kbn_default_nav_management.mdx +++ b/api_docs/kbn_default_nav_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-default-nav-management title: "@kbn/default-nav-management" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/default-nav-management plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/default-nav-management'] --- import kbnDefaultNavManagementObj from './kbn_default_nav_management.devdocs.json'; diff --git a/api_docs/kbn_default_nav_ml.mdx b/api_docs/kbn_default_nav_ml.mdx index b8da6c9a6735c..f5fbf86e24dd3 100644 --- a/api_docs/kbn_default_nav_ml.mdx +++ b/api_docs/kbn_default_nav_ml.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-default-nav-ml title: "@kbn/default-nav-ml" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/default-nav-ml plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/default-nav-ml'] --- import kbnDefaultNavMlObj from './kbn_default_nav_ml.devdocs.json'; diff --git a/api_docs/kbn_dev_cli_errors.mdx b/api_docs/kbn_dev_cli_errors.mdx index 067cf50c32288..7f1d898208b48 100644 --- a/api_docs/kbn_dev_cli_errors.mdx +++ b/api_docs/kbn_dev_cli_errors.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-dev-cli-errors title: "@kbn/dev-cli-errors" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/dev-cli-errors plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dev-cli-errors'] --- import kbnDevCliErrorsObj from './kbn_dev_cli_errors.devdocs.json'; diff --git a/api_docs/kbn_dev_cli_runner.mdx b/api_docs/kbn_dev_cli_runner.mdx index b8f3c27df90c5..b4ad7477793bf 100644 --- a/api_docs/kbn_dev_cli_runner.mdx +++ b/api_docs/kbn_dev_cli_runner.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-dev-cli-runner title: "@kbn/dev-cli-runner" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/dev-cli-runner plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dev-cli-runner'] --- import kbnDevCliRunnerObj from './kbn_dev_cli_runner.devdocs.json'; diff --git a/api_docs/kbn_dev_proc_runner.mdx b/api_docs/kbn_dev_proc_runner.mdx index 469299a27f883..09e1c35b118a8 100644 --- a/api_docs/kbn_dev_proc_runner.mdx +++ b/api_docs/kbn_dev_proc_runner.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-dev-proc-runner title: "@kbn/dev-proc-runner" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/dev-proc-runner plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dev-proc-runner'] --- import kbnDevProcRunnerObj from './kbn_dev_proc_runner.devdocs.json'; diff --git a/api_docs/kbn_dev_utils.mdx b/api_docs/kbn_dev_utils.mdx index a596762acf431..5db1a2647c1bc 100644 --- a/api_docs/kbn_dev_utils.mdx +++ b/api_docs/kbn_dev_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-dev-utils title: "@kbn/dev-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/dev-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dev-utils'] --- import kbnDevUtilsObj from './kbn_dev_utils.devdocs.json'; diff --git a/api_docs/kbn_discover_utils.devdocs.json b/api_docs/kbn_discover_utils.devdocs.json index dbe64e92d0655..44ba116af4d97 100644 --- a/api_docs/kbn_discover_utils.devdocs.json +++ b/api_docs/kbn_discover_utils.devdocs.json @@ -516,9 +516,9 @@ "label": "createLogsContextService", "description": [], "signature": [ - "(_deps?: ", + "({ logsDataAccessPlugin, }: ", "LogsContextServiceDeps", - ") => { isLogsIndexPattern: (indexPattern: unknown) => boolean; }" + ") => Promise<{ isLogsIndexPattern: (indexPattern: unknown) => boolean; }>" ], "path": "packages/kbn-discover-utils/src/data_types/logs/logs_context_service.ts", "deprecated": false, @@ -529,7 +529,7 @@ "id": "def-common.createLogsContextService.$1", "type": "Object", "tags": [], - "label": "_deps", + "label": "{\n logsDataAccessPlugin,\n}", "description": [], "signature": [ "LogsContextServiceDeps" diff --git a/api_docs/kbn_discover_utils.mdx b/api_docs/kbn_discover_utils.mdx index 7a95ead5a80e4..eebff70b8f9f3 100644 --- a/api_docs/kbn_discover_utils.mdx +++ b/api_docs/kbn_discover_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-discover-utils title: "@kbn/discover-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/discover-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/discover-utils'] --- import kbnDiscoverUtilsObj from './kbn_discover_utils.devdocs.json'; diff --git a/api_docs/kbn_doc_links.devdocs.json b/api_docs/kbn_doc_links.devdocs.json index 9a1f8d1f46207..0cce251902dcb 100644 --- a/api_docs/kbn_doc_links.devdocs.json +++ b/api_docs/kbn_doc_links.devdocs.json @@ -311,7 +311,7 @@ "label": "enterpriseSearch", "description": [], "signature": [ - "{ readonly aiSearchDoc: string; readonly aiSearchHelp: string; readonly apiKeys: string; readonly behavioralAnalytics: string; readonly behavioralAnalyticsCORS: string; readonly behavioralAnalyticsEvents: string; readonly buildConnector: string; readonly bulkApi: string; readonly configuration: string; readonly connectors: string; readonly connectorsClientDeploy: string; readonly connectorsMappings: string; readonly connectorsAzureBlobStorage: string; readonly connectorsBox: string; readonly connectorsClients: string; readonly connectorsConfluence: string; readonly connectorsContentExtraction: string; readonly connectorsDropbox: string; readonly connectorsGithub: string; readonly connectorsGoogleCloudStorage: string; readonly connectorsGoogleDrive: string; readonly connectorsGmail: string; readonly connectorsJira: string; readonly connectorsMicrosoftSQL: string; readonly connectorsMongoDB: string; readonly connectorsMySQL: string; readonly connectorsNative: string; readonly connectorsNetworkDrive: string; readonly connectorsNotion: string; readonly connectorsOneDrive: string; readonly connectorsOracle: string; readonly connectorsOutlook: string; readonly connectorsPostgreSQL: string; readonly connectorsRedis: string; readonly connectorsS3: string; readonly connectorsSalesforce: string; readonly connectorsServiceNow: string; readonly connectorsSharepoint: string; readonly connectorsSharepointOnline: string; readonly connectorsTeams: string; readonly connectorsSlack: string; readonly connectorsZoom: string; readonly crawlerExtractionRules: string; readonly crawlerManaging: string; readonly crawlerOverview: string; readonly deployTrainedModels: string; readonly documentLevelSecurity: string; readonly e5Model: string; readonly elser: string; readonly engines: string; readonly indexApi: string; readonly inferenceApiCreate: string; readonly ingestionApis: string; readonly ingestPipelines: string; readonly knnSearch: string; readonly knnSearchCombine: string; readonly languageAnalyzers: string; readonly languageClients: string; readonly licenseManagement: string; readonly machineLearningStart: string; readonly mailService: string; readonly mlDocumentEnrichment: string; readonly searchApplicationsTemplates: string; readonly searchApplicationsSearchApi: string; readonly searchApplications: string; readonly searchApplicationsSearch: string; readonly searchLabs: string; readonly searchLabsRepo: string; readonly searchTemplates: string; readonly semanticTextField: string; readonly start: string; readonly supportedNlpModels: string; readonly syncRules: string; readonly syncRulesAdvanced: string; readonly trainedModels: string; readonly textEmbedding: string; readonly troubleshootSetup: string; readonly usersAccess: string; }" + "{ readonly aiSearchDoc: string; readonly aiSearchHelp: string; readonly apiKeys: string; readonly behavioralAnalytics: string; readonly behavioralAnalyticsCORS: string; readonly behavioralAnalyticsEvents: string; readonly buildConnector: string; readonly bulkApi: string; readonly configuration: string; readonly connectors: string; readonly connectorsClientDeploy: string; readonly connectorsMappings: string; readonly connectorsAzureBlobStorage: string; readonly connectorsBox: string; readonly connectorsClients: string; readonly connectorsConfluence: string; readonly connectorsContentExtraction: string; readonly connectorsDropbox: string; readonly connectorsGithub: string; readonly connectorsGoogleCloudStorage: string; readonly connectorsGoogleDrive: string; readonly connectorsGmail: string; readonly connectorsJira: string; readonly connectorsMicrosoftSQL: string; readonly connectorsMongoDB: string; readonly connectorsMySQL: string; readonly connectorsNative: string; readonly connectorsNetworkDrive: string; readonly connectorsNotion: string; readonly connectorsOneDrive: string; readonly connectorsOracle: string; readonly connectorsOutlook: string; readonly connectorsPostgreSQL: string; readonly connectorsRedis: string; readonly connectorsS3: string; readonly connectorsSalesforce: string; readonly connectorsServiceNow: string; readonly connectorsSharepoint: string; readonly connectorsSharepointOnline: string; readonly connectorsTeams: string; readonly connectorsSlack: string; readonly connectorsZoom: string; readonly crawlerExtractionRules: string; readonly crawlerManaging: string; readonly crawlerOverview: string; readonly deployTrainedModels: string; readonly documentLevelSecurity: string; readonly e5Model: string; readonly elser: string; readonly engines: string; readonly indexApi: string; readonly inferenceApiCreate: string; readonly ingestionApis: string; readonly ingestPipelines: string; readonly knnSearch: string; readonly knnSearchCombine: string; readonly languageAnalyzers: string; readonly languageClients: string; readonly licenseManagement: string; readonly machineLearningStart: string; readonly mailService: string; readonly mlDocumentEnrichment: string; readonly searchApplicationsTemplates: string; readonly searchApplicationsSearchApi: string; readonly searchApplications: string; readonly searchApplicationsSearch: string; readonly searchLabs: string; readonly searchLabsRepo: string; readonly semanticSearch: string; readonly searchTemplates: string; readonly semanticTextField: string; readonly start: string; readonly supportedNlpModels: string; readonly syncRules: string; readonly syncRulesAdvanced: string; readonly trainedModels: string; readonly textEmbedding: string; readonly troubleshootSetup: string; readonly usersAccess: string; }" ], "path": "packages/kbn-doc-links/src/types.ts", "deprecated": false, diff --git a/api_docs/kbn_doc_links.mdx b/api_docs/kbn_doc_links.mdx index ee498608d2209..efe0a25c3b0b0 100644 --- a/api_docs/kbn_doc_links.mdx +++ b/api_docs/kbn_doc_links.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-doc-links title: "@kbn/doc-links" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/doc-links plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/doc-links'] --- import kbnDocLinksObj from './kbn_doc_links.devdocs.json'; diff --git a/api_docs/kbn_docs_utils.mdx b/api_docs/kbn_docs_utils.mdx index e62c0b9373c89..a745964ef37d5 100644 --- a/api_docs/kbn_docs_utils.mdx +++ b/api_docs/kbn_docs_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-docs-utils title: "@kbn/docs-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/docs-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/docs-utils'] --- import kbnDocsUtilsObj from './kbn_docs_utils.devdocs.json'; diff --git a/api_docs/kbn_dom_drag_drop.mdx b/api_docs/kbn_dom_drag_drop.mdx index ffa77e1f7dd5c..e97a65b5c8c13 100644 --- a/api_docs/kbn_dom_drag_drop.mdx +++ b/api_docs/kbn_dom_drag_drop.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-dom-drag-drop title: "@kbn/dom-drag-drop" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/dom-drag-drop plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dom-drag-drop'] --- import kbnDomDragDropObj from './kbn_dom_drag_drop.devdocs.json'; diff --git a/api_docs/kbn_ebt_tools.mdx b/api_docs/kbn_ebt_tools.mdx index 2bfb045edce81..792b97e37518d 100644 --- a/api_docs/kbn_ebt_tools.mdx +++ b/api_docs/kbn_ebt_tools.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ebt-tools title: "@kbn/ebt-tools" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ebt-tools plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ebt-tools'] --- import kbnEbtToolsObj from './kbn_ebt_tools.devdocs.json'; diff --git a/api_docs/kbn_ecs_data_quality_dashboard.mdx b/api_docs/kbn_ecs_data_quality_dashboard.mdx index 17566b5944544..5b289f4b80912 100644 --- a/api_docs/kbn_ecs_data_quality_dashboard.mdx +++ b/api_docs/kbn_ecs_data_quality_dashboard.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ecs-data-quality-dashboard title: "@kbn/ecs-data-quality-dashboard" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ecs-data-quality-dashboard plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ecs-data-quality-dashboard'] --- import kbnEcsDataQualityDashboardObj from './kbn_ecs_data_quality_dashboard.devdocs.json'; diff --git a/api_docs/kbn_elastic_agent_utils.mdx b/api_docs/kbn_elastic_agent_utils.mdx index 30f95b20fa2e5..797f3745f6a69 100644 --- a/api_docs/kbn_elastic_agent_utils.mdx +++ b/api_docs/kbn_elastic_agent_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-elastic-agent-utils title: "@kbn/elastic-agent-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/elastic-agent-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/elastic-agent-utils'] --- import kbnElasticAgentUtilsObj from './kbn_elastic_agent_utils.devdocs.json'; diff --git a/api_docs/kbn_elastic_assistant.mdx b/api_docs/kbn_elastic_assistant.mdx index 71c2b8647a109..679005170ac10 100644 --- a/api_docs/kbn_elastic_assistant.mdx +++ b/api_docs/kbn_elastic_assistant.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-elastic-assistant title: "@kbn/elastic-assistant" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/elastic-assistant plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/elastic-assistant'] --- import kbnElasticAssistantObj from './kbn_elastic_assistant.devdocs.json'; diff --git a/api_docs/kbn_elastic_assistant_common.mdx b/api_docs/kbn_elastic_assistant_common.mdx index 1b8d8f913afab..4729092a13544 100644 --- a/api_docs/kbn_elastic_assistant_common.mdx +++ b/api_docs/kbn_elastic_assistant_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-elastic-assistant-common title: "@kbn/elastic-assistant-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/elastic-assistant-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/elastic-assistant-common'] --- import kbnElasticAssistantCommonObj from './kbn_elastic_assistant_common.devdocs.json'; diff --git a/api_docs/kbn_entities_schema.mdx b/api_docs/kbn_entities_schema.mdx index 35421c0749a3b..ce1da334c670d 100644 --- a/api_docs/kbn_entities_schema.mdx +++ b/api_docs/kbn_entities_schema.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-entities-schema title: "@kbn/entities-schema" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/entities-schema plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/entities-schema'] --- import kbnEntitiesSchemaObj from './kbn_entities_schema.devdocs.json'; diff --git a/api_docs/kbn_es.devdocs.json b/api_docs/kbn_es.devdocs.json index 96bcb65c45764..d0ca58d30e501 100644 --- a/api_docs/kbn_es.devdocs.json +++ b/api_docs/kbn_es.devdocs.json @@ -711,7 +711,7 @@ "label": "readRolesDescriptorsFromResource", "description": [], "signature": [ - "(resourcePath: string) => any" + "(resourcePath: string) => object" ], "path": "packages/kbn-es/src/utils/read_roles_from_resource.ts", "deprecated": false, diff --git a/api_docs/kbn_es.mdx b/api_docs/kbn_es.mdx index e703e9b694d51..28ab82dba3e33 100644 --- a/api_docs/kbn_es.mdx +++ b/api_docs/kbn_es.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-es title: "@kbn/es" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/es plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/es'] --- import kbnEsObj from './kbn_es.devdocs.json'; diff --git a/api_docs/kbn_es_archiver.mdx b/api_docs/kbn_es_archiver.mdx index 2108e48b5b031..db276dba48429 100644 --- a/api_docs/kbn_es_archiver.mdx +++ b/api_docs/kbn_es_archiver.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-es-archiver title: "@kbn/es-archiver" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/es-archiver plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/es-archiver'] --- import kbnEsArchiverObj from './kbn_es_archiver.devdocs.json'; diff --git a/api_docs/kbn_es_errors.mdx b/api_docs/kbn_es_errors.mdx index 3363b0668d89a..957662c642073 100644 --- a/api_docs/kbn_es_errors.mdx +++ b/api_docs/kbn_es_errors.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-es-errors title: "@kbn/es-errors" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/es-errors plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/es-errors'] --- import kbnEsErrorsObj from './kbn_es_errors.devdocs.json'; diff --git a/api_docs/kbn_es_query.mdx b/api_docs/kbn_es_query.mdx index 31e15a6861754..4e90ec80de74c 100644 --- a/api_docs/kbn_es_query.mdx +++ b/api_docs/kbn_es_query.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-es-query title: "@kbn/es-query" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/es-query plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/es-query'] --- import kbnEsQueryObj from './kbn_es_query.devdocs.json'; diff --git a/api_docs/kbn_es_types.mdx b/api_docs/kbn_es_types.mdx index 37ab340f947f5..ff22bc77e10ba 100644 --- a/api_docs/kbn_es_types.mdx +++ b/api_docs/kbn_es_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-es-types title: "@kbn/es-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/es-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/es-types'] --- import kbnEsTypesObj from './kbn_es_types.devdocs.json'; diff --git a/api_docs/kbn_eslint_plugin_imports.mdx b/api_docs/kbn_eslint_plugin_imports.mdx index 77819091456f9..c3aef3fcce106 100644 --- a/api_docs/kbn_eslint_plugin_imports.mdx +++ b/api_docs/kbn_eslint_plugin_imports.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-eslint-plugin-imports title: "@kbn/eslint-plugin-imports" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/eslint-plugin-imports plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/eslint-plugin-imports'] --- import kbnEslintPluginImportsObj from './kbn_eslint_plugin_imports.devdocs.json'; diff --git a/api_docs/kbn_esql_ast.devdocs.json b/api_docs/kbn_esql_ast.devdocs.json index 365993fe49b14..da5921fc6985c 100644 --- a/api_docs/kbn_esql_ast.devdocs.json +++ b/api_docs/kbn_esql_ast.devdocs.json @@ -392,14702 +392,8 @@ "description": [], "signature": [ "Visitor", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; } & { visitFunctionCallExpression: (ctx: ", - "FunctionCallExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitRenameExpression: (ctx: ", - "RenameExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; } & { visitFunctionCallExpression: (ctx: ", - "FunctionCallExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitCommandOption: (ctx: ", - "CommandOptionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; } & { visitFunctionCallExpression: (ctx: ", - "FunctionCallExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitRenameExpression: (ctx: ", - "RenameExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; } & { visitFunctionCallExpression: (ctx: ", - "FunctionCallExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitCommand: (ctx: ", - "CommandVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitListLiteralExpression: (ctx: ", - "ListLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitInlineCastExpression: (ctx: ", - "InlineCastExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - "ESQLList", - ">) => string; } & { visitFunctionCallExpression: (ctx: ", - "FunctionCallExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitLiteralExpression: (ctx: ", - "LiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ">) => string; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLLiteral", - "text": "ESQLLiteral" - }, - ">) => string; } & { visitTimeIntervalLiteralExpression: (ctx: ", - "TimeIntervalLiteralExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { visitSourceExpression: (ctx: ", - "SourceExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", - ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; }, ", - "SharedData", - ">) => string; } & { visitColumnExpression: (ctx: ", - "ColumnExpressionVisitorContext", - "<", - "VisitorMethods", - " & { visitExpression: (ctx: ", - "ExpressionVisitorContext", - "<", - "VisitorMethods", ", ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLSingleAstItem", - "text": "ESQLSingleAstItem" - }, - ">) => string; } & { ...; }, ", - "SharedData", - ">) => string; } & { ...; }, ", - "SharedData", - ">) => string; } & { ...; } & { ...; }, ", - "SharedData", - ">) => string; } & { ...; } & { ...; }, ", - "SharedData", - ", ", - { - "pluginId": "@kbn/esql-ast", - "scope": "common", - "docId": "kibKbnEsqlAstPluginApi", - "section": "def-common.ESQLAstCommand", - "text": "ESQLAstCommand" - }, - ">) => string; } & { ...; }, ", - "SharedData", ">" ], "path": "packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts", @@ -15110,7 +416,7 @@ "section": "def-common.ESQLAst", "text": "ESQLAst" }, - ") => string" + ") => any" ], "path": "packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts", "deprecated": false, @@ -15202,7 +508,7 @@ "section": "def-common.ESQLSingleAstItem", "text": "ESQLSingleAstItem" }, - ") => string" + ") => any" ], "path": "packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts", "deprecated": false, @@ -18413,6 +3719,8 @@ "text": "ESQLAstItem" }, "> | ", + "ESQLOrderExpression", + " | ", "ESQLUnknownItem" ], "path": "packages/kbn-esql-ast/src/types.ts", diff --git a/api_docs/kbn_esql_ast.mdx b/api_docs/kbn_esql_ast.mdx index da77090b5eba1..a164098a6b106 100644 --- a/api_docs/kbn_esql_ast.mdx +++ b/api_docs/kbn_esql_ast.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-esql-ast title: "@kbn/esql-ast" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/esql-ast plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/esql-ast'] --- import kbnEsqlAstObj from './kbn_esql_ast.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 177 | 1 | 139 | 31 | +| 177 | 1 | 139 | 20 | ## Common diff --git a/api_docs/kbn_esql_utils.devdocs.json b/api_docs/kbn_esql_utils.devdocs.json index 762121594a804..2695622237231 100644 --- a/api_docs/kbn_esql_utils.devdocs.json +++ b/api_docs/kbn_esql_utils.devdocs.json @@ -1173,7 +1173,7 @@ "section": "def-common.TimeRange", "text": "TimeRange" }, - " | undefined) => ({ t_start: string; t_end?: undefined; } | { t_end: string; t_start?: undefined; })[]" + " | undefined) => ({ _tstart: string; _tend?: undefined; } | { _tend: string; _tstart?: undefined; })[]" ], "path": "packages/kbn-esql-utils/src/utils/run_query.ts", "deprecated": false, @@ -1227,7 +1227,7 @@ "tags": [], "label": "getTimeFieldFromESQLQuery", "description": [ - "\nWhen the ?t_start and ?t_end params are used, we want to retrieve the timefield from the query." + "\nWhen the ?_tstart and ?_tend params are used, we want to retrieve the timefield from the query." ], "signature": [ "(esql: string) => string | undefined" diff --git a/api_docs/kbn_esql_utils.mdx b/api_docs/kbn_esql_utils.mdx index 3a12e57cf17f7..966dc25175aed 100644 --- a/api_docs/kbn_esql_utils.mdx +++ b/api_docs/kbn_esql_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-esql-utils title: "@kbn/esql-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/esql-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/esql-utils'] --- import kbnEsqlUtilsObj from './kbn_esql_utils.devdocs.json'; diff --git a/api_docs/kbn_esql_validation_autocomplete.devdocs.json b/api_docs/kbn_esql_validation_autocomplete.devdocs.json index bee047bed7c0e..dd8f595a501ab 100644 --- a/api_docs/kbn_esql_validation_autocomplete.devdocs.json +++ b/api_docs/kbn_esql_validation_autocomplete.devdocs.json @@ -694,6 +694,8 @@ "text": "ESQLAstItem" }, "> | ", + "ESQLOrderExpression", + " | ", "ESQLUnknownItem", "; option: ", { @@ -814,6 +816,8 @@ "text": "ESQLAstItem" }, "> | ", + "ESQLOrderExpression", + " | ", "ESQLUnknownItem", " | undefined; option: ", { @@ -918,6 +922,8 @@ "text": "ESQLAstItem" }, "> | ", + "ESQLOrderExpression", + " | ", "ESQLUnknownItem", " | undefined; option: ", { @@ -1030,6 +1036,8 @@ "text": "ESQLAstItem" }, "> | ", + "ESQLOrderExpression", + " | ", "ESQLUnknownItem", " | undefined; setting: ", { @@ -1536,7 +1544,9 @@ "section": "def-common.ESQLCallbacks", "text": "ESQLCallbacks" }, - " | undefined) => () => Promise<{ name: string; hidden: boolean; title?: string | undefined; dataStreams?: { name: string; title?: string | undefined; }[] | undefined; type?: string | undefined; }[]>" + " | undefined) => () => Promise<", + "ESQLSourceResult", + "[]>" ], "path": "packages/kbn-esql-validation-autocomplete/src/shared/resources_helpers.ts", "deprecated": false, @@ -3054,7 +3064,9 @@ "label": "getSources", "description": [], "signature": [ - "CallbackFn<{}, { name: string; hidden: boolean; title?: string | undefined; dataStreams?: { name: string; title?: string | undefined; }[] | undefined; type?: string | undefined; }> | undefined" + "CallbackFn<{}, ", + "ESQLSourceResult", + "> | undefined" ], "path": "packages/kbn-esql-validation-autocomplete/src/shared/types.ts", "deprecated": false, @@ -3111,6 +3123,22 @@ "trackAdoption": false, "children": [], "returnComment": [] + }, + { + "parentPluginId": "@kbn/esql-validation-autocomplete", + "id": "def-common.ESQLCallbacks.getFieldsMetadata", + "type": "Object", + "tags": [], + "label": "getFieldsMetadata", + "description": [], + "signature": [ + "Promise<", + "PartialFieldsMetadataClient", + "> | undefined" + ], + "path": "packages/kbn-esql-validation-autocomplete/src/shared/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -3215,6 +3243,20 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "@kbn/esql-validation-autocomplete", + "id": "def-common.ESQLRealField.isEcs", + "type": "CompoundType", + "tags": [], + "label": "isEcs", + "description": [], + "signature": [ + "boolean | undefined" + ], + "path": "packages/kbn-esql-validation-autocomplete/src/validation/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "@kbn/esql-validation-autocomplete", "id": "def-common.ESQLRealField.metadata", diff --git a/api_docs/kbn_esql_validation_autocomplete.mdx b/api_docs/kbn_esql_validation_autocomplete.mdx index a48b6490d981a..7cca498f2779d 100644 --- a/api_docs/kbn_esql_validation_autocomplete.mdx +++ b/api_docs/kbn_esql_validation_autocomplete.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-esql-validation-autocomplete title: "@kbn/esql-validation-autocomplete" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/esql-validation-autocomplete plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/esql-validation-autocomplete'] --- import kbnEsqlValidationAutocompleteObj from './kbn_esql_validation_autocomplete.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 197 | 0 | 185 | 10 | +| 199 | 0 | 187 | 12 | ## Common diff --git a/api_docs/kbn_event_annotation_common.mdx b/api_docs/kbn_event_annotation_common.mdx index 77353cf843f43..a634376f82e95 100644 --- a/api_docs/kbn_event_annotation_common.mdx +++ b/api_docs/kbn_event_annotation_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-event-annotation-common title: "@kbn/event-annotation-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/event-annotation-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/event-annotation-common'] --- import kbnEventAnnotationCommonObj from './kbn_event_annotation_common.devdocs.json'; diff --git a/api_docs/kbn_event_annotation_components.mdx b/api_docs/kbn_event_annotation_components.mdx index 2eac9dde1a696..a6e907c960e2c 100644 --- a/api_docs/kbn_event_annotation_components.mdx +++ b/api_docs/kbn_event_annotation_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-event-annotation-components title: "@kbn/event-annotation-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/event-annotation-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/event-annotation-components'] --- import kbnEventAnnotationComponentsObj from './kbn_event_annotation_components.devdocs.json'; diff --git a/api_docs/kbn_expandable_flyout.devdocs.json b/api_docs/kbn_expandable_flyout.devdocs.json index e460fcf5387c3..56671dc282906 100644 --- a/api_docs/kbn_expandable_flyout.devdocs.json +++ b/api_docs/kbn_expandable_flyout.devdocs.json @@ -13,7 +13,7 @@ "\nExpandable flyout UI React component.\nDisplays 3 sections (right, left, preview) depending on the panels in the context.\n\nThe behavior expects that the left and preview sections should only be displayed is a right section\nis already rendered." ], "signature": [ - "{ ({ customStyles, registeredPanels, flyoutCustomProps, ...flyoutProps }: React.PropsWithChildren<", + "{ ({ ...props }: React.PropsWithChildren<", { "pluginId": "@kbn/expandable-flyout", "scope": "public", @@ -32,7 +32,7 @@ "id": "def-public.ExpandableFlyout.$1", "type": "CompoundType", "tags": [], - "label": "{\n customStyles,\n registeredPanels,\n flyoutCustomProps,\n ...flyoutProps\n}", + "label": "{ ...props }", "description": [], "signature": [ "React.PropsWithChildren<", @@ -130,8 +130,8 @@ "pluginId": "@kbn/expandable-flyout", "scope": "public", "docId": "kibKbnExpandableFlyoutPluginApi", - "section": "def-public.FlyoutState", - "text": "FlyoutState" + "section": "def-public.FlyoutPanels", + "text": "FlyoutPanels" } ], "path": "packages/kbn-expandable-flyout/src/hooks/use_expandable_flyout_state.ts", @@ -577,8 +577,8 @@ "text": "ExpandableFlyoutProps" }, " extends Omit<", - "EuiFlyoutProps", - "<\"div\">, \"onClose\">" + "EuiFlyoutResizableProps", + ", \"onClose\">" ], "path": "packages/kbn-expandable-flyout/src/index.tsx", "deprecated": false, @@ -652,7 +652,24 @@ "\nSet of properties that drive a settings menu" ], "signature": [ - "{ hideSettings?: boolean | undefined; pushVsOverlay?: { disabled: boolean; tooltip: string; } | undefined; } | undefined" + "FlyoutCustomProps", + " | undefined" + ], + "path": "packages/kbn-expandable-flyout/src/index.tsx", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/expandable-flyout", + "id": "def-public.ExpandableFlyoutProps.datatestsubj", + "type": "string", + "tags": [], + "label": "'data-test-subj'", + "description": [ + "\nOptional data test subject string to be used on the EuiFlyoutResizable component" + ], + "signature": [ + "string | undefined" ], "path": "packages/kbn-expandable-flyout/src/index.tsx", "deprecated": false, @@ -745,18 +762,18 @@ }, { "parentPluginId": "@kbn/expandable-flyout", - "id": "def-public.FlyoutState", + "id": "def-public.FlyoutPanels", "type": "Interface", "tags": [], - "label": "FlyoutState", + "label": "FlyoutPanels", "description": [], - "path": "packages/kbn-expandable-flyout/src/state.ts", + "path": "packages/kbn-expandable-flyout/src/store/state.ts", "deprecated": false, "trackAdoption": false, "children": [ { "parentPluginId": "@kbn/expandable-flyout", - "id": "def-public.FlyoutState.left", + "id": "def-public.FlyoutPanels.left", "type": "Object", "tags": [], "label": "left", @@ -773,13 +790,13 @@ }, " | undefined" ], - "path": "packages/kbn-expandable-flyout/src/state.ts", + "path": "packages/kbn-expandable-flyout/src/store/state.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "@kbn/expandable-flyout", - "id": "def-public.FlyoutState.right", + "id": "def-public.FlyoutPanels.right", "type": "Object", "tags": [], "label": "right", @@ -796,13 +813,13 @@ }, " | undefined" ], - "path": "packages/kbn-expandable-flyout/src/state.ts", + "path": "packages/kbn-expandable-flyout/src/store/state.ts", "deprecated": false, "trackAdoption": false }, { "parentPluginId": "@kbn/expandable-flyout", - "id": "def-public.FlyoutState.preview", + "id": "def-public.FlyoutPanels.preview", "type": "Array", "tags": [], "label": "preview", @@ -819,7 +836,7 @@ }, "[] | undefined" ], - "path": "packages/kbn-expandable-flyout/src/state.ts", + "path": "packages/kbn-expandable-flyout/src/store/state.ts", "deprecated": false, "trackAdoption": false } diff --git a/api_docs/kbn_expandable_flyout.mdx b/api_docs/kbn_expandable_flyout.mdx index d9cfbb36b0817..a44c5ffc0f51b 100644 --- a/api_docs/kbn_expandable_flyout.mdx +++ b/api_docs/kbn_expandable_flyout.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-expandable-flyout title: "@kbn/expandable-flyout" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/expandable-flyout plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/expandable-flyout'] --- import kbnExpandableFlyoutObj from './kbn_expandable_flyout.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/security-threat-hunting-investigations](https://github.com/org | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 43 | 0 | 17 | 2 | +| 44 | 0 | 17 | 3 | ## Client diff --git a/api_docs/kbn_field_types.mdx b/api_docs/kbn_field_types.mdx index 4a227628e34ca..a6e50ec4fbf1d 100644 --- a/api_docs/kbn_field_types.mdx +++ b/api_docs/kbn_field_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-field-types title: "@kbn/field-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/field-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/field-types'] --- import kbnFieldTypesObj from './kbn_field_types.devdocs.json'; diff --git a/api_docs/kbn_field_utils.mdx b/api_docs/kbn_field_utils.mdx index 2dd8c3122dcff..b322ed05c6427 100644 --- a/api_docs/kbn_field_utils.mdx +++ b/api_docs/kbn_field_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-field-utils title: "@kbn/field-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/field-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/field-utils'] --- import kbnFieldUtilsObj from './kbn_field_utils.devdocs.json'; diff --git a/api_docs/kbn_find_used_node_modules.mdx b/api_docs/kbn_find_used_node_modules.mdx index 0f78820dedcf7..b93d2866e0355 100644 --- a/api_docs/kbn_find_used_node_modules.mdx +++ b/api_docs/kbn_find_used_node_modules.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-find-used-node-modules title: "@kbn/find-used-node-modules" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/find-used-node-modules plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/find-used-node-modules'] --- import kbnFindUsedNodeModulesObj from './kbn_find_used_node_modules.devdocs.json'; diff --git a/api_docs/kbn_formatters.mdx b/api_docs/kbn_formatters.mdx index 1312f6127e8ad..315a23e03ed37 100644 --- a/api_docs/kbn_formatters.mdx +++ b/api_docs/kbn_formatters.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-formatters title: "@kbn/formatters" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/formatters plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/formatters'] --- import kbnFormattersObj from './kbn_formatters.devdocs.json'; diff --git a/api_docs/kbn_ftr_common_functional_services.devdocs.json b/api_docs/kbn_ftr_common_functional_services.devdocs.json index 9c02c7376aba2..fcc33a262b892 100644 --- a/api_docs/kbn_ftr_common_functional_services.devdocs.json +++ b/api_docs/kbn_ftr_common_functional_services.devdocs.json @@ -803,7 +803,15 @@ "\nUse to retry block {options.retryCount} times within {options.timeout} period and return block result" ], "signature": [ - "(description: string, block: () => Promise, options: TryWithRetriesOptions, onFailureBlock?: (() => Promise) | undefined) => Promise" + "(description: string, block: () => Promise, options: ", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.TryWithRetriesOptions", + "text": "TryWithRetriesOptions" + }, + ", onFailureBlock?: (() => Promise) | undefined) => Promise" ], "path": "packages/kbn-ftr-common-functional-services/services/retry/retry.ts", "deprecated": false, @@ -853,7 +861,13 @@ "options.retryCount for how many attempts to retry" ], "signature": [ - "TryWithRetriesOptions" + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.TryWithRetriesOptions", + "text": "TryWithRetriesOptions" + } ], "path": "packages/kbn-ftr-common-functional-services/services/retry/retry.ts", "deprecated": false, @@ -1192,10 +1206,10 @@ "interfaces": [ { "parentPluginId": "@kbn/ftr-common-functional-services", - "id": "def-common.RoleCredentials", + "id": "def-common.CookieCredentials", "type": "Interface", "tags": [], - "label": "RoleCredentials", + "label": "CookieCredentials", "description": [], "path": "packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts", "deprecated": false, @@ -1203,27 +1217,52 @@ "children": [ { "parentPluginId": "@kbn/ftr-common-functional-services", - "id": "def-common.RoleCredentials.apiKey", - "type": "Object", + "id": "def-common.CookieCredentials.Cookie", + "type": "string", "tags": [], - "label": "apiKey", + "label": "Cookie", + "description": [], + "path": "packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/ftr-common-functional-services", + "id": "def-common.CookieCredentials.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[header: string]: string", "description": [], "signature": [ - "{ id: string; name: string; }" + "[header: string]: string" ], "path": "packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts", "deprecated": false, "trackAdoption": false - }, + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/ftr-common-functional-services", + "id": "def-common.RoleCredentials", + "type": "Interface", + "tags": [], + "label": "RoleCredentials", + "description": [], + "path": "packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ { "parentPluginId": "@kbn/ftr-common-functional-services", - "id": "def-common.RoleCredentials.apiKeyHeader", + "id": "def-common.RoleCredentials.apiKey", "type": "Object", "tags": [], - "label": "apiKeyHeader", + "label": "apiKey", "description": [], "signature": [ - "{ Authorization: string; }" + "{ id: string; name: string; }" ], "path": "packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts", "deprecated": false, @@ -1231,13 +1270,13 @@ }, { "parentPluginId": "@kbn/ftr-common-functional-services", - "id": "def-common.RoleCredentials.cookieHeader", + "id": "def-common.RoleCredentials.apiKeyHeader", "type": "Object", "tags": [], - "label": "cookieHeader", + "label": "apiKeyHeader", "description": [], "signature": [ - "{ Cookie: string; }" + "{ Authorization: string; }" ], "path": "packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts", "deprecated": false, @@ -1314,6 +1353,59 @@ } ], "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/ftr-common-functional-services", + "id": "def-common.TryWithRetriesOptions", + "type": "Interface", + "tags": [], + "label": "TryWithRetriesOptions", + "description": [], + "path": "packages/kbn-ftr-common-functional-services/services/retry/retry.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/ftr-common-functional-services", + "id": "def-common.TryWithRetriesOptions.retryCount", + "type": "number", + "tags": [], + "label": "retryCount", + "description": [], + "path": "packages/kbn-ftr-common-functional-services/services/retry/retry.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/ftr-common-functional-services", + "id": "def-common.TryWithRetriesOptions.retryDelay", + "type": "number", + "tags": [], + "label": "retryDelay", + "description": [], + "signature": [ + "number | undefined" + ], + "path": "packages/kbn-ftr-common-functional-services/services/retry/retry.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/ftr-common-functional-services", + "id": "def-common.TryWithRetriesOptions.timeout", + "type": "number", + "tags": [], + "label": "timeout", + "description": [], + "signature": [ + "number | undefined" + ], + "path": "packages/kbn-ftr-common-functional-services/services/retry/retry.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false } ], "enums": [], @@ -1474,7 +1566,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -1654,7 +1754,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -1771,7 +1879,15 @@ "label": "SamlAuthProviderType", "description": [], "signature": [ - "{ getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + "{ getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -1996,7 +2112,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -2176,7 +2300,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -2409,7 +2541,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -2589,7 +2729,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -2822,7 +2970,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -3002,7 +3158,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -3270,7 +3434,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -3450,7 +3622,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -3697,7 +3877,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -3877,7 +4065,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -4030,7 +4226,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -4200,7 +4404,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -4380,7 +4592,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -4607,7 +4827,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -4787,7 +5015,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -5014,7 +5250,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -5194,7 +5438,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -5424,7 +5676,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { @@ -5604,7 +5864,15 @@ "section": "def-common.FtrProviderContext", "text": "FtrProviderContext" }, - ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCredentialsWithRoleScope(role: string): Promise<{ Cookie: string; }>; getEmail(role: string): Promise; getUserData(role: string): Promise<", + ") => { getInteractiveUserSessionCookieWithRoleScope(role: string): Promise; getM2MApiCookieCredentialsWithRoleScope(role: string): Promise<", + { + "pluginId": "@kbn/ftr-common-functional-services", + "scope": "common", + "docId": "kibKbnFtrCommonFunctionalServicesPluginApi", + "section": "def-common.CookieCredentials", + "text": "CookieCredentials" + }, + ">; getEmail(role: string): Promise; getUserData(role: string): Promise<", "UserProfile", ">; createM2mApiKeyWithDefaultRoleScope(): Promise<", { diff --git a/api_docs/kbn_ftr_common_functional_services.mdx b/api_docs/kbn_ftr_common_functional_services.mdx index 00e605cbd1cb2..daf0412d28e6f 100644 --- a/api_docs/kbn_ftr_common_functional_services.mdx +++ b/api_docs/kbn_ftr_common_functional_services.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ftr-common-functional-services title: "@kbn/ftr-common-functional-services" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ftr-common-functional-services plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ftr-common-functional-services'] --- import kbnFtrCommonFunctionalServicesObj from './kbn_ftr_common_functional_services.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kiban | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 102 | 0 | 77 | 1 | +| 108 | 0 | 83 | 1 | ## Common diff --git a/api_docs/kbn_ftr_common_functional_ui_services.mdx b/api_docs/kbn_ftr_common_functional_ui_services.mdx index e35fdff8de817..1ab9ba69595df 100644 --- a/api_docs/kbn_ftr_common_functional_ui_services.mdx +++ b/api_docs/kbn_ftr_common_functional_ui_services.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ftr-common-functional-ui-services title: "@kbn/ftr-common-functional-ui-services" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ftr-common-functional-ui-services plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ftr-common-functional-ui-services'] --- import kbnFtrCommonFunctionalUiServicesObj from './kbn_ftr_common_functional_ui_services.devdocs.json'; diff --git a/api_docs/kbn_generate.mdx b/api_docs/kbn_generate.mdx index fbb6d8439fb62..aba010d95af77 100644 --- a/api_docs/kbn_generate.mdx +++ b/api_docs/kbn_generate.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-generate title: "@kbn/generate" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/generate plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/generate'] --- import kbnGenerateObj from './kbn_generate.devdocs.json'; diff --git a/api_docs/kbn_generate_console_definitions.mdx b/api_docs/kbn_generate_console_definitions.mdx index 213f59efa659d..ba64e2099d669 100644 --- a/api_docs/kbn_generate_console_definitions.mdx +++ b/api_docs/kbn_generate_console_definitions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-generate-console-definitions title: "@kbn/generate-console-definitions" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/generate-console-definitions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/generate-console-definitions'] --- import kbnGenerateConsoleDefinitionsObj from './kbn_generate_console_definitions.devdocs.json'; diff --git a/api_docs/kbn_generate_csv.mdx b/api_docs/kbn_generate_csv.mdx index e916f3560b56f..0d0c62011a2e3 100644 --- a/api_docs/kbn_generate_csv.mdx +++ b/api_docs/kbn_generate_csv.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-generate-csv title: "@kbn/generate-csv" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/generate-csv plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/generate-csv'] --- import kbnGenerateCsvObj from './kbn_generate_csv.devdocs.json'; diff --git a/api_docs/kbn_grid_layout.mdx b/api_docs/kbn_grid_layout.mdx index c6cc93b6159ee..d242768a20acf 100644 --- a/api_docs/kbn_grid_layout.mdx +++ b/api_docs/kbn_grid_layout.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-grid-layout title: "@kbn/grid-layout" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/grid-layout plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/grid-layout'] --- import kbnGridLayoutObj from './kbn_grid_layout.devdocs.json'; diff --git a/api_docs/kbn_grouping.mdx b/api_docs/kbn_grouping.mdx index e602598f63a0e..3caa2db3ff44d 100644 --- a/api_docs/kbn_grouping.mdx +++ b/api_docs/kbn_grouping.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-grouping title: "@kbn/grouping" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/grouping plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/grouping'] --- import kbnGroupingObj from './kbn_grouping.devdocs.json'; diff --git a/api_docs/kbn_guided_onboarding.mdx b/api_docs/kbn_guided_onboarding.mdx index 65a9aa587bd9d..c44c5aa852de3 100644 --- a/api_docs/kbn_guided_onboarding.mdx +++ b/api_docs/kbn_guided_onboarding.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-guided-onboarding title: "@kbn/guided-onboarding" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/guided-onboarding plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/guided-onboarding'] --- import kbnGuidedOnboardingObj from './kbn_guided_onboarding.devdocs.json'; diff --git a/api_docs/kbn_handlebars.mdx b/api_docs/kbn_handlebars.mdx index 8d42345f95696..e682e48c58fb5 100644 --- a/api_docs/kbn_handlebars.mdx +++ b/api_docs/kbn_handlebars.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-handlebars title: "@kbn/handlebars" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/handlebars plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/handlebars'] --- import kbnHandlebarsObj from './kbn_handlebars.devdocs.json'; diff --git a/api_docs/kbn_hapi_mocks.mdx b/api_docs/kbn_hapi_mocks.mdx index 3d83727c3f1b7..8028edfaf3251 100644 --- a/api_docs/kbn_hapi_mocks.mdx +++ b/api_docs/kbn_hapi_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-hapi-mocks title: "@kbn/hapi-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/hapi-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/hapi-mocks'] --- import kbnHapiMocksObj from './kbn_hapi_mocks.devdocs.json'; diff --git a/api_docs/kbn_health_gateway_server.mdx b/api_docs/kbn_health_gateway_server.mdx index 591503b456224..a2f84076f89d6 100644 --- a/api_docs/kbn_health_gateway_server.mdx +++ b/api_docs/kbn_health_gateway_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-health-gateway-server title: "@kbn/health-gateway-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/health-gateway-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/health-gateway-server'] --- import kbnHealthGatewayServerObj from './kbn_health_gateway_server.devdocs.json'; diff --git a/api_docs/kbn_home_sample_data_card.mdx b/api_docs/kbn_home_sample_data_card.mdx index b801b78e1773d..3a326beb2bdeb 100644 --- a/api_docs/kbn_home_sample_data_card.mdx +++ b/api_docs/kbn_home_sample_data_card.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-home-sample-data-card title: "@kbn/home-sample-data-card" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/home-sample-data-card plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/home-sample-data-card'] --- import kbnHomeSampleDataCardObj from './kbn_home_sample_data_card.devdocs.json'; diff --git a/api_docs/kbn_home_sample_data_tab.mdx b/api_docs/kbn_home_sample_data_tab.mdx index ce1b27ca9ebb3..5046b3e9dc596 100644 --- a/api_docs/kbn_home_sample_data_tab.mdx +++ b/api_docs/kbn_home_sample_data_tab.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-home-sample-data-tab title: "@kbn/home-sample-data-tab" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/home-sample-data-tab plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/home-sample-data-tab'] --- import kbnHomeSampleDataTabObj from './kbn_home_sample_data_tab.devdocs.json'; diff --git a/api_docs/kbn_i18n.mdx b/api_docs/kbn_i18n.mdx index 82b14c1802a2b..16fd88427570a 100644 --- a/api_docs/kbn_i18n.mdx +++ b/api_docs/kbn_i18n.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-i18n title: "@kbn/i18n" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/i18n plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/i18n'] --- import kbnI18nObj from './kbn_i18n.devdocs.json'; diff --git a/api_docs/kbn_i18n_react.mdx b/api_docs/kbn_i18n_react.mdx index c3f0240347fa6..f89a28597b675 100644 --- a/api_docs/kbn_i18n_react.mdx +++ b/api_docs/kbn_i18n_react.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-i18n-react title: "@kbn/i18n-react" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/i18n-react plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/i18n-react'] --- import kbnI18nReactObj from './kbn_i18n_react.devdocs.json'; diff --git a/api_docs/kbn_import_resolver.mdx b/api_docs/kbn_import_resolver.mdx index fb74e7b5c33fa..67c22ca313f8b 100644 --- a/api_docs/kbn_import_resolver.mdx +++ b/api_docs/kbn_import_resolver.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-import-resolver title: "@kbn/import-resolver" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/import-resolver plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/import-resolver'] --- import kbnImportResolverObj from './kbn_import_resolver.devdocs.json'; diff --git a/api_docs/kbn_index_management_shared_types.mdx b/api_docs/kbn_index_management_shared_types.mdx index c2e5fa6b96aca..458a60ff3ecfb 100644 --- a/api_docs/kbn_index_management_shared_types.mdx +++ b/api_docs/kbn_index_management_shared_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-index-management-shared-types title: "@kbn/index-management-shared-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/index-management-shared-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/index-management-shared-types'] --- import kbnIndexManagementSharedTypesObj from './kbn_index_management_shared_types.devdocs.json'; diff --git a/api_docs/kbn_inference_integration_flyout.mdx b/api_docs/kbn_inference_integration_flyout.mdx index 0f9da046e6563..e030d463c90be 100644 --- a/api_docs/kbn_inference_integration_flyout.mdx +++ b/api_docs/kbn_inference_integration_flyout.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-inference_integration_flyout title: "@kbn/inference_integration_flyout" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/inference_integration_flyout plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/inference_integration_flyout'] --- import kbnInferenceIntegrationFlyoutObj from './kbn_inference_integration_flyout.devdocs.json'; diff --git a/api_docs/kbn_infra_forge.mdx b/api_docs/kbn_infra_forge.mdx index b2f3b84caba44..a8d07f35ac089 100644 --- a/api_docs/kbn_infra_forge.mdx +++ b/api_docs/kbn_infra_forge.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-infra-forge title: "@kbn/infra-forge" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/infra-forge plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/infra-forge'] --- import kbnInfraForgeObj from './kbn_infra_forge.devdocs.json'; diff --git a/api_docs/kbn_interpreter.mdx b/api_docs/kbn_interpreter.mdx index 49fdc2f56129b..a6c58fb00d1ac 100644 --- a/api_docs/kbn_interpreter.mdx +++ b/api_docs/kbn_interpreter.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-interpreter title: "@kbn/interpreter" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/interpreter plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/interpreter'] --- import kbnInterpreterObj from './kbn_interpreter.devdocs.json'; diff --git a/api_docs/kbn_investigation_shared.devdocs.json b/api_docs/kbn_investigation_shared.devdocs.json index 8b23840009fb8..5509976665276 100644 --- a/api_docs/kbn_investigation_shared.devdocs.json +++ b/api_docs/kbn_investigation_shared.devdocs.json @@ -45,7 +45,7 @@ "label": "CreateInvestigationItemResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/create_item.ts", "deprecated": false, @@ -75,7 +75,7 @@ "label": "CreateInvestigationNoteResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; content: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/create_note.ts", "deprecated": false, @@ -105,7 +105,7 @@ "label": "CreateInvestigationResponse", "description": [], "signature": [ - "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }" + "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/create.ts", "deprecated": false, @@ -157,6 +157,21 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.EventResponse", + "type": "Type", + "tags": [], + "label": "EventResponse", + "description": [], + "signature": [ + "{ id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; } & ({ eventType: \"annotation\"; annotationType?: string | undefined; } | { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; })" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/event.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/investigation-shared", "id": "def-common.FindInvestigationsParams", @@ -165,7 +180,7 @@ "label": "FindInvestigationsParams", "description": [], "signature": [ - "{ page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; } | undefined" + "{ page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; } | undefined" ], "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", "deprecated": false, @@ -180,13 +195,73 @@ "label": "FindInvestigationsResponse", "description": [], "signature": [ - "{ page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }[]; perPage: number; total: number; }" + "{ page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }[]; perPage: number; total: number; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.GetAllInvestigationStatsResponse", + "type": "Type", + "tags": [], + "label": "GetAllInvestigationStatsResponse", + "description": [], + "signature": [ + "{ count: Partial>; total: number; }" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_all_investigation_stats.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.GetAllInvestigationTagsResponse", + "type": "Type", + "tags": [], + "label": "GetAllInvestigationTagsResponse", + "description": [], + "signature": [ + "string[]" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_all_investigation_tags.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.GetEventsParams", + "type": "Type", + "tags": [], + "label": "GetEventsParams", + "description": [], + "signature": [ + "{ filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; } | undefined" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_events.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.GetEventsResponse", + "type": "Type", + "tags": [], + "label": "GetEventsResponse", + "description": [], + "signature": [ + "({ id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; } & ({ eventType: \"annotation\"; annotationType?: string | undefined; } | { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }))[]" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_events.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/investigation-shared", "id": "def-common.GetInvestigationItemsResponse", @@ -195,7 +270,7 @@ "label": "GetInvestigationItemsResponse", "description": [], "signature": [ - "({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]" + "({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]" ], "path": "packages/kbn-investigation-shared/src/rest_specs/get_items.ts", "deprecated": false, @@ -210,7 +285,7 @@ "label": "GetInvestigationNotesResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; content: string; }[]" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]" ], "path": "packages/kbn-investigation-shared/src/rest_specs/get_notes.ts", "deprecated": false, @@ -240,7 +315,7 @@ "label": "GetInvestigationResponse", "description": [], "signature": [ - "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }" + "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/get.ts", "deprecated": false, @@ -255,7 +330,7 @@ "label": "InvestigationItem", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; }" ], "path": "packages/kbn-investigation-shared/src/schema/investigation_item.ts", "deprecated": false, @@ -270,7 +345,7 @@ "label": "InvestigationItemResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/investigation_item.ts", "deprecated": false, @@ -285,7 +360,7 @@ "label": "InvestigationNoteResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; content: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts", "deprecated": false, @@ -300,7 +375,7 @@ "label": "InvestigationResponse", "description": [], "signature": [ - "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }" + "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/investigation.ts", "deprecated": false, @@ -322,6 +397,21 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.Status", + "type": "Type", + "tags": [], + "label": "Status", + "description": [], + "signature": [ + "\"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"" + ], + "path": "packages/kbn-investigation-shared/src/schema/investigation.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/investigation-shared", "id": "def-common.UpdateInvestigationItemParams", @@ -345,7 +435,7 @@ "label": "UpdateInvestigationItemResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/update_item.ts", "deprecated": false, @@ -375,7 +465,7 @@ "label": "UpdateInvestigationNoteResponse", "description": [], "signature": [ - "{ id: string; createdBy: string; createdAt: number; content: string; }" + "{ id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/update_note.ts", "deprecated": false, @@ -405,7 +495,7 @@ "label": "UpdateInvestigationResponse", "description": [], "signature": [ - "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }" + "{ params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }" ], "path": "packages/kbn-investigation-shared/src/rest_specs/update.ts", "deprecated": false, @@ -467,7 +557,7 @@ "label": "createInvestigationItemResponseSchema", "description": [], "signature": [ - "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" + "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/create_item.ts", "deprecated": false, @@ -497,7 +587,7 @@ "label": "createInvestigationNoteResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; content: string; }>" + "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; updatedAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/create_note.ts", "deprecated": false, @@ -527,7 +617,7 @@ "label": "createInvestigationResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }>" + "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; updatedAt: Zod.ZodNumber; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/create.ts", "deprecated": false, @@ -579,6 +669,36 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.eventResponseSchema", + "type": "Object", + "tags": [], + "label": "eventResponseSchema", + "description": [], + "signature": [ + "Zod.ZodIntersection, Zod.ZodLiteral<\"alert\">, Zod.ZodLiteral<\"error_rate\">, Zod.ZodLiteral<\"latency\">, Zod.ZodLiteral<\"anomaly\">]>; source: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; }, { id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; }>, Zod.ZodDiscriminatedUnion<\"eventType\", [Zod.ZodObject<{ eventType: Zod.ZodLiteral<\"annotation\">; annotationType: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { eventType: \"annotation\"; annotationType?: string | undefined; }, { eventType: \"annotation\"; annotationType?: string | undefined; }>, Zod.ZodObject<{ eventType: Zod.ZodLiteral<\"alert\">; alertStatus: Zod.ZodUnion<[Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"flapping\">, Zod.ZodLiteral<\"recovered\">, Zod.ZodLiteral<\"untracked\">]>; }, \"strip\", Zod.ZodTypeAny, { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }, { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }>]>>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/event.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.eventSchema", + "type": "Object", + "tags": [], + "label": "eventSchema", + "description": [], + "signature": [ + "Zod.ZodIntersection, Zod.ZodLiteral<\"alert\">, Zod.ZodLiteral<\"error_rate\">, Zod.ZodLiteral<\"latency\">, Zod.ZodLiteral<\"anomaly\">]>; source: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; }, { id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; }>, Zod.ZodDiscriminatedUnion<\"eventType\", [Zod.ZodObject<{ eventType: Zod.ZodLiteral<\"annotation\">; annotationType: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { eventType: \"annotation\"; annotationType?: string | undefined; }, { eventType: \"annotation\"; annotationType?: string | undefined; }>, Zod.ZodObject<{ eventType: Zod.ZodLiteral<\"alert\">; alertStatus: Zod.ZodUnion<[Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"flapping\">, Zod.ZodLiteral<\"recovered\">, Zod.ZodLiteral<\"untracked\">]>; }, \"strip\", Zod.ZodTypeAny, { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }, { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }>]>>" + ], + "path": "packages/kbn-investigation-shared/src/schema/event.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/investigation-shared", "id": "def-common.findInvestigationsParamsSchema", @@ -587,7 +707,7 @@ "label": "findInvestigationsParamsSchema", "description": [], "signature": [ - "Zod.ZodObject<{ query: Zod.ZodOptional; page: Zod.ZodOptional; perPage: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; }, { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; }>>; }, \"strip\", Zod.ZodTypeAny, { query?: { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; } | undefined; }, { query?: { page?: string | undefined; perPage?: string | undefined; alertId?: string | undefined; } | undefined; }>" + "Zod.ZodObject<{ query: Zod.ZodOptional; search: Zod.ZodOptional; filter: Zod.ZodOptional; page: Zod.ZodOptional; perPage: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; }, { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; }>>; }, \"strip\", Zod.ZodTypeAny, { query?: { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; } | undefined; }, { query?: { page?: number | undefined; filter?: string | undefined; search?: string | undefined; perPage?: number | undefined; alertId?: string | undefined; } | undefined; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", "deprecated": false, @@ -602,13 +722,103 @@ "label": "findInvestigationsResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ page: Zod.ZodNumber; perPage: Zod.ZodNumber; total: Zod.ZodNumber; results: Zod.ZodArray; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }[]; perPage: number; total: number; }, { page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }[]; perPage: number; total: number; }>" + "Zod.ZodObject<{ page: Zod.ZodNumber; perPage: Zod.ZodNumber; total: Zod.ZodNumber; results: Zod.ZodArray; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }[]; perPage: number; total: number; }, { page: number; results: { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }[]; perPage: number; total: number; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getAllInvestigationStatsParamsSchema", + "type": "Object", + "tags": [], + "label": "getAllInvestigationStatsParamsSchema", + "description": [], + "signature": [ + "Zod.ZodObject<{ query: Zod.ZodObject<{}, \"strip\", Zod.ZodTypeAny, {}, {}>; }, \"strip\", Zod.ZodTypeAny, { query: {}; }, { query: {}; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_all_investigation_stats.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getAllInvestigationStatsResponseSchema", + "type": "Object", + "tags": [], + "label": "getAllInvestigationStatsResponseSchema", + "description": [], + "signature": [ + "Zod.ZodObject<{ count: Zod.ZodRecord, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>, Zod.ZodNumber>; total: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { count: Partial>; total: number; }, { count: Partial>; total: number; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_all_investigation_stats.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getAllInvestigationTagsParamsSchema", + "type": "Object", + "tags": [], + "label": "getAllInvestigationTagsParamsSchema", + "description": [], + "signature": [ + "Zod.ZodObject<{ query: Zod.ZodObject<{}, \"strip\", Zod.ZodTypeAny, {}, {}>; }, \"strip\", Zod.ZodTypeAny, { query: {}; }, { query: {}; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_all_investigation_tags.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getAllInvestigationTagsResponseSchema", + "type": "Object", + "tags": [], + "label": "getAllInvestigationTagsResponseSchema", + "description": [], + "signature": [ + "Zod.ZodArray" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_all_investigation_tags.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getEventsParamsSchema", + "type": "Object", + "tags": [], + "label": "getEventsParamsSchema", + "description": [], + "signature": [ + "Zod.ZodObject<{ query: Zod.ZodOptional; rangeTo: Zod.ZodOptional; filter: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; }, { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; }>>; }, \"strip\", Zod.ZodTypeAny, { query?: { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; } | undefined; }, { query?: { filter?: string | undefined; rangeFrom?: string | undefined; rangeTo?: string | undefined; } | undefined; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_events.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getEventsResponseSchema", + "type": "Object", + "tags": [], + "label": "getEventsResponseSchema", + "description": [], + "signature": [ + "Zod.ZodArray, Zod.ZodLiteral<\"alert\">, Zod.ZodLiteral<\"error_rate\">, Zod.ZodLiteral<\"latency\">, Zod.ZodLiteral<\"anomaly\">]>; source: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; }, { id: string; timestamp: number; title: string; description: string; eventType: \"alert\" | \"annotation\" | \"latency\" | \"error_rate\" | \"anomaly\"; source?: Record | undefined; }>, Zod.ZodDiscriminatedUnion<\"eventType\", [Zod.ZodObject<{ eventType: Zod.ZodLiteral<\"annotation\">; annotationType: Zod.ZodOptional; }, \"strip\", Zod.ZodTypeAny, { eventType: \"annotation\"; annotationType?: string | undefined; }, { eventType: \"annotation\"; annotationType?: string | undefined; }>, Zod.ZodObject<{ eventType: Zod.ZodLiteral<\"alert\">; alertStatus: Zod.ZodUnion<[Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"flapping\">, Zod.ZodLiteral<\"recovered\">, Zod.ZodLiteral<\"untracked\">]>; }, \"strip\", Zod.ZodTypeAny, { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }, { alertStatus: \"flapping\" | \"recovered\" | \"active\" | \"untracked\"; eventType: \"alert\"; }>]>>, \"many\">" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_events.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/investigation-shared", "id": "def-common.getInvestigationItemsParamsSchema", @@ -632,7 +842,7 @@ "label": "getInvestigationItemsResponseSchema", "description": [], "signature": [ - "Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">" + "Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">" ], "path": "packages/kbn-investigation-shared/src/rest_specs/get_items.ts", "deprecated": false, @@ -662,7 +872,7 @@ "label": "getInvestigationNotesResponseSchema", "description": [], "signature": [ - "Zod.ZodArray, \"many\">" + "Zod.ZodArray, \"many\">" ], "path": "packages/kbn-investigation-shared/src/rest_specs/get_notes.ts", "deprecated": false, @@ -692,7 +902,7 @@ "label": "getInvestigationResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }>" + "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; updatedAt: Zod.ZodNumber; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/get.ts", "deprecated": false, @@ -707,7 +917,7 @@ "label": "investigationItemResponseSchema", "description": [], "signature": [ - "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" + "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/investigation_item.ts", "deprecated": false, @@ -722,7 +932,7 @@ "label": "investigationItemSchema", "description": [], "signature": [ - "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" + "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" ], "path": "packages/kbn-investigation-shared/src/schema/investigation_item.ts", "deprecated": false, @@ -737,7 +947,7 @@ "label": "investigationNoteResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; content: string; }>" + "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; updatedAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts", "deprecated": false, @@ -752,7 +962,7 @@ "label": "investigationNoteSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; content: string; }>" + "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; updatedAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }>" ], "path": "packages/kbn-investigation-shared/src/schema/investigation_note.ts", "deprecated": false, @@ -767,7 +977,7 @@ "label": "investigationResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }>" + "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; updatedAt: Zod.ZodNumber; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/investigation.ts", "deprecated": false, @@ -782,7 +992,7 @@ "label": "investigationSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }>" + "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; updatedAt: Zod.ZodNumber; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }>" ], "path": "packages/kbn-investigation-shared/src/schema/investigation.ts", "deprecated": false, @@ -842,7 +1052,7 @@ "label": "updateInvestigationItemResponseSchema", "description": [], "signature": [ - "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" + "Zod.ZodIntersection, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/update_item.ts", "deprecated": false, @@ -872,7 +1082,7 @@ "label": "updateInvestigationNoteResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; content: string; }>" + "Zod.ZodObject<{ id: Zod.ZodString; content: Zod.ZodString; createdAt: Zod.ZodNumber; updatedAt: Zod.ZodNumber; createdBy: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }, { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/update_note.ts", "deprecated": false, @@ -902,7 +1112,7 @@ "label": "updateInvestigationResponseSchema", "description": [], "signature": [ - "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; content: string; }[]; }>" + "Zod.ZodObject<{ id: Zod.ZodString; title: Zod.ZodString; createdAt: Zod.ZodNumber; createdBy: Zod.ZodString; updatedAt: Zod.ZodNumber; params: Zod.ZodObject<{ timeRange: Zod.ZodObject<{ from: Zod.ZodNumber; to: Zod.ZodNumber; }, \"strip\", Zod.ZodTypeAny, { from: number; to: number; }, { from: number; to: number; }>; }, \"strip\", Zod.ZodTypeAny, { timeRange: { from: number; to: number; }; }, { timeRange: { from: number; to: number; }; }>; origin: Zod.ZodUnion<[Zod.ZodObject<{ type: Zod.ZodLiteral<\"alert\">; id: Zod.ZodString; }, \"strip\", Zod.ZodTypeAny, { id: string; type: \"alert\"; }, { id: string; type: \"alert\"; }>, Zod.ZodObject<{ type: Zod.ZodLiteral<\"blank\">; }, \"strip\", Zod.ZodTypeAny, { type: \"blank\"; }, { type: \"blank\"; }>]>; status: Zod.ZodUnion<[Zod.ZodLiteral<\"triage\">, Zod.ZodLiteral<\"active\">, Zod.ZodLiteral<\"mitigated\">, Zod.ZodLiteral<\"resolved\">, Zod.ZodLiteral<\"cancelled\">]>; tags: Zod.ZodArray; notes: Zod.ZodArray, \"many\">; items: Zod.ZodArray, Zod.ZodObject<{ title: Zod.ZodString; type: Zod.ZodString; params: Zod.ZodRecord; }, \"strip\", Zod.ZodTypeAny, { params: Record; type: string; title: string; }, { params: Record; type: string; title: string; }>>, \"many\">; }, \"strip\", Zod.ZodTypeAny, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }, { params: { timeRange: { from: number; to: number; }; }; id: string; tags: string[]; title: string; createdBy: string; createdAt: number; updatedAt: number; status: \"active\" | \"triage\" | \"mitigated\" | \"resolved\" | \"cancelled\"; items: ({ id: string; createdBy: string; createdAt: number; updatedAt: number; } & { params: Record; type: string; title: string; })[]; origin: { id: string; type: \"alert\"; } | { type: \"blank\"; }; notes: { id: string; createdBy: string; createdAt: number; updatedAt: number; content: string; }[]; }>" ], "path": "packages/kbn-investigation-shared/src/rest_specs/update.ts", "deprecated": false, diff --git a/api_docs/kbn_investigation_shared.mdx b/api_docs/kbn_investigation_shared.mdx index 0caaa8fe89cf6..2e6194ad7ea9e 100644 --- a/api_docs/kbn_investigation_shared.mdx +++ b/api_docs/kbn_investigation_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-investigation-shared title: "@kbn/investigation-shared" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/investigation-shared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/investigation-shared'] --- import kbnInvestigationSharedObj from './kbn_investigation_shared.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/ | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 59 | 0 | 59 | 0 | +| 73 | 0 | 73 | 0 | ## Common diff --git a/api_docs/kbn_io_ts_utils.mdx b/api_docs/kbn_io_ts_utils.mdx index a9dea8305f8eb..128cef03539c0 100644 --- a/api_docs/kbn_io_ts_utils.mdx +++ b/api_docs/kbn_io_ts_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-io-ts-utils title: "@kbn/io-ts-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/io-ts-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/io-ts-utils'] --- import kbnIoTsUtilsObj from './kbn_io_ts_utils.devdocs.json'; diff --git a/api_docs/kbn_ipynb.mdx b/api_docs/kbn_ipynb.mdx index deaad141f0c2e..8204aad358b33 100644 --- a/api_docs/kbn_ipynb.mdx +++ b/api_docs/kbn_ipynb.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ipynb title: "@kbn/ipynb" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ipynb plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ipynb'] --- import kbnIpynbObj from './kbn_ipynb.devdocs.json'; diff --git a/api_docs/kbn_jest_serializers.mdx b/api_docs/kbn_jest_serializers.mdx index d85e843c6fc6c..b8ac260d701bc 100644 --- a/api_docs/kbn_jest_serializers.mdx +++ b/api_docs/kbn_jest_serializers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-jest-serializers title: "@kbn/jest-serializers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/jest-serializers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/jest-serializers'] --- import kbnJestSerializersObj from './kbn_jest_serializers.devdocs.json'; diff --git a/api_docs/kbn_journeys.mdx b/api_docs/kbn_journeys.mdx index 2a6962324f0d4..d1272cf0ef0f7 100644 --- a/api_docs/kbn_journeys.mdx +++ b/api_docs/kbn_journeys.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-journeys title: "@kbn/journeys" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/journeys plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/journeys'] --- import kbnJourneysObj from './kbn_journeys.devdocs.json'; diff --git a/api_docs/kbn_json_ast.mdx b/api_docs/kbn_json_ast.mdx index 332d3d181d4c6..4f8a72df46c77 100644 --- a/api_docs/kbn_json_ast.mdx +++ b/api_docs/kbn_json_ast.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-json-ast title: "@kbn/json-ast" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/json-ast plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/json-ast'] --- import kbnJsonAstObj from './kbn_json_ast.devdocs.json'; diff --git a/api_docs/kbn_json_schemas.mdx b/api_docs/kbn_json_schemas.mdx index 2ad6968cf1132..7ccb7dd52c7a4 100644 --- a/api_docs/kbn_json_schemas.mdx +++ b/api_docs/kbn_json_schemas.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-json-schemas title: "@kbn/json-schemas" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/json-schemas plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/json-schemas'] --- import kbnJsonSchemasObj from './kbn_json_schemas.devdocs.json'; diff --git a/api_docs/kbn_kibana_manifest_schema.mdx b/api_docs/kbn_kibana_manifest_schema.mdx index d200858245a7b..345f1394e77dd 100644 --- a/api_docs/kbn_kibana_manifest_schema.mdx +++ b/api_docs/kbn_kibana_manifest_schema.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-kibana-manifest-schema title: "@kbn/kibana-manifest-schema" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/kibana-manifest-schema plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/kibana-manifest-schema'] --- import kbnKibanaManifestSchemaObj from './kbn_kibana_manifest_schema.devdocs.json'; diff --git a/api_docs/kbn_language_documentation_popover.devdocs.json b/api_docs/kbn_language_documentation_popover.devdocs.json index 63df68fdd2a7c..a3879146da8f3 100644 --- a/api_docs/kbn_language_documentation_popover.devdocs.json +++ b/api_docs/kbn_language_documentation_popover.devdocs.json @@ -19,6 +19,70 @@ "common": { "classes": [], "functions": [ + { + "parentPluginId": "@kbn/language-documentation-popover", + "id": "def-common.LanguageDocumentationFlyout", + "type": "Function", + "tags": [], + "label": "LanguageDocumentationFlyout", + "description": [], + "signature": [ + "React.NamedExoticComponent & { readonly type: ({ searchInDescription, linkToDocumentation, isHelpMenuOpen, onHelpMenuVisibilityChange, }: DocumentationFlyoutProps) => JSX.Element; }" + ], + "path": "packages/kbn-language-documentation-popover/src/components/as_flyout/index.tsx", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [ + { + "parentPluginId": "@kbn/language-documentation-popover", + "id": "def-common.LanguageDocumentationFlyout.$1", + "type": "Uncategorized", + "tags": [], + "label": "props", + "description": [], + "signature": [ + "P" + ], + "path": "node_modules/@types/react/index.d.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/language-documentation-popover", + "id": "def-common.LanguageDocumentationInline", + "type": "Function", + "tags": [], + "label": "LanguageDocumentationInline", + "description": [], + "signature": [ + "React.NamedExoticComponent & { readonly type: ({ searchInDescription }: DocumentationInlineProps) => JSX.Element; }" + ], + "path": "packages/kbn-language-documentation-popover/src/components/as_inline/index.tsx", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [ + { + "parentPluginId": "@kbn/language-documentation-popover", + "id": "def-common.LanguageDocumentationInline.$1", + "type": "Uncategorized", + "tags": [], + "label": "props", + "description": [], + "signature": [ + "P" + ], + "path": "node_modules/@types/react/index.d.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, { "parentPluginId": "@kbn/language-documentation-popover", "id": "def-common.LanguageDocumentationPopover", @@ -29,7 +93,7 @@ "signature": [ "React.NamedExoticComponent & { readonly type: ({ language, sections, buttonProps, searchInDescription, linkToDocumentation, isHelpMenuOpen, onHelpMenuVisibilityChange, }: DocumentationPopoverProps) => JSX.Element; }" ], - "path": "packages/kbn-language-documentation-popover/src/components/documentation_popover.tsx", + "path": "packages/kbn-language-documentation-popover/src/components/as_popover/index.tsx", "deprecated": false, "trackAdoption": false, "returnComment": [], @@ -61,7 +125,7 @@ "signature": [ "React.NamedExoticComponent & { readonly type: ({ language, sections, searchInDescription, linkToDocumentation, }: DocumentationProps) => JSX.Element; }" ], - "path": "packages/kbn-language-documentation-popover/src/components/documentation_content.tsx", + "path": "packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.tsx", "deprecated": false, "trackAdoption": false, "returnComment": [], @@ -92,7 +156,7 @@ "tags": [], "label": "LanguageDocumentationSections", "description": [], - "path": "packages/kbn-language-documentation-popover/src/components/documentation_content.tsx", + "path": "packages/kbn-language-documentation-popover/src/types.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -106,7 +170,7 @@ "signature": [ "{ label: string; description?: string | undefined; items: { label: string; description?: JSX.Element | undefined; }[]; }[]" ], - "path": "packages/kbn-language-documentation-popover/src/components/documentation_content.tsx", + "path": "packages/kbn-language-documentation-popover/src/types.ts", "deprecated": false, "trackAdoption": false }, @@ -120,7 +184,7 @@ "signature": [ "JSX.Element" ], - "path": "packages/kbn-language-documentation-popover/src/components/documentation_content.tsx", + "path": "packages/kbn-language-documentation-popover/src/types.ts", "deprecated": false, "trackAdoption": false } diff --git a/api_docs/kbn_language_documentation_popover.mdx b/api_docs/kbn_language_documentation_popover.mdx index 11a0f3de4d53f..0b06d1748fd06 100644 --- a/api_docs/kbn_language_documentation_popover.mdx +++ b/api_docs/kbn_language_documentation_popover.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-language-documentation-popover title: "@kbn/language-documentation-popover" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/language-documentation-popover plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/language-documentation-popover'] --- import kbnLanguageDocumentationPopoverObj from './kbn_language_documentation_popover.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 7 | 0 | 5 | 0 | +| 11 | 0 | 7 | 0 | ## Common diff --git a/api_docs/kbn_lens_embeddable_utils.mdx b/api_docs/kbn_lens_embeddable_utils.mdx index 0a89f170ef611..d706b4d0a80fe 100644 --- a/api_docs/kbn_lens_embeddable_utils.mdx +++ b/api_docs/kbn_lens_embeddable_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-lens-embeddable-utils title: "@kbn/lens-embeddable-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/lens-embeddable-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/lens-embeddable-utils'] --- import kbnLensEmbeddableUtilsObj from './kbn_lens_embeddable_utils.devdocs.json'; diff --git a/api_docs/kbn_lens_formula_docs.mdx b/api_docs/kbn_lens_formula_docs.mdx index eb2321fd7f55d..9367be4134855 100644 --- a/api_docs/kbn_lens_formula_docs.mdx +++ b/api_docs/kbn_lens_formula_docs.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-lens-formula-docs title: "@kbn/lens-formula-docs" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/lens-formula-docs plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/lens-formula-docs'] --- import kbnLensFormulaDocsObj from './kbn_lens_formula_docs.devdocs.json'; diff --git a/api_docs/kbn_logging.mdx b/api_docs/kbn_logging.mdx index 323fbb620cd0d..936376faf2149 100644 --- a/api_docs/kbn_logging.mdx +++ b/api_docs/kbn_logging.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-logging title: "@kbn/logging" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/logging plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/logging'] --- import kbnLoggingObj from './kbn_logging.devdocs.json'; diff --git a/api_docs/kbn_logging_mocks.mdx b/api_docs/kbn_logging_mocks.mdx index f9fde99a5b430..c5f229b02a167 100644 --- a/api_docs/kbn_logging_mocks.mdx +++ b/api_docs/kbn_logging_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-logging-mocks title: "@kbn/logging-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/logging-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/logging-mocks'] --- import kbnLoggingMocksObj from './kbn_logging_mocks.devdocs.json'; diff --git a/api_docs/kbn_managed_content_badge.mdx b/api_docs/kbn_managed_content_badge.mdx index 0e9b167ecb9e5..3f69ae9060b6c 100644 --- a/api_docs/kbn_managed_content_badge.mdx +++ b/api_docs/kbn_managed_content_badge.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-managed-content-badge title: "@kbn/managed-content-badge" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/managed-content-badge plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/managed-content-badge'] --- import kbnManagedContentBadgeObj from './kbn_managed_content_badge.devdocs.json'; diff --git a/api_docs/kbn_managed_vscode_config.mdx b/api_docs/kbn_managed_vscode_config.mdx index 5be29cc83b7b0..60d972aa72823 100644 --- a/api_docs/kbn_managed_vscode_config.mdx +++ b/api_docs/kbn_managed_vscode_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-managed-vscode-config title: "@kbn/managed-vscode-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/managed-vscode-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/managed-vscode-config'] --- import kbnManagedVscodeConfigObj from './kbn_managed_vscode_config.devdocs.json'; diff --git a/api_docs/kbn_management_cards_navigation.mdx b/api_docs/kbn_management_cards_navigation.mdx index 1b422b93b8af7..80e1fcde1a2f8 100644 --- a/api_docs/kbn_management_cards_navigation.mdx +++ b/api_docs/kbn_management_cards_navigation.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-cards-navigation title: "@kbn/management-cards-navigation" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-cards-navigation plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-cards-navigation'] --- import kbnManagementCardsNavigationObj from './kbn_management_cards_navigation.devdocs.json'; diff --git a/api_docs/kbn_management_settings_application.mdx b/api_docs/kbn_management_settings_application.mdx index eb28ad73f8c56..79d565f48f33a 100644 --- a/api_docs/kbn_management_settings_application.mdx +++ b/api_docs/kbn_management_settings_application.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-application title: "@kbn/management-settings-application" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-application plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-application'] --- import kbnManagementSettingsApplicationObj from './kbn_management_settings_application.devdocs.json'; diff --git a/api_docs/kbn_management_settings_components_field_category.mdx b/api_docs/kbn_management_settings_components_field_category.mdx index 5bf3574beb174..c69c42b420edf 100644 --- a/api_docs/kbn_management_settings_components_field_category.mdx +++ b/api_docs/kbn_management_settings_components_field_category.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-components-field-category title: "@kbn/management-settings-components-field-category" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-components-field-category plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-components-field-category'] --- import kbnManagementSettingsComponentsFieldCategoryObj from './kbn_management_settings_components_field_category.devdocs.json'; diff --git a/api_docs/kbn_management_settings_components_field_input.mdx b/api_docs/kbn_management_settings_components_field_input.mdx index b48fabc78bea7..b3369c57bd9a3 100644 --- a/api_docs/kbn_management_settings_components_field_input.mdx +++ b/api_docs/kbn_management_settings_components_field_input.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-components-field-input title: "@kbn/management-settings-components-field-input" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-components-field-input plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-components-field-input'] --- import kbnManagementSettingsComponentsFieldInputObj from './kbn_management_settings_components_field_input.devdocs.json'; diff --git a/api_docs/kbn_management_settings_components_field_row.mdx b/api_docs/kbn_management_settings_components_field_row.mdx index 223a64e7a982e..d6ef1a355fd59 100644 --- a/api_docs/kbn_management_settings_components_field_row.mdx +++ b/api_docs/kbn_management_settings_components_field_row.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-components-field-row title: "@kbn/management-settings-components-field-row" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-components-field-row plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-components-field-row'] --- import kbnManagementSettingsComponentsFieldRowObj from './kbn_management_settings_components_field_row.devdocs.json'; diff --git a/api_docs/kbn_management_settings_components_form.mdx b/api_docs/kbn_management_settings_components_form.mdx index d66a64f9e150e..cd9fed3c971e2 100644 --- a/api_docs/kbn_management_settings_components_form.mdx +++ b/api_docs/kbn_management_settings_components_form.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-components-form title: "@kbn/management-settings-components-form" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-components-form plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-components-form'] --- import kbnManagementSettingsComponentsFormObj from './kbn_management_settings_components_form.devdocs.json'; diff --git a/api_docs/kbn_management_settings_field_definition.mdx b/api_docs/kbn_management_settings_field_definition.mdx index ce9e90da1f9b1..5baac64dc8810 100644 --- a/api_docs/kbn_management_settings_field_definition.mdx +++ b/api_docs/kbn_management_settings_field_definition.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-field-definition title: "@kbn/management-settings-field-definition" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-field-definition plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-field-definition'] --- import kbnManagementSettingsFieldDefinitionObj from './kbn_management_settings_field_definition.devdocs.json'; diff --git a/api_docs/kbn_management_settings_ids.devdocs.json b/api_docs/kbn_management_settings_ids.devdocs.json index 02da2b2d9b18f..1e433c58a1c89 100644 --- a/api_docs/kbn_management_settings_ids.devdocs.json +++ b/api_docs/kbn_management_settings_ids.devdocs.json @@ -1072,21 +1072,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "@kbn/management-settings-ids", - "id": "def-common.OBSERVABILITY_AI_ASSISTANT_LOGS_INDEX_PATTERN_ID", - "type": "string", - "tags": [], - "label": "OBSERVABILITY_AI_ASSISTANT_LOGS_INDEX_PATTERN_ID", - "description": [], - "signature": [ - "\"observability:aiAssistantLogsIndexPattern\"" - ], - "path": "packages/kbn-management/settings/setting_ids/index.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "@kbn/management-settings-ids", "id": "def-common.OBSERVABILITY_AI_ASSISTANT_SEARCH_CONNECTOR_INDEX_PATTERN", @@ -1507,6 +1492,21 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/management-settings-ids", + "id": "def-common.OBSERVABILITY_SEARCH_EXCLUDED_DATA_TIERS", + "type": "string", + "tags": [], + "label": "OBSERVABILITY_SEARCH_EXCLUDED_DATA_TIERS", + "description": [], + "signature": [ + "\"observability:searchExcludedDataTiers\"" + ], + "path": "packages/kbn-management/settings/setting_ids/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/management-settings-ids", "id": "def-common.QUERY_ALLOW_LEADING_WILDCARDS_ID", diff --git a/api_docs/kbn_management_settings_ids.mdx b/api_docs/kbn_management_settings_ids.mdx index 492de46c2a79d..cbe76833a7126 100644 --- a/api_docs/kbn_management_settings_ids.mdx +++ b/api_docs/kbn_management_settings_ids.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-ids title: "@kbn/management-settings-ids" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-ids plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-ids'] --- import kbnManagementSettingsIdsObj from './kbn_management_settings_ids.devdocs.json'; diff --git a/api_docs/kbn_management_settings_section_registry.mdx b/api_docs/kbn_management_settings_section_registry.mdx index 13a136a5652ce..cf1f13590015a 100644 --- a/api_docs/kbn_management_settings_section_registry.mdx +++ b/api_docs/kbn_management_settings_section_registry.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-section-registry title: "@kbn/management-settings-section-registry" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-section-registry plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-section-registry'] --- import kbnManagementSettingsSectionRegistryObj from './kbn_management_settings_section_registry.devdocs.json'; diff --git a/api_docs/kbn_management_settings_types.mdx b/api_docs/kbn_management_settings_types.mdx index 39c080fda374d..8c1930a20a4dd 100644 --- a/api_docs/kbn_management_settings_types.mdx +++ b/api_docs/kbn_management_settings_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-types title: "@kbn/management-settings-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-types'] --- import kbnManagementSettingsTypesObj from './kbn_management_settings_types.devdocs.json'; diff --git a/api_docs/kbn_management_settings_utilities.mdx b/api_docs/kbn_management_settings_utilities.mdx index 1d41a8bfc7a92..9086184f6b4bf 100644 --- a/api_docs/kbn_management_settings_utilities.mdx +++ b/api_docs/kbn_management_settings_utilities.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-settings-utilities title: "@kbn/management-settings-utilities" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-settings-utilities plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-settings-utilities'] --- import kbnManagementSettingsUtilitiesObj from './kbn_management_settings_utilities.devdocs.json'; diff --git a/api_docs/kbn_management_storybook_config.mdx b/api_docs/kbn_management_storybook_config.mdx index 30f01d1d0e610..da24aae81f4fb 100644 --- a/api_docs/kbn_management_storybook_config.mdx +++ b/api_docs/kbn_management_storybook_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-management-storybook-config title: "@kbn/management-storybook-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/management-storybook-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/management-storybook-config'] --- import kbnManagementStorybookConfigObj from './kbn_management_storybook_config.devdocs.json'; diff --git a/api_docs/kbn_mapbox_gl.mdx b/api_docs/kbn_mapbox_gl.mdx index eddd72eb11629..642196c7d3673 100644 --- a/api_docs/kbn_mapbox_gl.mdx +++ b/api_docs/kbn_mapbox_gl.mdx @@ -8,14 +8,14 @@ slug: /kibana-dev-docs/api/kbn-mapbox-gl title: "@kbn/mapbox-gl" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/mapbox-gl plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/mapbox-gl'] --- import kbnMapboxGlObj from './kbn_mapbox_gl.devdocs.json'; -Contact [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) for questions regarding this plugin. +Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) for questions regarding this plugin. **Code health stats** diff --git a/api_docs/kbn_maps_vector_tile_utils.mdx b/api_docs/kbn_maps_vector_tile_utils.mdx index 5e8af4ac2d3b0..eb136dce3e2e4 100644 --- a/api_docs/kbn_maps_vector_tile_utils.mdx +++ b/api_docs/kbn_maps_vector_tile_utils.mdx @@ -8,14 +8,14 @@ slug: /kibana-dev-docs/api/kbn-maps-vector-tile-utils title: "@kbn/maps-vector-tile-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/maps-vector-tile-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/maps-vector-tile-utils'] --- import kbnMapsVectorTileUtilsObj from './kbn_maps_vector_tile_utils.devdocs.json'; -Contact [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) for questions regarding this plugin. +Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) for questions regarding this plugin. **Code health stats** diff --git a/api_docs/kbn_ml_agg_utils.mdx b/api_docs/kbn_ml_agg_utils.mdx index 5b4c8c8217aed..558638e7e781c 100644 --- a/api_docs/kbn_ml_agg_utils.mdx +++ b/api_docs/kbn_ml_agg_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-agg-utils title: "@kbn/ml-agg-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-agg-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-agg-utils'] --- import kbnMlAggUtilsObj from './kbn_ml_agg_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_anomaly_utils.devdocs.json b/api_docs/kbn_ml_anomaly_utils.devdocs.json index 3374b3309e786..90796eb0b5e84 100644 --- a/api_docs/kbn_ml_anomaly_utils.devdocs.json +++ b/api_docs/kbn_ml_anomaly_utils.devdocs.json @@ -1554,12 +1554,15 @@ { "parentPluginId": "@kbn/ml-anomaly-utils", "id": "def-common.MlAnomaliesTableRecord.modelPlotEnabled", - "type": "boolean", + "type": "CompoundType", "tags": [], "label": "modelPlotEnabled", "description": [ "\nReturns true if the job has the model plot enabled" ], + "signature": [ + "boolean | undefined" + ], "path": "x-pack/packages/ml/anomaly_utils/types.ts", "deprecated": false, "trackAdoption": false diff --git a/api_docs/kbn_ml_anomaly_utils.mdx b/api_docs/kbn_ml_anomaly_utils.mdx index 48f3a90ab2cd8..0adac52f79354 100644 --- a/api_docs/kbn_ml_anomaly_utils.mdx +++ b/api_docs/kbn_ml_anomaly_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-anomaly-utils title: "@kbn/ml-anomaly-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-anomaly-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-anomaly-utils'] --- import kbnMlAnomalyUtilsObj from './kbn_ml_anomaly_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_cancellable_search.mdx b/api_docs/kbn_ml_cancellable_search.mdx index ee45572011f0c..733d6d21221e9 100644 --- a/api_docs/kbn_ml_cancellable_search.mdx +++ b/api_docs/kbn_ml_cancellable_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-cancellable-search title: "@kbn/ml-cancellable-search" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-cancellable-search plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-cancellable-search'] --- import kbnMlCancellableSearchObj from './kbn_ml_cancellable_search.devdocs.json'; diff --git a/api_docs/kbn_ml_category_validator.mdx b/api_docs/kbn_ml_category_validator.mdx index 189e40899f8a7..927bfe887d6c3 100644 --- a/api_docs/kbn_ml_category_validator.mdx +++ b/api_docs/kbn_ml_category_validator.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-category-validator title: "@kbn/ml-category-validator" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-category-validator plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-category-validator'] --- import kbnMlCategoryValidatorObj from './kbn_ml_category_validator.devdocs.json'; diff --git a/api_docs/kbn_ml_chi2test.mdx b/api_docs/kbn_ml_chi2test.mdx index c66a71c49f67e..d33c68e7abddb 100644 --- a/api_docs/kbn_ml_chi2test.mdx +++ b/api_docs/kbn_ml_chi2test.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-chi2test title: "@kbn/ml-chi2test" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-chi2test plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-chi2test'] --- import kbnMlChi2testObj from './kbn_ml_chi2test.devdocs.json'; diff --git a/api_docs/kbn_ml_data_frame_analytics_utils.mdx b/api_docs/kbn_ml_data_frame_analytics_utils.mdx index 42eea620e6cda..f4b884dd5870c 100644 --- a/api_docs/kbn_ml_data_frame_analytics_utils.mdx +++ b/api_docs/kbn_ml_data_frame_analytics_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-data-frame-analytics-utils title: "@kbn/ml-data-frame-analytics-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-data-frame-analytics-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-data-frame-analytics-utils'] --- import kbnMlDataFrameAnalyticsUtilsObj from './kbn_ml_data_frame_analytics_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_data_grid.mdx b/api_docs/kbn_ml_data_grid.mdx index c931d65721bcb..b45f594bc0aee 100644 --- a/api_docs/kbn_ml_data_grid.mdx +++ b/api_docs/kbn_ml_data_grid.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-data-grid title: "@kbn/ml-data-grid" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-data-grid plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-data-grid'] --- import kbnMlDataGridObj from './kbn_ml_data_grid.devdocs.json'; diff --git a/api_docs/kbn_ml_date_picker.mdx b/api_docs/kbn_ml_date_picker.mdx index 4a9c95912a1aa..f1a14b5f023ea 100644 --- a/api_docs/kbn_ml_date_picker.mdx +++ b/api_docs/kbn_ml_date_picker.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-date-picker title: "@kbn/ml-date-picker" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-date-picker plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-date-picker'] --- import kbnMlDatePickerObj from './kbn_ml_date_picker.devdocs.json'; diff --git a/api_docs/kbn_ml_date_utils.mdx b/api_docs/kbn_ml_date_utils.mdx index cdf02bab8c97a..39fcbdcb8f8d4 100644 --- a/api_docs/kbn_ml_date_utils.mdx +++ b/api_docs/kbn_ml_date_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-date-utils title: "@kbn/ml-date-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-date-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-date-utils'] --- import kbnMlDateUtilsObj from './kbn_ml_date_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_error_utils.mdx b/api_docs/kbn_ml_error_utils.mdx index d665e70b910b5..186e3e12be604 100644 --- a/api_docs/kbn_ml_error_utils.mdx +++ b/api_docs/kbn_ml_error_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-error-utils title: "@kbn/ml-error-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-error-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-error-utils'] --- import kbnMlErrorUtilsObj from './kbn_ml_error_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_in_memory_table.mdx b/api_docs/kbn_ml_in_memory_table.mdx index e28964fbe66bb..5f23961e8f191 100644 --- a/api_docs/kbn_ml_in_memory_table.mdx +++ b/api_docs/kbn_ml_in_memory_table.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-in-memory-table title: "@kbn/ml-in-memory-table" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-in-memory-table plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-in-memory-table'] --- import kbnMlInMemoryTableObj from './kbn_ml_in_memory_table.devdocs.json'; diff --git a/api_docs/kbn_ml_is_defined.mdx b/api_docs/kbn_ml_is_defined.mdx index 0d263d4ab2fce..fe1628cac7bee 100644 --- a/api_docs/kbn_ml_is_defined.mdx +++ b/api_docs/kbn_ml_is_defined.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-is-defined title: "@kbn/ml-is-defined" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-is-defined plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-is-defined'] --- import kbnMlIsDefinedObj from './kbn_ml_is_defined.devdocs.json'; diff --git a/api_docs/kbn_ml_is_populated_object.mdx b/api_docs/kbn_ml_is_populated_object.mdx index 200c8e651e0fa..1c2db63f660d1 100644 --- a/api_docs/kbn_ml_is_populated_object.mdx +++ b/api_docs/kbn_ml_is_populated_object.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-is-populated-object title: "@kbn/ml-is-populated-object" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-is-populated-object plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-is-populated-object'] --- import kbnMlIsPopulatedObjectObj from './kbn_ml_is_populated_object.devdocs.json'; diff --git a/api_docs/kbn_ml_kibana_theme.mdx b/api_docs/kbn_ml_kibana_theme.mdx index 46c4ff9e5b04a..7605c416504a2 100644 --- a/api_docs/kbn_ml_kibana_theme.mdx +++ b/api_docs/kbn_ml_kibana_theme.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-kibana-theme title: "@kbn/ml-kibana-theme" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-kibana-theme plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-kibana-theme'] --- import kbnMlKibanaThemeObj from './kbn_ml_kibana_theme.devdocs.json'; diff --git a/api_docs/kbn_ml_local_storage.mdx b/api_docs/kbn_ml_local_storage.mdx index 7190e5d9a8229..cf4dcdae6d300 100644 --- a/api_docs/kbn_ml_local_storage.mdx +++ b/api_docs/kbn_ml_local_storage.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-local-storage title: "@kbn/ml-local-storage" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-local-storage plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-local-storage'] --- import kbnMlLocalStorageObj from './kbn_ml_local_storage.devdocs.json'; diff --git a/api_docs/kbn_ml_nested_property.mdx b/api_docs/kbn_ml_nested_property.mdx index 57329a3f1996f..33e5fc2f318f4 100644 --- a/api_docs/kbn_ml_nested_property.mdx +++ b/api_docs/kbn_ml_nested_property.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-nested-property title: "@kbn/ml-nested-property" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-nested-property plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-nested-property'] --- import kbnMlNestedPropertyObj from './kbn_ml_nested_property.devdocs.json'; diff --git a/api_docs/kbn_ml_number_utils.mdx b/api_docs/kbn_ml_number_utils.mdx index 2474fb2c29454..ed18d5de8ffa9 100644 --- a/api_docs/kbn_ml_number_utils.mdx +++ b/api_docs/kbn_ml_number_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-number-utils title: "@kbn/ml-number-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-number-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-number-utils'] --- import kbnMlNumberUtilsObj from './kbn_ml_number_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_query_utils.mdx b/api_docs/kbn_ml_query_utils.mdx index 604d2572910eb..adcdab37beb98 100644 --- a/api_docs/kbn_ml_query_utils.mdx +++ b/api_docs/kbn_ml_query_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-query-utils title: "@kbn/ml-query-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-query-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-query-utils'] --- import kbnMlQueryUtilsObj from './kbn_ml_query_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_random_sampler_utils.mdx b/api_docs/kbn_ml_random_sampler_utils.mdx index 18c8a38fb03c0..577808927d805 100644 --- a/api_docs/kbn_ml_random_sampler_utils.mdx +++ b/api_docs/kbn_ml_random_sampler_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-random-sampler-utils title: "@kbn/ml-random-sampler-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-random-sampler-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-random-sampler-utils'] --- import kbnMlRandomSamplerUtilsObj from './kbn_ml_random_sampler_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_route_utils.mdx b/api_docs/kbn_ml_route_utils.mdx index 82f2f994b6cf1..923266c043ff4 100644 --- a/api_docs/kbn_ml_route_utils.mdx +++ b/api_docs/kbn_ml_route_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-route-utils title: "@kbn/ml-route-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-route-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-route-utils'] --- import kbnMlRouteUtilsObj from './kbn_ml_route_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_runtime_field_utils.mdx b/api_docs/kbn_ml_runtime_field_utils.mdx index be1808d91984d..82e4b64689ae4 100644 --- a/api_docs/kbn_ml_runtime_field_utils.mdx +++ b/api_docs/kbn_ml_runtime_field_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-runtime-field-utils title: "@kbn/ml-runtime-field-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-runtime-field-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-runtime-field-utils'] --- import kbnMlRuntimeFieldUtilsObj from './kbn_ml_runtime_field_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_string_hash.mdx b/api_docs/kbn_ml_string_hash.mdx index 8a4449686ae93..d592d60b040d8 100644 --- a/api_docs/kbn_ml_string_hash.mdx +++ b/api_docs/kbn_ml_string_hash.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-string-hash title: "@kbn/ml-string-hash" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-string-hash plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-string-hash'] --- import kbnMlStringHashObj from './kbn_ml_string_hash.devdocs.json'; diff --git a/api_docs/kbn_ml_time_buckets.mdx b/api_docs/kbn_ml_time_buckets.mdx index aeb7548359519..767952ccd817d 100644 --- a/api_docs/kbn_ml_time_buckets.mdx +++ b/api_docs/kbn_ml_time_buckets.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-time-buckets title: "@kbn/ml-time-buckets" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-time-buckets plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-time-buckets'] --- import kbnMlTimeBucketsObj from './kbn_ml_time_buckets.devdocs.json'; diff --git a/api_docs/kbn_ml_trained_models_utils.mdx b/api_docs/kbn_ml_trained_models_utils.mdx index a4b4e37615524..5b38e9620f08c 100644 --- a/api_docs/kbn_ml_trained_models_utils.mdx +++ b/api_docs/kbn_ml_trained_models_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-trained-models-utils title: "@kbn/ml-trained-models-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-trained-models-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-trained-models-utils'] --- import kbnMlTrainedModelsUtilsObj from './kbn_ml_trained_models_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_ui_actions.mdx b/api_docs/kbn_ml_ui_actions.mdx index 4fb35f53e2c26..81160cda55931 100644 --- a/api_docs/kbn_ml_ui_actions.mdx +++ b/api_docs/kbn_ml_ui_actions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-ui-actions title: "@kbn/ml-ui-actions" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-ui-actions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-ui-actions'] --- import kbnMlUiActionsObj from './kbn_ml_ui_actions.devdocs.json'; diff --git a/api_docs/kbn_ml_url_state.mdx b/api_docs/kbn_ml_url_state.mdx index 8cc5eeb77c13c..920f89ff44ba2 100644 --- a/api_docs/kbn_ml_url_state.mdx +++ b/api_docs/kbn_ml_url_state.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ml-url-state title: "@kbn/ml-url-state" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ml-url-state plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-url-state'] --- import kbnMlUrlStateObj from './kbn_ml_url_state.devdocs.json'; diff --git a/api_docs/kbn_mock_idp_utils.mdx b/api_docs/kbn_mock_idp_utils.mdx index 594a780321cd2..c6b25105d30ed 100644 --- a/api_docs/kbn_mock_idp_utils.mdx +++ b/api_docs/kbn_mock_idp_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-mock-idp-utils title: "@kbn/mock-idp-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/mock-idp-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/mock-idp-utils'] --- import kbnMockIdpUtilsObj from './kbn_mock_idp_utils.devdocs.json'; diff --git a/api_docs/kbn_monaco.devdocs.json b/api_docs/kbn_monaco.devdocs.json index 50ee211f14029..4a460e13cec3c 100644 --- a/api_docs/kbn_monaco.devdocs.json +++ b/api_docs/kbn_monaco.devdocs.json @@ -144,6 +144,23 @@ "returnComment": [], "initialIsOpen": false }, + { + "parentPluginId": "@kbn/monaco", + "id": "def-common.createOutputParser", + "type": "Function", + "tags": [], + "label": "createOutputParser", + "description": [], + "signature": [ + "() => (source: any, reviver: any) => any" + ], + "path": "packages/kbn-monaco/src/console/output_parser.js", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [], + "initialIsOpen": false + }, { "parentPluginId": "@kbn/monaco", "id": "def-common.getParsedRequestsProvider", @@ -482,7 +499,9 @@ "label": "getSources", "description": [], "signature": [ - "CallbackFn<{}, { name: string; hidden: boolean; title?: string | undefined; dataStreams?: { name: string; title?: string | undefined; }[] | undefined; type?: string | undefined; }> | undefined" + "CallbackFn<{}, ", + "ESQLSourceResult", + "> | undefined" ], "path": "packages/kbn-esql-validation-autocomplete/src/shared/types.ts", "deprecated": false, @@ -539,6 +558,22 @@ "trackAdoption": false, "children": [], "returnComment": [] + }, + { + "parentPluginId": "@kbn/monaco", + "id": "def-common.ESQLCallbacks.getFieldsMetadata", + "type": "Object", + "tags": [], + "label": "getFieldsMetadata", + "description": [], + "signature": [ + "Promise<", + "PartialFieldsMetadataClient", + "> | undefined" + ], + "path": "packages/kbn-esql-validation-autocomplete/src/shared/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/kbn_monaco.mdx b/api_docs/kbn_monaco.mdx index 010aac44acb67..809f1382c71c0 100644 --- a/api_docs/kbn_monaco.mdx +++ b/api_docs/kbn_monaco.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-monaco title: "@kbn/monaco" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/monaco plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/monaco'] --- import kbnMonacoObj from './kbn_monaco.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sh | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 121 | 0 | 121 | 3 | +| 123 | 0 | 123 | 3 | ## Common diff --git a/api_docs/kbn_object_versioning.mdx b/api_docs/kbn_object_versioning.mdx index 8367646437d74..a0c7a18f0a5c1 100644 --- a/api_docs/kbn_object_versioning.mdx +++ b/api_docs/kbn_object_versioning.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-object-versioning title: "@kbn/object-versioning" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/object-versioning plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/object-versioning'] --- import kbnObjectVersioningObj from './kbn_object_versioning.devdocs.json'; diff --git a/api_docs/kbn_object_versioning_utils.mdx b/api_docs/kbn_object_versioning_utils.mdx index d1f67b43f75c9..4deb4ddc5aa27 100644 --- a/api_docs/kbn_object_versioning_utils.mdx +++ b/api_docs/kbn_object_versioning_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-object-versioning-utils title: "@kbn/object-versioning-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/object-versioning-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/object-versioning-utils'] --- import kbnObjectVersioningUtilsObj from './kbn_object_versioning_utils.devdocs.json'; diff --git a/api_docs/kbn_observability_alert_details.mdx b/api_docs/kbn_observability_alert_details.mdx index e3fd96e6a5fab..f1d85461ba167 100644 --- a/api_docs/kbn_observability_alert_details.mdx +++ b/api_docs/kbn_observability_alert_details.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-observability-alert-details title: "@kbn/observability-alert-details" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/observability-alert-details plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/observability-alert-details'] --- import kbnObservabilityAlertDetailsObj from './kbn_observability_alert_details.devdocs.json'; diff --git a/api_docs/kbn_observability_alerting_rule_utils.mdx b/api_docs/kbn_observability_alerting_rule_utils.mdx index 14935aa523b63..629b672985969 100644 --- a/api_docs/kbn_observability_alerting_rule_utils.mdx +++ b/api_docs/kbn_observability_alerting_rule_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-observability-alerting-rule-utils title: "@kbn/observability-alerting-rule-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/observability-alerting-rule-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/observability-alerting-rule-utils'] --- import kbnObservabilityAlertingRuleUtilsObj from './kbn_observability_alerting_rule_utils.devdocs.json'; diff --git a/api_docs/kbn_observability_alerting_test_data.mdx b/api_docs/kbn_observability_alerting_test_data.mdx index 9b855c42672ad..ffd5717b8e270 100644 --- a/api_docs/kbn_observability_alerting_test_data.mdx +++ b/api_docs/kbn_observability_alerting_test_data.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-observability-alerting-test-data title: "@kbn/observability-alerting-test-data" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/observability-alerting-test-data plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/observability-alerting-test-data'] --- import kbnObservabilityAlertingTestDataObj from './kbn_observability_alerting_test_data.devdocs.json'; diff --git a/api_docs/kbn_observability_get_padded_alert_time_range_util.mdx b/api_docs/kbn_observability_get_padded_alert_time_range_util.mdx index 652ba42b46b9e..5a82a3f0e8efe 100644 --- a/api_docs/kbn_observability_get_padded_alert_time_range_util.mdx +++ b/api_docs/kbn_observability_get_padded_alert_time_range_util.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-observability-get-padded-alert-time-range-util title: "@kbn/observability-get-padded-alert-time-range-util" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/observability-get-padded-alert-time-range-util plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/observability-get-padded-alert-time-range-util'] --- import kbnObservabilityGetPaddedAlertTimeRangeUtilObj from './kbn_observability_get_padded_alert_time_range_util.devdocs.json'; diff --git a/api_docs/kbn_openapi_bundler.mdx b/api_docs/kbn_openapi_bundler.mdx index 513ea700f3a5f..cd77861744f97 100644 --- a/api_docs/kbn_openapi_bundler.mdx +++ b/api_docs/kbn_openapi_bundler.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-openapi-bundler title: "@kbn/openapi-bundler" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/openapi-bundler plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/openapi-bundler'] --- import kbnOpenapiBundlerObj from './kbn_openapi_bundler.devdocs.json'; diff --git a/api_docs/kbn_openapi_generator.mdx b/api_docs/kbn_openapi_generator.mdx index e0ede1600d22b..9bd38f08ce5b5 100644 --- a/api_docs/kbn_openapi_generator.mdx +++ b/api_docs/kbn_openapi_generator.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-openapi-generator title: "@kbn/openapi-generator" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/openapi-generator plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/openapi-generator'] --- import kbnOpenapiGeneratorObj from './kbn_openapi_generator.devdocs.json'; diff --git a/api_docs/kbn_optimizer.mdx b/api_docs/kbn_optimizer.mdx index 94eaf0805d90f..2093b286ae2d8 100644 --- a/api_docs/kbn_optimizer.mdx +++ b/api_docs/kbn_optimizer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-optimizer title: "@kbn/optimizer" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/optimizer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/optimizer'] --- import kbnOptimizerObj from './kbn_optimizer.devdocs.json'; diff --git a/api_docs/kbn_optimizer_webpack_helpers.mdx b/api_docs/kbn_optimizer_webpack_helpers.mdx index a7c1b0df2c9bc..7d45db1a0a08b 100644 --- a/api_docs/kbn_optimizer_webpack_helpers.mdx +++ b/api_docs/kbn_optimizer_webpack_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-optimizer-webpack-helpers title: "@kbn/optimizer-webpack-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/optimizer-webpack-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/optimizer-webpack-helpers'] --- import kbnOptimizerWebpackHelpersObj from './kbn_optimizer_webpack_helpers.devdocs.json'; diff --git a/api_docs/kbn_osquery_io_ts_types.mdx b/api_docs/kbn_osquery_io_ts_types.mdx index 5bc54755ee712..bfebd00974ec0 100644 --- a/api_docs/kbn_osquery_io_ts_types.mdx +++ b/api_docs/kbn_osquery_io_ts_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-osquery-io-ts-types title: "@kbn/osquery-io-ts-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/osquery-io-ts-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/osquery-io-ts-types'] --- import kbnOsqueryIoTsTypesObj from './kbn_osquery_io_ts_types.devdocs.json'; diff --git a/api_docs/kbn_panel_loader.mdx b/api_docs/kbn_panel_loader.mdx index 1d9c1b0c63926..45002bca53498 100644 --- a/api_docs/kbn_panel_loader.mdx +++ b/api_docs/kbn_panel_loader.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-panel-loader title: "@kbn/panel-loader" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/panel-loader plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/panel-loader'] --- import kbnPanelLoaderObj from './kbn_panel_loader.devdocs.json'; diff --git a/api_docs/kbn_performance_testing_dataset_extractor.mdx b/api_docs/kbn_performance_testing_dataset_extractor.mdx index 1a2efe56ad378..b8cfa2885df7f 100644 --- a/api_docs/kbn_performance_testing_dataset_extractor.mdx +++ b/api_docs/kbn_performance_testing_dataset_extractor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-performance-testing-dataset-extractor title: "@kbn/performance-testing-dataset-extractor" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/performance-testing-dataset-extractor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/performance-testing-dataset-extractor'] --- import kbnPerformanceTestingDatasetExtractorObj from './kbn_performance_testing_dataset_extractor.devdocs.json'; diff --git a/api_docs/kbn_plugin_check.mdx b/api_docs/kbn_plugin_check.mdx index 4ebd65625f4d8..b1854ebe274a9 100644 --- a/api_docs/kbn_plugin_check.mdx +++ b/api_docs/kbn_plugin_check.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-plugin-check title: "@kbn/plugin-check" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/plugin-check plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/plugin-check'] --- import kbnPluginCheckObj from './kbn_plugin_check.devdocs.json'; diff --git a/api_docs/kbn_plugin_generator.mdx b/api_docs/kbn_plugin_generator.mdx index 2fff1d6e944d5..6d0f28469f641 100644 --- a/api_docs/kbn_plugin_generator.mdx +++ b/api_docs/kbn_plugin_generator.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-plugin-generator title: "@kbn/plugin-generator" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/plugin-generator plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/plugin-generator'] --- import kbnPluginGeneratorObj from './kbn_plugin_generator.devdocs.json'; diff --git a/api_docs/kbn_plugin_helpers.mdx b/api_docs/kbn_plugin_helpers.mdx index ae6425a3ddeee..90d73e90f26d0 100644 --- a/api_docs/kbn_plugin_helpers.mdx +++ b/api_docs/kbn_plugin_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-plugin-helpers title: "@kbn/plugin-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/plugin-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/plugin-helpers'] --- import kbnPluginHelpersObj from './kbn_plugin_helpers.devdocs.json'; diff --git a/api_docs/kbn_presentation_containers.mdx b/api_docs/kbn_presentation_containers.mdx index 13e7aa584b9da..fc2b7652fd7ec 100644 --- a/api_docs/kbn_presentation_containers.mdx +++ b/api_docs/kbn_presentation_containers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-presentation-containers title: "@kbn/presentation-containers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/presentation-containers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/presentation-containers'] --- import kbnPresentationContainersObj from './kbn_presentation_containers.devdocs.json'; diff --git a/api_docs/kbn_presentation_publishing.mdx b/api_docs/kbn_presentation_publishing.mdx index dd721dfe4a279..5c969f8d4da73 100644 --- a/api_docs/kbn_presentation_publishing.mdx +++ b/api_docs/kbn_presentation_publishing.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-presentation-publishing title: "@kbn/presentation-publishing" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/presentation-publishing plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/presentation-publishing'] --- import kbnPresentationPublishingObj from './kbn_presentation_publishing.devdocs.json'; diff --git a/api_docs/kbn_profiling_utils.mdx b/api_docs/kbn_profiling_utils.mdx index bb4c6e4c39841..2daa1c5964f0a 100644 --- a/api_docs/kbn_profiling_utils.mdx +++ b/api_docs/kbn_profiling_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-profiling-utils title: "@kbn/profiling-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/profiling-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/profiling-utils'] --- import kbnProfilingUtilsObj from './kbn_profiling_utils.devdocs.json'; diff --git a/api_docs/kbn_random_sampling.mdx b/api_docs/kbn_random_sampling.mdx index 09db5d7409200..5f624393e584b 100644 --- a/api_docs/kbn_random_sampling.mdx +++ b/api_docs/kbn_random_sampling.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-random-sampling title: "@kbn/random-sampling" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/random-sampling plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/random-sampling'] --- import kbnRandomSamplingObj from './kbn_random_sampling.devdocs.json'; diff --git a/api_docs/kbn_react_field.mdx b/api_docs/kbn_react_field.mdx index 2148a7e0ded75..e66a6cc5f24f5 100644 --- a/api_docs/kbn_react_field.mdx +++ b/api_docs/kbn_react_field.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-field title: "@kbn/react-field" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-field plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-field'] --- import kbnReactFieldObj from './kbn_react_field.devdocs.json'; diff --git a/api_docs/kbn_react_hooks.mdx b/api_docs/kbn_react_hooks.mdx index 40380736beff3..dc26801aa4696 100644 --- a/api_docs/kbn_react_hooks.mdx +++ b/api_docs/kbn_react_hooks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-hooks title: "@kbn/react-hooks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-hooks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-hooks'] --- import kbnReactHooksObj from './kbn_react_hooks.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_context_common.mdx b/api_docs/kbn_react_kibana_context_common.mdx index 55f51bd11645f..3c971288d0de6 100644 --- a/api_docs/kbn_react_kibana_context_common.mdx +++ b/api_docs/kbn_react_kibana_context_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-kibana-context-common title: "@kbn/react-kibana-context-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-kibana-context-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-context-common'] --- import kbnReactKibanaContextCommonObj from './kbn_react_kibana_context_common.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_context_render.mdx b/api_docs/kbn_react_kibana_context_render.mdx index e2a6cebb95242..76bee416ffdb6 100644 --- a/api_docs/kbn_react_kibana_context_render.mdx +++ b/api_docs/kbn_react_kibana_context_render.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-kibana-context-render title: "@kbn/react-kibana-context-render" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-kibana-context-render plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-context-render'] --- import kbnReactKibanaContextRenderObj from './kbn_react_kibana_context_render.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_context_root.mdx b/api_docs/kbn_react_kibana_context_root.mdx index b8bdb238e53a8..0887653680695 100644 --- a/api_docs/kbn_react_kibana_context_root.mdx +++ b/api_docs/kbn_react_kibana_context_root.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-kibana-context-root title: "@kbn/react-kibana-context-root" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-kibana-context-root plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-context-root'] --- import kbnReactKibanaContextRootObj from './kbn_react_kibana_context_root.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_context_styled.mdx b/api_docs/kbn_react_kibana_context_styled.mdx index ace4517630f6a..d39775c4ec781 100644 --- a/api_docs/kbn_react_kibana_context_styled.mdx +++ b/api_docs/kbn_react_kibana_context_styled.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-kibana-context-styled title: "@kbn/react-kibana-context-styled" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-kibana-context-styled plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-context-styled'] --- import kbnReactKibanaContextStyledObj from './kbn_react_kibana_context_styled.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_context_theme.mdx b/api_docs/kbn_react_kibana_context_theme.mdx index 073ca0446fc46..0a37e0f587f1e 100644 --- a/api_docs/kbn_react_kibana_context_theme.mdx +++ b/api_docs/kbn_react_kibana_context_theme.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-kibana-context-theme title: "@kbn/react-kibana-context-theme" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-kibana-context-theme plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-context-theme'] --- import kbnReactKibanaContextThemeObj from './kbn_react_kibana_context_theme.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_mount.mdx b/api_docs/kbn_react_kibana_mount.mdx index d29397ac2a842..4d9a1433cfde7 100644 --- a/api_docs/kbn_react_kibana_mount.mdx +++ b/api_docs/kbn_react_kibana_mount.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-react-kibana-mount title: "@kbn/react-kibana-mount" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/react-kibana-mount plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-mount'] --- import kbnReactKibanaMountObj from './kbn_react_kibana_mount.devdocs.json'; diff --git a/api_docs/kbn_recently_accessed.mdx b/api_docs/kbn_recently_accessed.mdx index 51c97e5daa56d..9be84259120c0 100644 --- a/api_docs/kbn_recently_accessed.mdx +++ b/api_docs/kbn_recently_accessed.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-recently-accessed title: "@kbn/recently-accessed" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/recently-accessed plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/recently-accessed'] --- import kbnRecentlyAccessedObj from './kbn_recently_accessed.devdocs.json'; diff --git a/api_docs/kbn_repo_file_maps.mdx b/api_docs/kbn_repo_file_maps.mdx index 30c6e46fa546a..e654411b64f1b 100644 --- a/api_docs/kbn_repo_file_maps.mdx +++ b/api_docs/kbn_repo_file_maps.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-repo-file-maps title: "@kbn/repo-file-maps" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/repo-file-maps plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/repo-file-maps'] --- import kbnRepoFileMapsObj from './kbn_repo_file_maps.devdocs.json'; diff --git a/api_docs/kbn_repo_linter.mdx b/api_docs/kbn_repo_linter.mdx index 6f8714856f53c..080d277171a1d 100644 --- a/api_docs/kbn_repo_linter.mdx +++ b/api_docs/kbn_repo_linter.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-repo-linter title: "@kbn/repo-linter" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/repo-linter plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/repo-linter'] --- import kbnRepoLinterObj from './kbn_repo_linter.devdocs.json'; diff --git a/api_docs/kbn_repo_path.mdx b/api_docs/kbn_repo_path.mdx index b34c99ec03f64..64e3668e0e0a6 100644 --- a/api_docs/kbn_repo_path.mdx +++ b/api_docs/kbn_repo_path.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-repo-path title: "@kbn/repo-path" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/repo-path plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/repo-path'] --- import kbnRepoPathObj from './kbn_repo_path.devdocs.json'; diff --git a/api_docs/kbn_repo_source_classifier.mdx b/api_docs/kbn_repo_source_classifier.mdx index 0aabbd83f2723..21168823a7adf 100644 --- a/api_docs/kbn_repo_source_classifier.mdx +++ b/api_docs/kbn_repo_source_classifier.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-repo-source-classifier title: "@kbn/repo-source-classifier" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/repo-source-classifier plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/repo-source-classifier'] --- import kbnRepoSourceClassifierObj from './kbn_repo_source_classifier.devdocs.json'; diff --git a/api_docs/kbn_reporting_common.mdx b/api_docs/kbn_reporting_common.mdx index 41f81fe8c25ad..3a681dd16dae2 100644 --- a/api_docs/kbn_reporting_common.mdx +++ b/api_docs/kbn_reporting_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-common title: "@kbn/reporting-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-common'] --- import kbnReportingCommonObj from './kbn_reporting_common.devdocs.json'; diff --git a/api_docs/kbn_reporting_csv_share_panel.mdx b/api_docs/kbn_reporting_csv_share_panel.mdx index f82a352381a1d..60ee428cb0f93 100644 --- a/api_docs/kbn_reporting_csv_share_panel.mdx +++ b/api_docs/kbn_reporting_csv_share_panel.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-csv-share-panel title: "@kbn/reporting-csv-share-panel" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-csv-share-panel plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-csv-share-panel'] --- import kbnReportingCsvSharePanelObj from './kbn_reporting_csv_share_panel.devdocs.json'; diff --git a/api_docs/kbn_reporting_export_types_csv.mdx b/api_docs/kbn_reporting_export_types_csv.mdx index ea7dc36c745bc..8f69660e42540 100644 --- a/api_docs/kbn_reporting_export_types_csv.mdx +++ b/api_docs/kbn_reporting_export_types_csv.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-export-types-csv title: "@kbn/reporting-export-types-csv" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-export-types-csv plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-export-types-csv'] --- import kbnReportingExportTypesCsvObj from './kbn_reporting_export_types_csv.devdocs.json'; diff --git a/api_docs/kbn_reporting_export_types_csv_common.mdx b/api_docs/kbn_reporting_export_types_csv_common.mdx index e7714d27cc412..91862c9a49684 100644 --- a/api_docs/kbn_reporting_export_types_csv_common.mdx +++ b/api_docs/kbn_reporting_export_types_csv_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-export-types-csv-common title: "@kbn/reporting-export-types-csv-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-export-types-csv-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-export-types-csv-common'] --- import kbnReportingExportTypesCsvCommonObj from './kbn_reporting_export_types_csv_common.devdocs.json'; diff --git a/api_docs/kbn_reporting_export_types_pdf.mdx b/api_docs/kbn_reporting_export_types_pdf.mdx index 65f7222f241c0..6ac6e415b192e 100644 --- a/api_docs/kbn_reporting_export_types_pdf.mdx +++ b/api_docs/kbn_reporting_export_types_pdf.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-export-types-pdf title: "@kbn/reporting-export-types-pdf" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-export-types-pdf plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-export-types-pdf'] --- import kbnReportingExportTypesPdfObj from './kbn_reporting_export_types_pdf.devdocs.json'; diff --git a/api_docs/kbn_reporting_export_types_pdf_common.mdx b/api_docs/kbn_reporting_export_types_pdf_common.mdx index cc70475201a59..1479041704c9a 100644 --- a/api_docs/kbn_reporting_export_types_pdf_common.mdx +++ b/api_docs/kbn_reporting_export_types_pdf_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-export-types-pdf-common title: "@kbn/reporting-export-types-pdf-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-export-types-pdf-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-export-types-pdf-common'] --- import kbnReportingExportTypesPdfCommonObj from './kbn_reporting_export_types_pdf_common.devdocs.json'; diff --git a/api_docs/kbn_reporting_export_types_png.mdx b/api_docs/kbn_reporting_export_types_png.mdx index 1d3d5b1947770..daf68624e2598 100644 --- a/api_docs/kbn_reporting_export_types_png.mdx +++ b/api_docs/kbn_reporting_export_types_png.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-export-types-png title: "@kbn/reporting-export-types-png" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-export-types-png plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-export-types-png'] --- import kbnReportingExportTypesPngObj from './kbn_reporting_export_types_png.devdocs.json'; diff --git a/api_docs/kbn_reporting_export_types_png_common.mdx b/api_docs/kbn_reporting_export_types_png_common.mdx index 112cd2c7c7aad..d602247154bb3 100644 --- a/api_docs/kbn_reporting_export_types_png_common.mdx +++ b/api_docs/kbn_reporting_export_types_png_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-export-types-png-common title: "@kbn/reporting-export-types-png-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-export-types-png-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-export-types-png-common'] --- import kbnReportingExportTypesPngCommonObj from './kbn_reporting_export_types_png_common.devdocs.json'; diff --git a/api_docs/kbn_reporting_mocks_server.mdx b/api_docs/kbn_reporting_mocks_server.mdx index 36edcb8746f08..29b488d041146 100644 --- a/api_docs/kbn_reporting_mocks_server.mdx +++ b/api_docs/kbn_reporting_mocks_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-mocks-server title: "@kbn/reporting-mocks-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-mocks-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-mocks-server'] --- import kbnReportingMocksServerObj from './kbn_reporting_mocks_server.devdocs.json'; diff --git a/api_docs/kbn_reporting_public.mdx b/api_docs/kbn_reporting_public.mdx index af67a4cfe1d01..8cc954e92dc2b 100644 --- a/api_docs/kbn_reporting_public.mdx +++ b/api_docs/kbn_reporting_public.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-public title: "@kbn/reporting-public" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-public plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-public'] --- import kbnReportingPublicObj from './kbn_reporting_public.devdocs.json'; diff --git a/api_docs/kbn_reporting_server.mdx b/api_docs/kbn_reporting_server.mdx index 0f997482148ba..e804939c51c7e 100644 --- a/api_docs/kbn_reporting_server.mdx +++ b/api_docs/kbn_reporting_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-reporting-server title: "@kbn/reporting-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/reporting-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-server'] --- import kbnReportingServerObj from './kbn_reporting_server.devdocs.json'; diff --git a/api_docs/kbn_resizable_layout.mdx b/api_docs/kbn_resizable_layout.mdx index 7af8aa71f3636..f33cf4c30b5a7 100644 --- a/api_docs/kbn_resizable_layout.mdx +++ b/api_docs/kbn_resizable_layout.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-resizable-layout title: "@kbn/resizable-layout" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/resizable-layout plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/resizable-layout'] --- import kbnResizableLayoutObj from './kbn_resizable_layout.devdocs.json'; diff --git a/api_docs/kbn_response_ops_feature_flag_service.mdx b/api_docs/kbn_response_ops_feature_flag_service.mdx index 057137e528c94..e196eec66a1b5 100644 --- a/api_docs/kbn_response_ops_feature_flag_service.mdx +++ b/api_docs/kbn_response_ops_feature_flag_service.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-response-ops-feature-flag-service title: "@kbn/response-ops-feature-flag-service" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/response-ops-feature-flag-service plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/response-ops-feature-flag-service'] --- import kbnResponseOpsFeatureFlagServiceObj from './kbn_response_ops_feature_flag_service.devdocs.json'; diff --git a/api_docs/kbn_rison.mdx b/api_docs/kbn_rison.mdx index 6619bbbd814d7..ead9529b4ba59 100644 --- a/api_docs/kbn_rison.mdx +++ b/api_docs/kbn_rison.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-rison title: "@kbn/rison" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/rison plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/rison'] --- import kbnRisonObj from './kbn_rison.devdocs.json'; diff --git a/api_docs/kbn_rollup.mdx b/api_docs/kbn_rollup.mdx index 8f0b632a76327..e605dfee260b1 100644 --- a/api_docs/kbn_rollup.mdx +++ b/api_docs/kbn_rollup.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-rollup title: "@kbn/rollup" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/rollup plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/rollup'] --- import kbnRollupObj from './kbn_rollup.devdocs.json'; diff --git a/api_docs/kbn_router_to_openapispec.mdx b/api_docs/kbn_router_to_openapispec.mdx index 93716fe82e622..f8adece51b31b 100644 --- a/api_docs/kbn_router_to_openapispec.mdx +++ b/api_docs/kbn_router_to_openapispec.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-router-to-openapispec title: "@kbn/router-to-openapispec" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/router-to-openapispec plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/router-to-openapispec'] --- import kbnRouterToOpenapispecObj from './kbn_router_to_openapispec.devdocs.json'; diff --git a/api_docs/kbn_router_utils.mdx b/api_docs/kbn_router_utils.mdx index 737b5c2d6c9ef..7b893aed83916 100644 --- a/api_docs/kbn_router_utils.mdx +++ b/api_docs/kbn_router_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-router-utils title: "@kbn/router-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/router-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/router-utils'] --- import kbnRouterUtilsObj from './kbn_router_utils.devdocs.json'; diff --git a/api_docs/kbn_rrule.mdx b/api_docs/kbn_rrule.mdx index 283721e4c423e..341dec247157e 100644 --- a/api_docs/kbn_rrule.mdx +++ b/api_docs/kbn_rrule.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-rrule title: "@kbn/rrule" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/rrule plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/rrule'] --- import kbnRruleObj from './kbn_rrule.devdocs.json'; diff --git a/api_docs/kbn_rule_data_utils.mdx b/api_docs/kbn_rule_data_utils.mdx index 9fe61f49924a5..8232e3281a48c 100644 --- a/api_docs/kbn_rule_data_utils.mdx +++ b/api_docs/kbn_rule_data_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-rule-data-utils title: "@kbn/rule-data-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/rule-data-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/rule-data-utils'] --- import kbnRuleDataUtilsObj from './kbn_rule_data_utils.devdocs.json'; diff --git a/api_docs/kbn_saved_objects_settings.mdx b/api_docs/kbn_saved_objects_settings.mdx index 4b81761d07012..5a542afd9f358 100644 --- a/api_docs/kbn_saved_objects_settings.mdx +++ b/api_docs/kbn_saved_objects_settings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-saved-objects-settings title: "@kbn/saved-objects-settings" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/saved-objects-settings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/saved-objects-settings'] --- import kbnSavedObjectsSettingsObj from './kbn_saved_objects_settings.devdocs.json'; diff --git a/api_docs/kbn_screenshotting_server.mdx b/api_docs/kbn_screenshotting_server.mdx index 6c1db5a3e311a..a9cb18405f240 100644 --- a/api_docs/kbn_screenshotting_server.mdx +++ b/api_docs/kbn_screenshotting_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-screenshotting-server title: "@kbn/screenshotting-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/screenshotting-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/screenshotting-server'] --- import kbnScreenshottingServerObj from './kbn_screenshotting_server.devdocs.json'; diff --git a/api_docs/kbn_search_api_panels.mdx b/api_docs/kbn_search_api_panels.mdx index 61b49f67dfea9..51f55a7ec8bf7 100644 --- a/api_docs/kbn_search_api_panels.mdx +++ b/api_docs/kbn_search_api_panels.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-search-api-panels title: "@kbn/search-api-panels" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/search-api-panels plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-api-panels'] --- import kbnSearchApiPanelsObj from './kbn_search_api_panels.devdocs.json'; diff --git a/api_docs/kbn_search_connectors.mdx b/api_docs/kbn_search_connectors.mdx index b0024e0ecfb68..94bbbf3d14e8e 100644 --- a/api_docs/kbn_search_connectors.mdx +++ b/api_docs/kbn_search_connectors.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-search-connectors title: "@kbn/search-connectors" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/search-connectors plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-connectors'] --- import kbnSearchConnectorsObj from './kbn_search_connectors.devdocs.json'; diff --git a/api_docs/kbn_search_errors.mdx b/api_docs/kbn_search_errors.mdx index cadaf0a1ce645..3230977d0fc05 100644 --- a/api_docs/kbn_search_errors.mdx +++ b/api_docs/kbn_search_errors.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-search-errors title: "@kbn/search-errors" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/search-errors plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-errors'] --- import kbnSearchErrorsObj from './kbn_search_errors.devdocs.json'; diff --git a/api_docs/kbn_search_index_documents.devdocs.json b/api_docs/kbn_search_index_documents.devdocs.json index a3e6b74732a9a..31ad3500d1674 100644 --- a/api_docs/kbn_search_index_documents.devdocs.json +++ b/api_docs/kbn_search_index_documents.devdocs.json @@ -298,6 +298,98 @@ ], "returnComment": [], "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/search-index-documents", + "id": "def-common.resultMetaData", + "type": "Function", + "tags": [], + "label": "resultMetaData", + "description": [], + "signature": [ + "(result: ", + "SearchHit", + ") => ", + "MetaDataProps" + ], + "path": "packages/kbn-search-index-documents/components/result/result_metadata.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/search-index-documents", + "id": "def-common.resultMetaData.$1", + "type": "Object", + "tags": [], + "label": "result", + "description": [], + "signature": [ + "SearchHit", + "" + ], + "path": "packages/kbn-search-index-documents/components/result/result_metadata.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/search-index-documents", + "id": "def-common.resultToField", + "type": "Function", + "tags": [], + "label": "resultToField", + "description": [], + "signature": [ + "(result: ", + "SearchHit", + ", mappings?: Record | undefined) => { fieldName: string; fieldType: \"boolean\" | \"object\" | \"wildcard\" | \"nested\" | \"geo_point\" | \"geo_shape\" | \"ip\" | \"binary\" | \"keyword\" | \"text\" | \"search_as_you_type\" | \"date\" | \"date_nanos\" | \"completion\" | \"version\" | \"murmur3\" | \"token_count\" | \"percolator\" | \"integer\" | \"long\" | \"short\" | \"byte\" | \"float\" | \"half_float\" | \"scaled_float\" | \"double\" | \"integer_range\" | \"float_range\" | \"long_range\" | \"double_range\" | \"date_range\" | \"ip_range\" | \"alias\" | \"join\" | \"rank_feature\" | \"rank_features\" | \"flattened\" | \"shape\" | \"histogram\" | \"constant_keyword\" | \"aggregate_metric_double\" | \"dense_vector\" | \"semantic_text\" | \"sparse_vector\" | \"match_only_text\" | \"icu_collation_keyword\" | \"{dynamic_type}\" | \"point\" | \"unsigned_long\"; fieldValue: string; }[]" + ], + "path": "packages/kbn-search-index-documents/components/result/result_metadata.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/search-index-documents", + "id": "def-common.resultToField.$1", + "type": "Object", + "tags": [], + "label": "result", + "description": [], + "signature": [ + "SearchHit", + "" + ], + "path": "packages/kbn-search-index-documents/components/result/result_metadata.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/search-index-documents", + "id": "def-common.resultToField.$2", + "type": "Object", + "tags": [], + "label": "mappings", + "description": [], + "signature": [ + "Record | undefined" + ], + "path": "packages/kbn-search-index-documents/components/result/result_metadata.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false + } + ], + "returnComment": [], + "initialIsOpen": false } ], "interfaces": [ diff --git a/api_docs/kbn_search_index_documents.mdx b/api_docs/kbn_search_index_documents.mdx index c4a98588b7464..f2af436edc445 100644 --- a/api_docs/kbn_search_index_documents.mdx +++ b/api_docs/kbn_search_index_documents.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-search-index-documents title: "@kbn/search-index-documents" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/search-index-documents plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-index-documents'] --- import kbnSearchIndexDocumentsObj from './kbn_search_index_documents.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-ki | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 25 | 0 | 25 | 0 | +| 30 | 0 | 30 | 1 | ## Common diff --git a/api_docs/kbn_search_response_warnings.mdx b/api_docs/kbn_search_response_warnings.mdx index 477b14f14d826..e5ee1f8360c9c 100644 --- a/api_docs/kbn_search_response_warnings.mdx +++ b/api_docs/kbn_search_response_warnings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-search-response-warnings title: "@kbn/search-response-warnings" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/search-response-warnings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-response-warnings'] --- import kbnSearchResponseWarningsObj from './kbn_search_response_warnings.devdocs.json'; diff --git a/api_docs/kbn_search_types.mdx b/api_docs/kbn_search_types.mdx index df104962a59dc..7f7a7dda202af 100644 --- a/api_docs/kbn_search_types.mdx +++ b/api_docs/kbn_search_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-search-types title: "@kbn/search-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/search-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-types'] --- import kbnSearchTypesObj from './kbn_search_types.devdocs.json'; diff --git a/api_docs/kbn_security_api_key_management.mdx b/api_docs/kbn_security_api_key_management.mdx index e36253329d1aa..92695e3dbcc32 100644 --- a/api_docs/kbn_security_api_key_management.mdx +++ b/api_docs/kbn_security_api_key_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-api-key-management title: "@kbn/security-api-key-management" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-api-key-management plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-api-key-management'] --- import kbnSecurityApiKeyManagementObj from './kbn_security_api_key_management.devdocs.json'; diff --git a/api_docs/kbn_security_authorization_core.mdx b/api_docs/kbn_security_authorization_core.mdx index 78d9f92936d75..413d042526365 100644 --- a/api_docs/kbn_security_authorization_core.mdx +++ b/api_docs/kbn_security_authorization_core.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-authorization-core title: "@kbn/security-authorization-core" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-authorization-core plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-authorization-core'] --- import kbnSecurityAuthorizationCoreObj from './kbn_security_authorization_core.devdocs.json'; diff --git a/api_docs/kbn_security_form_components.mdx b/api_docs/kbn_security_form_components.mdx index 7b7e5b8ce9a7b..9c7281fe566ca 100644 --- a/api_docs/kbn_security_form_components.mdx +++ b/api_docs/kbn_security_form_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-form-components title: "@kbn/security-form-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-form-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-form-components'] --- import kbnSecurityFormComponentsObj from './kbn_security_form_components.devdocs.json'; diff --git a/api_docs/kbn_security_hardening.mdx b/api_docs/kbn_security_hardening.mdx index 86caab608d898..ea0a3d3d0b584 100644 --- a/api_docs/kbn_security_hardening.mdx +++ b/api_docs/kbn_security_hardening.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-hardening title: "@kbn/security-hardening" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-hardening plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-hardening'] --- import kbnSecurityHardeningObj from './kbn_security_hardening.devdocs.json'; diff --git a/api_docs/kbn_security_plugin_types_common.mdx b/api_docs/kbn_security_plugin_types_common.mdx index ad3255608e237..a90fa7dc26c0a 100644 --- a/api_docs/kbn_security_plugin_types_common.mdx +++ b/api_docs/kbn_security_plugin_types_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-plugin-types-common title: "@kbn/security-plugin-types-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-plugin-types-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-plugin-types-common'] --- import kbnSecurityPluginTypesCommonObj from './kbn_security_plugin_types_common.devdocs.json'; diff --git a/api_docs/kbn_security_plugin_types_public.mdx b/api_docs/kbn_security_plugin_types_public.mdx index 85c99b584487d..270ede9fb339c 100644 --- a/api_docs/kbn_security_plugin_types_public.mdx +++ b/api_docs/kbn_security_plugin_types_public.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-plugin-types-public title: "@kbn/security-plugin-types-public" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-plugin-types-public plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-plugin-types-public'] --- import kbnSecurityPluginTypesPublicObj from './kbn_security_plugin_types_public.devdocs.json'; diff --git a/api_docs/kbn_security_plugin_types_server.devdocs.json b/api_docs/kbn_security_plugin_types_server.devdocs.json index ce04849d4bd72..f718c3ddb240d 100644 --- a/api_docs/kbn_security_plugin_types_server.devdocs.json +++ b/api_docs/kbn_security_plugin_types_server.devdocs.json @@ -4286,23 +4286,23 @@ }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts" + "path": "x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts" + "path": "x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts" + "path": "x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/enable.ts" + "path": "x-pack/plugins/entity_manager/server/routes/enablement/enable.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/disable.ts" + "path": "x-pack/plugins/entity_manager/server/routes/enablement/disable.ts" }, { "plugin": "serverlessSearch", diff --git a/api_docs/kbn_security_plugin_types_server.mdx b/api_docs/kbn_security_plugin_types_server.mdx index 3c66a756e419b..a6f52d29800bc 100644 --- a/api_docs/kbn_security_plugin_types_server.mdx +++ b/api_docs/kbn_security_plugin_types_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-plugin-types-server title: "@kbn/security-plugin-types-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-plugin-types-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-plugin-types-server'] --- import kbnSecurityPluginTypesServerObj from './kbn_security_plugin_types_server.devdocs.json'; diff --git a/api_docs/kbn_security_role_management_model.mdx b/api_docs/kbn_security_role_management_model.mdx index d4a98e60298f2..ab26dca7dc575 100644 --- a/api_docs/kbn_security_role_management_model.mdx +++ b/api_docs/kbn_security_role_management_model.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-role-management-model title: "@kbn/security-role-management-model" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-role-management-model plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-role-management-model'] --- import kbnSecurityRoleManagementModelObj from './kbn_security_role_management_model.devdocs.json'; diff --git a/api_docs/kbn_security_solution_common.mdx b/api_docs/kbn_security_solution_common.mdx index 8e762dab8e569..3505a4aeefee4 100644 --- a/api_docs/kbn_security_solution_common.mdx +++ b/api_docs/kbn_security_solution_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-solution-common title: "@kbn/security-solution-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-solution-common plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-solution-common'] --- import kbnSecuritySolutionCommonObj from './kbn_security_solution_common.devdocs.json'; diff --git a/api_docs/kbn_security_solution_distribution_bar.mdx b/api_docs/kbn_security_solution_distribution_bar.mdx index 962163387af86..fec855eda7cc4 100644 --- a/api_docs/kbn_security_solution_distribution_bar.mdx +++ b/api_docs/kbn_security_solution_distribution_bar.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-solution-distribution-bar title: "@kbn/security-solution-distribution-bar" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-solution-distribution-bar plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-solution-distribution-bar'] --- import kbnSecuritySolutionDistributionBarObj from './kbn_security_solution_distribution_bar.devdocs.json'; diff --git a/api_docs/kbn_security_solution_features.mdx b/api_docs/kbn_security_solution_features.mdx index bd02234340faf..6ff5159907f45 100644 --- a/api_docs/kbn_security_solution_features.mdx +++ b/api_docs/kbn_security_solution_features.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-solution-features title: "@kbn/security-solution-features" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-solution-features plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-solution-features'] --- import kbnSecuritySolutionFeaturesObj from './kbn_security_solution_features.devdocs.json'; diff --git a/api_docs/kbn_security_solution_navigation.mdx b/api_docs/kbn_security_solution_navigation.mdx index 56050c6d5522f..1641d58dcc155 100644 --- a/api_docs/kbn_security_solution_navigation.mdx +++ b/api_docs/kbn_security_solution_navigation.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-solution-navigation title: "@kbn/security-solution-navigation" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-solution-navigation plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-solution-navigation'] --- import kbnSecuritySolutionNavigationObj from './kbn_security_solution_navigation.devdocs.json'; diff --git a/api_docs/kbn_security_solution_side_nav.mdx b/api_docs/kbn_security_solution_side_nav.mdx index e4b1ba0043b4c..646d422fb505e 100644 --- a/api_docs/kbn_security_solution_side_nav.mdx +++ b/api_docs/kbn_security_solution_side_nav.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-solution-side-nav title: "@kbn/security-solution-side-nav" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-solution-side-nav plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-solution-side-nav'] --- import kbnSecuritySolutionSideNavObj from './kbn_security_solution_side_nav.devdocs.json'; diff --git a/api_docs/kbn_security_solution_storybook_config.mdx b/api_docs/kbn_security_solution_storybook_config.mdx index 0435006008eeb..0236b4d0ac413 100644 --- a/api_docs/kbn_security_solution_storybook_config.mdx +++ b/api_docs/kbn_security_solution_storybook_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-solution-storybook-config title: "@kbn/security-solution-storybook-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-solution-storybook-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-solution-storybook-config'] --- import kbnSecuritySolutionStorybookConfigObj from './kbn_security_solution_storybook_config.devdocs.json'; diff --git a/api_docs/kbn_security_ui_components.mdx b/api_docs/kbn_security_ui_components.mdx index 0cbdd4041d663..81f05a44ed97e 100644 --- a/api_docs/kbn_security_ui_components.mdx +++ b/api_docs/kbn_security_ui_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-security-ui-components title: "@kbn/security-ui-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/security-ui-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-ui-components'] --- import kbnSecurityUiComponentsObj from './kbn_security_ui_components.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_autocomplete.mdx b/api_docs/kbn_securitysolution_autocomplete.mdx index 9319edbdb175f..b3306687e8afe 100644 --- a/api_docs/kbn_securitysolution_autocomplete.mdx +++ b/api_docs/kbn_securitysolution_autocomplete.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-autocomplete title: "@kbn/securitysolution-autocomplete" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-autocomplete plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-autocomplete'] --- import kbnSecuritysolutionAutocompleteObj from './kbn_securitysolution_autocomplete.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_data_table.mdx b/api_docs/kbn_securitysolution_data_table.mdx index f02a28ba3ce5d..011bba76a789f 100644 --- a/api_docs/kbn_securitysolution_data_table.mdx +++ b/api_docs/kbn_securitysolution_data_table.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-data-table title: "@kbn/securitysolution-data-table" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-data-table plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-data-table'] --- import kbnSecuritysolutionDataTableObj from './kbn_securitysolution_data_table.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_ecs.mdx b/api_docs/kbn_securitysolution_ecs.mdx index 20fb15b9bfcb2..2b859ed1b67c4 100644 --- a/api_docs/kbn_securitysolution_ecs.mdx +++ b/api_docs/kbn_securitysolution_ecs.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-ecs title: "@kbn/securitysolution-ecs" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-ecs plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-ecs'] --- import kbnSecuritysolutionEcsObj from './kbn_securitysolution_ecs.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_es_utils.mdx b/api_docs/kbn_securitysolution_es_utils.mdx index 6750b47129f18..85dfba0cf4a66 100644 --- a/api_docs/kbn_securitysolution_es_utils.mdx +++ b/api_docs/kbn_securitysolution_es_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-es-utils title: "@kbn/securitysolution-es-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-es-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-es-utils'] --- import kbnSecuritysolutionEsUtilsObj from './kbn_securitysolution_es_utils.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_exception_list_components.devdocs.json b/api_docs/kbn_securitysolution_exception_list_components.devdocs.json index 66914d0cfde5f..57fab17b2e38c 100644 --- a/api_docs/kbn_securitysolution_exception_list_components.devdocs.json +++ b/api_docs/kbn_securitysolution_exception_list_components.devdocs.json @@ -851,7 +851,7 @@ "label": "formattedDateComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"output\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/meta/index.tsx", "deprecated": false, @@ -865,7 +865,7 @@ "label": "securityLinkAnchorComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"output\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/meta/index.tsx", "deprecated": false, @@ -1004,7 +1004,7 @@ "label": "securityLinkAnchorComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"output\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/exception_item_card.tsx", "deprecated": false, @@ -1018,7 +1018,7 @@ "label": "formattedDateComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"output\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/exception_item_card.tsx", "deprecated": false, @@ -1144,7 +1144,7 @@ "label": "showValueListModal", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"source\" | \"meta\" | \"desc\" | \"filter\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"text\" | \"map\" | \"head\" | \"slot\" | \"style\" | \"title\" | \"data\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"path\" | \"form\" | React.ComponentType | \"line\" | \"rect\" | \"code\" | \"ruby\" | \"label\" | \"metadata\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"view\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"table\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"aside\" | \"audio\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"br\" | \"button\" | \"caption\" | \"cite\" | \"col\" | \"colgroup\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"header\" | \"hgroup\" | \"hr\" | \"i\" | \"iframe\" | \"img\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"output\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"samp\" | \"section\" | \"strong\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"foreignObject\" | \"g\" | \"linearGradient\" | \"marker\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/exception_item_card.tsx", "deprecated": false, diff --git a/api_docs/kbn_securitysolution_exception_list_components.mdx b/api_docs/kbn_securitysolution_exception_list_components.mdx index df86e5b288cbe..d763635c84bbe 100644 --- a/api_docs/kbn_securitysolution_exception_list_components.mdx +++ b/api_docs/kbn_securitysolution_exception_list_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-exception-list-components title: "@kbn/securitysolution-exception-list-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-exception-list-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-exception-list-components'] --- import kbnSecuritysolutionExceptionListComponentsObj from './kbn_securitysolution_exception_list_components.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_hook_utils.mdx b/api_docs/kbn_securitysolution_hook_utils.mdx index e6f496c232df4..d455d4e24a3d4 100644 --- a/api_docs/kbn_securitysolution_hook_utils.mdx +++ b/api_docs/kbn_securitysolution_hook_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-hook-utils title: "@kbn/securitysolution-hook-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-hook-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-hook-utils'] --- import kbnSecuritysolutionHookUtilsObj from './kbn_securitysolution_hook_utils.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_io_ts_alerting_types.mdx b/api_docs/kbn_securitysolution_io_ts_alerting_types.mdx index 6129366fe2202..33035ce22702f 100644 --- a/api_docs/kbn_securitysolution_io_ts_alerting_types.mdx +++ b/api_docs/kbn_securitysolution_io_ts_alerting_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-io-ts-alerting-types title: "@kbn/securitysolution-io-ts-alerting-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-io-ts-alerting-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-io-ts-alerting-types'] --- import kbnSecuritysolutionIoTsAlertingTypesObj from './kbn_securitysolution_io_ts_alerting_types.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_io_ts_list_types.mdx b/api_docs/kbn_securitysolution_io_ts_list_types.mdx index 61731c0bb3958..929932fcdbc70 100644 --- a/api_docs/kbn_securitysolution_io_ts_list_types.mdx +++ b/api_docs/kbn_securitysolution_io_ts_list_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-io-ts-list-types title: "@kbn/securitysolution-io-ts-list-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-io-ts-list-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-io-ts-list-types'] --- import kbnSecuritysolutionIoTsListTypesObj from './kbn_securitysolution_io_ts_list_types.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_io_ts_types.mdx b/api_docs/kbn_securitysolution_io_ts_types.mdx index d3f90b7e0f14c..4c04805eb9360 100644 --- a/api_docs/kbn_securitysolution_io_ts_types.mdx +++ b/api_docs/kbn_securitysolution_io_ts_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-io-ts-types title: "@kbn/securitysolution-io-ts-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-io-ts-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-io-ts-types'] --- import kbnSecuritysolutionIoTsTypesObj from './kbn_securitysolution_io_ts_types.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_io_ts_utils.mdx b/api_docs/kbn_securitysolution_io_ts_utils.mdx index 59297b772b80b..812791dd92afb 100644 --- a/api_docs/kbn_securitysolution_io_ts_utils.mdx +++ b/api_docs/kbn_securitysolution_io_ts_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-io-ts-utils title: "@kbn/securitysolution-io-ts-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-io-ts-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-io-ts-utils'] --- import kbnSecuritysolutionIoTsUtilsObj from './kbn_securitysolution_io_ts_utils.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_list_api.mdx b/api_docs/kbn_securitysolution_list_api.mdx index 82e4ab04c1cf7..4a578aa1bb469 100644 --- a/api_docs/kbn_securitysolution_list_api.mdx +++ b/api_docs/kbn_securitysolution_list_api.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-list-api title: "@kbn/securitysolution-list-api" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-list-api plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-list-api'] --- import kbnSecuritysolutionListApiObj from './kbn_securitysolution_list_api.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_list_constants.mdx b/api_docs/kbn_securitysolution_list_constants.mdx index 3bbd78305ae85..5df37673da35a 100644 --- a/api_docs/kbn_securitysolution_list_constants.mdx +++ b/api_docs/kbn_securitysolution_list_constants.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-list-constants title: "@kbn/securitysolution-list-constants" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-list-constants plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-list-constants'] --- import kbnSecuritysolutionListConstantsObj from './kbn_securitysolution_list_constants.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_list_hooks.mdx b/api_docs/kbn_securitysolution_list_hooks.mdx index 41744fbb4fc43..ed92ca600219d 100644 --- a/api_docs/kbn_securitysolution_list_hooks.mdx +++ b/api_docs/kbn_securitysolution_list_hooks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-list-hooks title: "@kbn/securitysolution-list-hooks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-list-hooks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-list-hooks'] --- import kbnSecuritysolutionListHooksObj from './kbn_securitysolution_list_hooks.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_list_utils.mdx b/api_docs/kbn_securitysolution_list_utils.mdx index 569a567200fac..1bef7008b3ff2 100644 --- a/api_docs/kbn_securitysolution_list_utils.mdx +++ b/api_docs/kbn_securitysolution_list_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-list-utils title: "@kbn/securitysolution-list-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-list-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-list-utils'] --- import kbnSecuritysolutionListUtilsObj from './kbn_securitysolution_list_utils.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_rules.mdx b/api_docs/kbn_securitysolution_rules.mdx index cacd67d7d1392..be25ebc02ff48 100644 --- a/api_docs/kbn_securitysolution_rules.mdx +++ b/api_docs/kbn_securitysolution_rules.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-rules title: "@kbn/securitysolution-rules" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-rules plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-rules'] --- import kbnSecuritysolutionRulesObj from './kbn_securitysolution_rules.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_t_grid.mdx b/api_docs/kbn_securitysolution_t_grid.mdx index 7ab5bc41ec5f6..a685035a277d7 100644 --- a/api_docs/kbn_securitysolution_t_grid.mdx +++ b/api_docs/kbn_securitysolution_t_grid.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-t-grid title: "@kbn/securitysolution-t-grid" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-t-grid plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-t-grid'] --- import kbnSecuritysolutionTGridObj from './kbn_securitysolution_t_grid.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_utils.mdx b/api_docs/kbn_securitysolution_utils.mdx index 3923668aa4222..4cedb9bbb9eeb 100644 --- a/api_docs/kbn_securitysolution_utils.mdx +++ b/api_docs/kbn_securitysolution_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-utils title: "@kbn/securitysolution-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-utils'] --- import kbnSecuritysolutionUtilsObj from './kbn_securitysolution_utils.devdocs.json'; diff --git a/api_docs/kbn_server_http_tools.mdx b/api_docs/kbn_server_http_tools.mdx index 16166c272e785..ba130463c1dff 100644 --- a/api_docs/kbn_server_http_tools.mdx +++ b/api_docs/kbn_server_http_tools.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-server-http-tools title: "@kbn/server-http-tools" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/server-http-tools plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/server-http-tools'] --- import kbnServerHttpToolsObj from './kbn_server_http_tools.devdocs.json'; diff --git a/api_docs/kbn_server_route_repository.mdx b/api_docs/kbn_server_route_repository.mdx index ec9a2ec6575a8..d6a676035a2a0 100644 --- a/api_docs/kbn_server_route_repository.mdx +++ b/api_docs/kbn_server_route_repository.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-server-route-repository title: "@kbn/server-route-repository" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/server-route-repository plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/server-route-repository'] --- import kbnServerRouteRepositoryObj from './kbn_server_route_repository.devdocs.json'; diff --git a/api_docs/kbn_server_route_repository_client.mdx b/api_docs/kbn_server_route_repository_client.mdx index 02b646ab0643d..0fa6b225f6a4a 100644 --- a/api_docs/kbn_server_route_repository_client.mdx +++ b/api_docs/kbn_server_route_repository_client.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-server-route-repository-client title: "@kbn/server-route-repository-client" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/server-route-repository-client plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/server-route-repository-client'] --- import kbnServerRouteRepositoryClientObj from './kbn_server_route_repository_client.devdocs.json'; diff --git a/api_docs/kbn_server_route_repository_utils.mdx b/api_docs/kbn_server_route_repository_utils.mdx index cb74c8bb25ca9..e06d1622a64a9 100644 --- a/api_docs/kbn_server_route_repository_utils.mdx +++ b/api_docs/kbn_server_route_repository_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-server-route-repository-utils title: "@kbn/server-route-repository-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/server-route-repository-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/server-route-repository-utils'] --- import kbnServerRouteRepositoryUtilsObj from './kbn_server_route_repository_utils.devdocs.json'; diff --git a/api_docs/kbn_serverless_common_settings.mdx b/api_docs/kbn_serverless_common_settings.mdx index 0792fc5032ac4..271dab1599c51 100644 --- a/api_docs/kbn_serverless_common_settings.mdx +++ b/api_docs/kbn_serverless_common_settings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-serverless-common-settings title: "@kbn/serverless-common-settings" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/serverless-common-settings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/serverless-common-settings'] --- import kbnServerlessCommonSettingsObj from './kbn_serverless_common_settings.devdocs.json'; diff --git a/api_docs/kbn_serverless_observability_settings.mdx b/api_docs/kbn_serverless_observability_settings.mdx index 44644cc470e97..feb8df175e579 100644 --- a/api_docs/kbn_serverless_observability_settings.mdx +++ b/api_docs/kbn_serverless_observability_settings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-serverless-observability-settings title: "@kbn/serverless-observability-settings" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/serverless-observability-settings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/serverless-observability-settings'] --- import kbnServerlessObservabilitySettingsObj from './kbn_serverless_observability_settings.devdocs.json'; diff --git a/api_docs/kbn_serverless_project_switcher.mdx b/api_docs/kbn_serverless_project_switcher.mdx index edabf158ff207..523ca2f2e811b 100644 --- a/api_docs/kbn_serverless_project_switcher.mdx +++ b/api_docs/kbn_serverless_project_switcher.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-serverless-project-switcher title: "@kbn/serverless-project-switcher" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/serverless-project-switcher plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/serverless-project-switcher'] --- import kbnServerlessProjectSwitcherObj from './kbn_serverless_project_switcher.devdocs.json'; diff --git a/api_docs/kbn_serverless_search_settings.mdx b/api_docs/kbn_serverless_search_settings.mdx index b243feddf7372..eecb38ba755fe 100644 --- a/api_docs/kbn_serverless_search_settings.mdx +++ b/api_docs/kbn_serverless_search_settings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-serverless-search-settings title: "@kbn/serverless-search-settings" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/serverless-search-settings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/serverless-search-settings'] --- import kbnServerlessSearchSettingsObj from './kbn_serverless_search_settings.devdocs.json'; diff --git a/api_docs/kbn_serverless_security_settings.mdx b/api_docs/kbn_serverless_security_settings.mdx index cd4854927df2f..295316decb231 100644 --- a/api_docs/kbn_serverless_security_settings.mdx +++ b/api_docs/kbn_serverless_security_settings.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-serverless-security-settings title: "@kbn/serverless-security-settings" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/serverless-security-settings plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/serverless-security-settings'] --- import kbnServerlessSecuritySettingsObj from './kbn_serverless_security_settings.devdocs.json'; diff --git a/api_docs/kbn_serverless_storybook_config.mdx b/api_docs/kbn_serverless_storybook_config.mdx index adbd44fef6856..729371645fe97 100644 --- a/api_docs/kbn_serverless_storybook_config.mdx +++ b/api_docs/kbn_serverless_storybook_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-serverless-storybook-config title: "@kbn/serverless-storybook-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/serverless-storybook-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/serverless-storybook-config'] --- import kbnServerlessStorybookConfigObj from './kbn_serverless_storybook_config.devdocs.json'; diff --git a/api_docs/kbn_shared_svg.mdx b/api_docs/kbn_shared_svg.mdx index 77c288f9cf183..53c4a81a26e27 100644 --- a/api_docs/kbn_shared_svg.mdx +++ b/api_docs/kbn_shared_svg.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-svg title: "@kbn/shared-svg" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-svg plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-svg'] --- import kbnSharedSvgObj from './kbn_shared_svg.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_avatar_solution.mdx b/api_docs/kbn_shared_ux_avatar_solution.mdx index 69cbd82babb69..7fbef4f6c25d7 100644 --- a/api_docs/kbn_shared_ux_avatar_solution.mdx +++ b/api_docs/kbn_shared_ux_avatar_solution.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-avatar-solution title: "@kbn/shared-ux-avatar-solution" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-avatar-solution plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-avatar-solution'] --- import kbnSharedUxAvatarSolutionObj from './kbn_shared_ux_avatar_solution.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_button_exit_full_screen.mdx b/api_docs/kbn_shared_ux_button_exit_full_screen.mdx index 5fbc3b725e515..df90476f5a8f6 100644 --- a/api_docs/kbn_shared_ux_button_exit_full_screen.mdx +++ b/api_docs/kbn_shared_ux_button_exit_full_screen.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-button-exit-full-screen title: "@kbn/shared-ux-button-exit-full-screen" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-button-exit-full-screen plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-button-exit-full-screen'] --- import kbnSharedUxButtonExitFullScreenObj from './kbn_shared_ux_button_exit_full_screen.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_button_toolbar.mdx b/api_docs/kbn_shared_ux_button_toolbar.mdx index 4a318200ef5df..3d48e22302d57 100644 --- a/api_docs/kbn_shared_ux_button_toolbar.mdx +++ b/api_docs/kbn_shared_ux_button_toolbar.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-button-toolbar title: "@kbn/shared-ux-button-toolbar" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-button-toolbar plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-button-toolbar'] --- import kbnSharedUxButtonToolbarObj from './kbn_shared_ux_button_toolbar.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_card_no_data.mdx b/api_docs/kbn_shared_ux_card_no_data.mdx index 34b2d69864c14..701935138e930 100644 --- a/api_docs/kbn_shared_ux_card_no_data.mdx +++ b/api_docs/kbn_shared_ux_card_no_data.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-card-no-data title: "@kbn/shared-ux-card-no-data" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-card-no-data plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-card-no-data'] --- import kbnSharedUxCardNoDataObj from './kbn_shared_ux_card_no_data.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_card_no_data_mocks.mdx b/api_docs/kbn_shared_ux_card_no_data_mocks.mdx index a4380d4eb1f65..e3f8e84ba06ff 100644 --- a/api_docs/kbn_shared_ux_card_no_data_mocks.mdx +++ b/api_docs/kbn_shared_ux_card_no_data_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-card-no-data-mocks title: "@kbn/shared-ux-card-no-data-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-card-no-data-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-card-no-data-mocks'] --- import kbnSharedUxCardNoDataMocksObj from './kbn_shared_ux_card_no_data_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_chrome_navigation.devdocs.json b/api_docs/kbn_shared_ux_chrome_navigation.devdocs.json index 0adc32c67e70c..5d4477ab0e5b6 100644 --- a/api_docs/kbn_shared_ux_chrome_navigation.devdocs.json +++ b/api_docs/kbn_shared_ux_chrome_navigation.devdocs.json @@ -210,9 +210,9 @@ "section": "def-public.ChromeNavLink", "text": "ChromeNavLink" }, - "[]>; }; getIsSideNavCollapsed$: () => ", + "[]>; }; sideNav: { getIsCollapsed$: () => ", "Observable", - "; }; http: { basePath: ", + "; }; }; http: { basePath: ", "BasePathService", "; getLoadingCount$(): ", "Observable", diff --git a/api_docs/kbn_shared_ux_chrome_navigation.mdx b/api_docs/kbn_shared_ux_chrome_navigation.mdx index abc280c5045e4..e37803c834a07 100644 --- a/api_docs/kbn_shared_ux_chrome_navigation.mdx +++ b/api_docs/kbn_shared_ux_chrome_navigation.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-chrome-navigation title: "@kbn/shared-ux-chrome-navigation" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-chrome-navigation plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-chrome-navigation'] --- import kbnSharedUxChromeNavigationObj from './kbn_shared_ux_chrome_navigation.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_error_boundary.mdx b/api_docs/kbn_shared_ux_error_boundary.mdx index 6901292a7b02a..21be7de649ccf 100644 --- a/api_docs/kbn_shared_ux_error_boundary.mdx +++ b/api_docs/kbn_shared_ux_error_boundary.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-error-boundary title: "@kbn/shared-ux-error-boundary" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-error-boundary plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-error-boundary'] --- import kbnSharedUxErrorBoundaryObj from './kbn_shared_ux_error_boundary.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_context.mdx b/api_docs/kbn_shared_ux_file_context.mdx index f8fd8cae72cdc..007b7568fb3a0 100644 --- a/api_docs/kbn_shared_ux_file_context.mdx +++ b/api_docs/kbn_shared_ux_file_context.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-context title: "@kbn/shared-ux-file-context" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-context plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-context'] --- import kbnSharedUxFileContextObj from './kbn_shared_ux_file_context.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_image.mdx b/api_docs/kbn_shared_ux_file_image.mdx index e391372125c0a..dc43f751de5ca 100644 --- a/api_docs/kbn_shared_ux_file_image.mdx +++ b/api_docs/kbn_shared_ux_file_image.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-image title: "@kbn/shared-ux-file-image" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-image plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-image'] --- import kbnSharedUxFileImageObj from './kbn_shared_ux_file_image.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_image_mocks.mdx b/api_docs/kbn_shared_ux_file_image_mocks.mdx index b8b55368b4406..50e4fb7dd29d7 100644 --- a/api_docs/kbn_shared_ux_file_image_mocks.mdx +++ b/api_docs/kbn_shared_ux_file_image_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-image-mocks title: "@kbn/shared-ux-file-image-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-image-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-image-mocks'] --- import kbnSharedUxFileImageMocksObj from './kbn_shared_ux_file_image_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_mocks.mdx b/api_docs/kbn_shared_ux_file_mocks.mdx index cbc49a9e69722..975a05e0cd82f 100644 --- a/api_docs/kbn_shared_ux_file_mocks.mdx +++ b/api_docs/kbn_shared_ux_file_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-mocks title: "@kbn/shared-ux-file-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-mocks'] --- import kbnSharedUxFileMocksObj from './kbn_shared_ux_file_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_picker.mdx b/api_docs/kbn_shared_ux_file_picker.mdx index 356c1e2dad620..f0c0e71be76c4 100644 --- a/api_docs/kbn_shared_ux_file_picker.mdx +++ b/api_docs/kbn_shared_ux_file_picker.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-picker title: "@kbn/shared-ux-file-picker" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-picker plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-picker'] --- import kbnSharedUxFilePickerObj from './kbn_shared_ux_file_picker.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_types.mdx b/api_docs/kbn_shared_ux_file_types.mdx index 2e44f2db2427f..e3cb28e7e7954 100644 --- a/api_docs/kbn_shared_ux_file_types.mdx +++ b/api_docs/kbn_shared_ux_file_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-types title: "@kbn/shared-ux-file-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-types'] --- import kbnSharedUxFileTypesObj from './kbn_shared_ux_file_types.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_upload.mdx b/api_docs/kbn_shared_ux_file_upload.mdx index d06ad88805152..0396f46c61cab 100644 --- a/api_docs/kbn_shared_ux_file_upload.mdx +++ b/api_docs/kbn_shared_ux_file_upload.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-upload title: "@kbn/shared-ux-file-upload" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-upload plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-upload'] --- import kbnSharedUxFileUploadObj from './kbn_shared_ux_file_upload.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_file_util.mdx b/api_docs/kbn_shared_ux_file_util.mdx index 418bb3382e747..76fd8f4be9ebb 100644 --- a/api_docs/kbn_shared_ux_file_util.mdx +++ b/api_docs/kbn_shared_ux_file_util.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-file-util title: "@kbn/shared-ux-file-util" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-file-util plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-file-util'] --- import kbnSharedUxFileUtilObj from './kbn_shared_ux_file_util.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_link_redirect_app.mdx b/api_docs/kbn_shared_ux_link_redirect_app.mdx index e62e5533d788c..f71ddfd24ea4e 100644 --- a/api_docs/kbn_shared_ux_link_redirect_app.mdx +++ b/api_docs/kbn_shared_ux_link_redirect_app.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-link-redirect-app title: "@kbn/shared-ux-link-redirect-app" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-link-redirect-app plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-link-redirect-app'] --- import kbnSharedUxLinkRedirectAppObj from './kbn_shared_ux_link_redirect_app.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_link_redirect_app_mocks.mdx b/api_docs/kbn_shared_ux_link_redirect_app_mocks.mdx index a58d7e521c95c..e91d3c318dfec 100644 --- a/api_docs/kbn_shared_ux_link_redirect_app_mocks.mdx +++ b/api_docs/kbn_shared_ux_link_redirect_app_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-link-redirect-app-mocks title: "@kbn/shared-ux-link-redirect-app-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-link-redirect-app-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-link-redirect-app-mocks'] --- import kbnSharedUxLinkRedirectAppMocksObj from './kbn_shared_ux_link_redirect_app_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_markdown.mdx b/api_docs/kbn_shared_ux_markdown.mdx index 2c12d7fbb63ba..e72b57d29afd5 100644 --- a/api_docs/kbn_shared_ux_markdown.mdx +++ b/api_docs/kbn_shared_ux_markdown.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-markdown title: "@kbn/shared-ux-markdown" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-markdown plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-markdown'] --- import kbnSharedUxMarkdownObj from './kbn_shared_ux_markdown.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_markdown_mocks.mdx b/api_docs/kbn_shared_ux_markdown_mocks.mdx index a6fa075838143..d4cc827963fc8 100644 --- a/api_docs/kbn_shared_ux_markdown_mocks.mdx +++ b/api_docs/kbn_shared_ux_markdown_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-markdown-mocks title: "@kbn/shared-ux-markdown-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-markdown-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-markdown-mocks'] --- import kbnSharedUxMarkdownMocksObj from './kbn_shared_ux_markdown_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_analytics_no_data.mdx b/api_docs/kbn_shared_ux_page_analytics_no_data.mdx index a4fb3ea0be9ec..14cb1a8d1b3d8 100644 --- a/api_docs/kbn_shared_ux_page_analytics_no_data.mdx +++ b/api_docs/kbn_shared_ux_page_analytics_no_data.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-analytics-no-data title: "@kbn/shared-ux-page-analytics-no-data" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-analytics-no-data plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-analytics-no-data'] --- import kbnSharedUxPageAnalyticsNoDataObj from './kbn_shared_ux_page_analytics_no_data.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_analytics_no_data_mocks.mdx b/api_docs/kbn_shared_ux_page_analytics_no_data_mocks.mdx index 6322a5ab0f24b..19d5015975745 100644 --- a/api_docs/kbn_shared_ux_page_analytics_no_data_mocks.mdx +++ b/api_docs/kbn_shared_ux_page_analytics_no_data_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-analytics-no-data-mocks title: "@kbn/shared-ux-page-analytics-no-data-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-analytics-no-data-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-analytics-no-data-mocks'] --- import kbnSharedUxPageAnalyticsNoDataMocksObj from './kbn_shared_ux_page_analytics_no_data_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_kibana_no_data.mdx b/api_docs/kbn_shared_ux_page_kibana_no_data.mdx index 74c6d80feb7bb..ebe8ff13bbc9e 100644 --- a/api_docs/kbn_shared_ux_page_kibana_no_data.mdx +++ b/api_docs/kbn_shared_ux_page_kibana_no_data.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-kibana-no-data title: "@kbn/shared-ux-page-kibana-no-data" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-kibana-no-data plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-kibana-no-data'] --- import kbnSharedUxPageKibanaNoDataObj from './kbn_shared_ux_page_kibana_no_data.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_kibana_no_data_mocks.mdx b/api_docs/kbn_shared_ux_page_kibana_no_data_mocks.mdx index 3dacc0c77a471..01b48e5a9694d 100644 --- a/api_docs/kbn_shared_ux_page_kibana_no_data_mocks.mdx +++ b/api_docs/kbn_shared_ux_page_kibana_no_data_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-kibana-no-data-mocks title: "@kbn/shared-ux-page-kibana-no-data-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-kibana-no-data-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-kibana-no-data-mocks'] --- import kbnSharedUxPageKibanaNoDataMocksObj from './kbn_shared_ux_page_kibana_no_data_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_kibana_template.mdx b/api_docs/kbn_shared_ux_page_kibana_template.mdx index 04d826bfdd1a3..697687200f773 100644 --- a/api_docs/kbn_shared_ux_page_kibana_template.mdx +++ b/api_docs/kbn_shared_ux_page_kibana_template.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-kibana-template title: "@kbn/shared-ux-page-kibana-template" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-kibana-template plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-kibana-template'] --- import kbnSharedUxPageKibanaTemplateObj from './kbn_shared_ux_page_kibana_template.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_kibana_template_mocks.mdx b/api_docs/kbn_shared_ux_page_kibana_template_mocks.mdx index a935d3fd1cadd..cb6e428301dc9 100644 --- a/api_docs/kbn_shared_ux_page_kibana_template_mocks.mdx +++ b/api_docs/kbn_shared_ux_page_kibana_template_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-kibana-template-mocks title: "@kbn/shared-ux-page-kibana-template-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-kibana-template-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-kibana-template-mocks'] --- import kbnSharedUxPageKibanaTemplateMocksObj from './kbn_shared_ux_page_kibana_template_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_no_data.mdx b/api_docs/kbn_shared_ux_page_no_data.mdx index f766c86efef85..a017be7f2249b 100644 --- a/api_docs/kbn_shared_ux_page_no_data.mdx +++ b/api_docs/kbn_shared_ux_page_no_data.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-no-data title: "@kbn/shared-ux-page-no-data" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-no-data plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-no-data'] --- import kbnSharedUxPageNoDataObj from './kbn_shared_ux_page_no_data.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_no_data_config.mdx b/api_docs/kbn_shared_ux_page_no_data_config.mdx index 61764bbf6904e..cb37da25542af 100644 --- a/api_docs/kbn_shared_ux_page_no_data_config.mdx +++ b/api_docs/kbn_shared_ux_page_no_data_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-no-data-config title: "@kbn/shared-ux-page-no-data-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-no-data-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-no-data-config'] --- import kbnSharedUxPageNoDataConfigObj from './kbn_shared_ux_page_no_data_config.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_no_data_config_mocks.mdx b/api_docs/kbn_shared_ux_page_no_data_config_mocks.mdx index 70d4be9b9fd0a..8a761597f9901 100644 --- a/api_docs/kbn_shared_ux_page_no_data_config_mocks.mdx +++ b/api_docs/kbn_shared_ux_page_no_data_config_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-no-data-config-mocks title: "@kbn/shared-ux-page-no-data-config-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-no-data-config-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-no-data-config-mocks'] --- import kbnSharedUxPageNoDataConfigMocksObj from './kbn_shared_ux_page_no_data_config_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_no_data_mocks.mdx b/api_docs/kbn_shared_ux_page_no_data_mocks.mdx index 0f71aa28e0172..3b9db8f6a1157 100644 --- a/api_docs/kbn_shared_ux_page_no_data_mocks.mdx +++ b/api_docs/kbn_shared_ux_page_no_data_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-no-data-mocks title: "@kbn/shared-ux-page-no-data-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-no-data-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-no-data-mocks'] --- import kbnSharedUxPageNoDataMocksObj from './kbn_shared_ux_page_no_data_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_page_solution_nav.mdx b/api_docs/kbn_shared_ux_page_solution_nav.mdx index 7e51334a9f7ef..153dbfb0cd7c0 100644 --- a/api_docs/kbn_shared_ux_page_solution_nav.mdx +++ b/api_docs/kbn_shared_ux_page_solution_nav.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-page-solution-nav title: "@kbn/shared-ux-page-solution-nav" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-page-solution-nav plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-page-solution-nav'] --- import kbnSharedUxPageSolutionNavObj from './kbn_shared_ux_page_solution_nav.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_prompt_no_data_views.mdx b/api_docs/kbn_shared_ux_prompt_no_data_views.mdx index 92f585923e037..eff10e8e11be5 100644 --- a/api_docs/kbn_shared_ux_prompt_no_data_views.mdx +++ b/api_docs/kbn_shared_ux_prompt_no_data_views.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-prompt-no-data-views title: "@kbn/shared-ux-prompt-no-data-views" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-prompt-no-data-views plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-prompt-no-data-views'] --- import kbnSharedUxPromptNoDataViewsObj from './kbn_shared_ux_prompt_no_data_views.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_prompt_no_data_views_mocks.mdx b/api_docs/kbn_shared_ux_prompt_no_data_views_mocks.mdx index 994e96c9a21f5..21a1c9b164e9b 100644 --- a/api_docs/kbn_shared_ux_prompt_no_data_views_mocks.mdx +++ b/api_docs/kbn_shared_ux_prompt_no_data_views_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-prompt-no-data-views-mocks title: "@kbn/shared-ux-prompt-no-data-views-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-prompt-no-data-views-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-prompt-no-data-views-mocks'] --- import kbnSharedUxPromptNoDataViewsMocksObj from './kbn_shared_ux_prompt_no_data_views_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_prompt_not_found.mdx b/api_docs/kbn_shared_ux_prompt_not_found.mdx index 62fe0edda4056..57de91af9e911 100644 --- a/api_docs/kbn_shared_ux_prompt_not_found.mdx +++ b/api_docs/kbn_shared_ux_prompt_not_found.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-prompt-not-found title: "@kbn/shared-ux-prompt-not-found" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-prompt-not-found plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-prompt-not-found'] --- import kbnSharedUxPromptNotFoundObj from './kbn_shared_ux_prompt_not_found.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_router.mdx b/api_docs/kbn_shared_ux_router.mdx index 1650e066eb3be..1fb3cc57e16c0 100644 --- a/api_docs/kbn_shared_ux_router.mdx +++ b/api_docs/kbn_shared_ux_router.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-router title: "@kbn/shared-ux-router" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-router plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-router'] --- import kbnSharedUxRouterObj from './kbn_shared_ux_router.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_router_mocks.mdx b/api_docs/kbn_shared_ux_router_mocks.mdx index d33438d6b2a90..fc7fa4b4f47aa 100644 --- a/api_docs/kbn_shared_ux_router_mocks.mdx +++ b/api_docs/kbn_shared_ux_router_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-router-mocks title: "@kbn/shared-ux-router-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-router-mocks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-router-mocks'] --- import kbnSharedUxRouterMocksObj from './kbn_shared_ux_router_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_storybook_config.mdx b/api_docs/kbn_shared_ux_storybook_config.mdx index 2dd715a66a14e..8c2097a9c1860 100644 --- a/api_docs/kbn_shared_ux_storybook_config.mdx +++ b/api_docs/kbn_shared_ux_storybook_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-storybook-config title: "@kbn/shared-ux-storybook-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-storybook-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-storybook-config'] --- import kbnSharedUxStorybookConfigObj from './kbn_shared_ux_storybook_config.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_storybook_mock.mdx b/api_docs/kbn_shared_ux_storybook_mock.mdx index 7469668c2baf8..79b28b91ee3b0 100644 --- a/api_docs/kbn_shared_ux_storybook_mock.mdx +++ b/api_docs/kbn_shared_ux_storybook_mock.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-storybook-mock title: "@kbn/shared-ux-storybook-mock" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-storybook-mock plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-storybook-mock'] --- import kbnSharedUxStorybookMockObj from './kbn_shared_ux_storybook_mock.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_tabbed_modal.mdx b/api_docs/kbn_shared_ux_tabbed_modal.mdx index 212e983ff36a1..1ae713c676c30 100644 --- a/api_docs/kbn_shared_ux_tabbed_modal.mdx +++ b/api_docs/kbn_shared_ux_tabbed_modal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-tabbed-modal title: "@kbn/shared-ux-tabbed-modal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-tabbed-modal plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-tabbed-modal'] --- import kbnSharedUxTabbedModalObj from './kbn_shared_ux_tabbed_modal.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_table_persist.mdx b/api_docs/kbn_shared_ux_table_persist.mdx index 524aebe6905ea..fa4970d4feac9 100644 --- a/api_docs/kbn_shared_ux_table_persist.mdx +++ b/api_docs/kbn_shared_ux_table_persist.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-table-persist title: "@kbn/shared-ux-table-persist" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-table-persist plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-table-persist'] --- import kbnSharedUxTablePersistObj from './kbn_shared_ux_table_persist.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_utility.mdx b/api_docs/kbn_shared_ux_utility.mdx index 1a0739d0cb237..12e48dc7a27d2 100644 --- a/api_docs/kbn_shared_ux_utility.mdx +++ b/api_docs/kbn_shared_ux_utility.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-utility title: "@kbn/shared-ux-utility" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-utility plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-utility'] --- import kbnSharedUxUtilityObj from './kbn_shared_ux_utility.devdocs.json'; diff --git a/api_docs/kbn_slo_schema.devdocs.json b/api_docs/kbn_slo_schema.devdocs.json index dad426dd249e5..d83e3fa5fc3d5 100644 --- a/api_docs/kbn_slo_schema.devdocs.json +++ b/api_docs/kbn_slo_schema.devdocs.json @@ -918,7 +918,7 @@ "section": "def-common.Duration", "text": "Duration" }, - " | undefined; }) | undefined; instanceId?: string | undefined; groupBy?: string | undefined; remoteName?: string | undefined; groupings?: { [x: string]: unknown; } | undefined; }" + " | undefined; }) | undefined; instanceId?: string | undefined; groupBy?: string | string[] | undefined; remoteName?: string | undefined; groupings?: { [x: string]: unknown; } | undefined; }" ], "path": "x-pack/packages/kbn-slo-schema/src/rest_specs/routes/get_preview_data.ts", "deprecated": false, @@ -8315,8 +8315,20 @@ ", string, unknown>; }>]>; instanceId: ", "StringC", "; groupBy: ", + "UnionC", + "<[", + "LiteralC", + "<\"*\">, ", + "StringC", + ", ", + "ArrayC", + "<", + "UnionC", + "<[", + "LiteralC", + "<\"*\">, ", "StringC", - "; remoteName: ", + "]>>]>; remoteName: ", "StringC", "; groupings: ", "RecordC", @@ -8477,12 +8489,18 @@ "<{ groupBy: ", "UnionC", "<[", + "LiteralC", + "<\"*\">, ", "StringC", ", ", "ArrayC", "<", + "UnionC", + "<[", + "LiteralC", + "<\"*\">, ", "StringC", - ">]>; instances: ", + "]>>]>; instances: ", "ArrayC", "<", "StringC", diff --git a/api_docs/kbn_slo_schema.mdx b/api_docs/kbn_slo_schema.mdx index 3e7ad217ee64f..2c363a37c7aaf 100644 --- a/api_docs/kbn_slo_schema.mdx +++ b/api_docs/kbn_slo_schema.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-slo-schema title: "@kbn/slo-schema" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/slo-schema plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/slo-schema'] --- import kbnSloSchemaObj from './kbn_slo_schema.devdocs.json'; diff --git a/api_docs/kbn_some_dev_log.mdx b/api_docs/kbn_some_dev_log.mdx index 6b0564f1c1f31..3ca3982207ea6 100644 --- a/api_docs/kbn_some_dev_log.mdx +++ b/api_docs/kbn_some_dev_log.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-some-dev-log title: "@kbn/some-dev-log" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/some-dev-log plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/some-dev-log'] --- import kbnSomeDevLogObj from './kbn_some_dev_log.devdocs.json'; diff --git a/api_docs/kbn_sort_predicates.mdx b/api_docs/kbn_sort_predicates.mdx index db3738005a235..eaaf9ffcec851 100644 --- a/api_docs/kbn_sort_predicates.mdx +++ b/api_docs/kbn_sort_predicates.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-sort-predicates title: "@kbn/sort-predicates" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/sort-predicates plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/sort-predicates'] --- import kbnSortPredicatesObj from './kbn_sort_predicates.devdocs.json'; diff --git a/api_docs/kbn_sse_utils.mdx b/api_docs/kbn_sse_utils.mdx index e38989a1ca2db..e533e597db704 100644 --- a/api_docs/kbn_sse_utils.mdx +++ b/api_docs/kbn_sse_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-sse-utils title: "@kbn/sse-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/sse-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/sse-utils'] --- import kbnSseUtilsObj from './kbn_sse_utils.devdocs.json'; diff --git a/api_docs/kbn_sse_utils_client.mdx b/api_docs/kbn_sse_utils_client.mdx index 40837d625933e..3831cf4394983 100644 --- a/api_docs/kbn_sse_utils_client.mdx +++ b/api_docs/kbn_sse_utils_client.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-sse-utils-client title: "@kbn/sse-utils-client" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/sse-utils-client plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/sse-utils-client'] --- import kbnSseUtilsClientObj from './kbn_sse_utils_client.devdocs.json'; diff --git a/api_docs/kbn_sse_utils_server.mdx b/api_docs/kbn_sse_utils_server.mdx index 3e8c831d204ae..dc85fd7d7fe42 100644 --- a/api_docs/kbn_sse_utils_server.mdx +++ b/api_docs/kbn_sse_utils_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-sse-utils-server title: "@kbn/sse-utils-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/sse-utils-server plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/sse-utils-server'] --- import kbnSseUtilsServerObj from './kbn_sse_utils_server.devdocs.json'; diff --git a/api_docs/kbn_std.mdx b/api_docs/kbn_std.mdx index 06429862009fb..6acb972535f66 100644 --- a/api_docs/kbn_std.mdx +++ b/api_docs/kbn_std.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-std title: "@kbn/std" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/std plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/std'] --- import kbnStdObj from './kbn_std.devdocs.json'; diff --git a/api_docs/kbn_stdio_dev_helpers.mdx b/api_docs/kbn_stdio_dev_helpers.mdx index b2bd3f397b21f..c8e9f140d38b9 100644 --- a/api_docs/kbn_stdio_dev_helpers.mdx +++ b/api_docs/kbn_stdio_dev_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-stdio-dev-helpers title: "@kbn/stdio-dev-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/stdio-dev-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/stdio-dev-helpers'] --- import kbnStdioDevHelpersObj from './kbn_stdio_dev_helpers.devdocs.json'; diff --git a/api_docs/kbn_storybook.mdx b/api_docs/kbn_storybook.mdx index 90455353f8602..31bc005036fe5 100644 --- a/api_docs/kbn_storybook.mdx +++ b/api_docs/kbn_storybook.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-storybook title: "@kbn/storybook" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/storybook plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/storybook'] --- import kbnStorybookObj from './kbn_storybook.devdocs.json'; diff --git a/api_docs/kbn_synthetics_e2e.mdx b/api_docs/kbn_synthetics_e2e.mdx index 291bb3b71e28a..adb6a133de45c 100644 --- a/api_docs/kbn_synthetics_e2e.mdx +++ b/api_docs/kbn_synthetics_e2e.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-synthetics-e2e title: "@kbn/synthetics-e2e" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/synthetics-e2e plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/synthetics-e2e'] --- import kbnSyntheticsE2eObj from './kbn_synthetics_e2e.devdocs.json'; diff --git a/api_docs/kbn_synthetics_private_location.mdx b/api_docs/kbn_synthetics_private_location.mdx index 8239cdbfe702b..a96da877d07a7 100644 --- a/api_docs/kbn_synthetics_private_location.mdx +++ b/api_docs/kbn_synthetics_private_location.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-synthetics-private-location title: "@kbn/synthetics-private-location" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/synthetics-private-location plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/synthetics-private-location'] --- import kbnSyntheticsPrivateLocationObj from './kbn_synthetics_private_location.devdocs.json'; diff --git a/api_docs/kbn_telemetry_tools.mdx b/api_docs/kbn_telemetry_tools.mdx index ed5c622ae7766..4b4219cacdf46 100644 --- a/api_docs/kbn_telemetry_tools.mdx +++ b/api_docs/kbn_telemetry_tools.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-telemetry-tools title: "@kbn/telemetry-tools" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/telemetry-tools plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/telemetry-tools'] --- import kbnTelemetryToolsObj from './kbn_telemetry_tools.devdocs.json'; diff --git a/api_docs/kbn_test.mdx b/api_docs/kbn_test.mdx index 65273e4ae1783..164bbb82ffcb8 100644 --- a/api_docs/kbn_test.mdx +++ b/api_docs/kbn_test.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-test title: "@kbn/test" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/test plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/test'] --- import kbnTestObj from './kbn_test.devdocs.json'; diff --git a/api_docs/kbn_test_eui_helpers.mdx b/api_docs/kbn_test_eui_helpers.mdx index 540d4a09a630f..468942b99f6ce 100644 --- a/api_docs/kbn_test_eui_helpers.mdx +++ b/api_docs/kbn_test_eui_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-test-eui-helpers title: "@kbn/test-eui-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/test-eui-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/test-eui-helpers'] --- import kbnTestEuiHelpersObj from './kbn_test_eui_helpers.devdocs.json'; diff --git a/api_docs/kbn_test_jest_helpers.mdx b/api_docs/kbn_test_jest_helpers.mdx index e8b40413368ca..a4ffed02e5b81 100644 --- a/api_docs/kbn_test_jest_helpers.mdx +++ b/api_docs/kbn_test_jest_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-test-jest-helpers title: "@kbn/test-jest-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/test-jest-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/test-jest-helpers'] --- import kbnTestJestHelpersObj from './kbn_test_jest_helpers.devdocs.json'; diff --git a/api_docs/kbn_test_subj_selector.mdx b/api_docs/kbn_test_subj_selector.mdx index 5333ef6ab58cc..edfdb435c4753 100644 --- a/api_docs/kbn_test_subj_selector.mdx +++ b/api_docs/kbn_test_subj_selector.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-test-subj-selector title: "@kbn/test-subj-selector" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/test-subj-selector plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/test-subj-selector'] --- import kbnTestSubjSelectorObj from './kbn_test_subj_selector.devdocs.json'; diff --git a/api_docs/kbn_text_based_editor.devdocs.json b/api_docs/kbn_text_based_editor.devdocs.json index 70a51ba17fe67..514d684d04469 100644 --- a/api_docs/kbn_text_based_editor.devdocs.json +++ b/api_docs/kbn_text_based_editor.devdocs.json @@ -564,6 +564,22 @@ "path": "packages/kbn-text-based-editor/src/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "@kbn/text-based-editor", + "id": "def-public.TextBasedLanguagesEditorProps.displayDocumentationAsFlyout", + "type": "CompoundType", + "tags": [], + "label": "displayDocumentationAsFlyout", + "description": [ + "adds a documentation icon in the footer which opens the inline docs as a flyout" + ], + "signature": [ + "boolean | undefined" + ], + "path": "packages/kbn-text-based-editor/src/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/kbn_text_based_editor.mdx b/api_docs/kbn_text_based_editor.mdx index 748a85928e0c7..d3835c6b27c27 100644 --- a/api_docs/kbn_text_based_editor.mdx +++ b/api_docs/kbn_text_based_editor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-text-based-editor title: "@kbn/text-based-editor" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/text-based-editor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/text-based-editor'] --- import kbnTextBasedEditorObj from './kbn_text_based_editor.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 28 | 0 | 12 | 0 | +| 29 | 0 | 12 | 0 | ## Client diff --git a/api_docs/kbn_timerange.mdx b/api_docs/kbn_timerange.mdx index c331eb93f6991..cfe129861406b 100644 --- a/api_docs/kbn_timerange.mdx +++ b/api_docs/kbn_timerange.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-timerange title: "@kbn/timerange" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/timerange plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/timerange'] --- import kbnTimerangeObj from './kbn_timerange.devdocs.json'; diff --git a/api_docs/kbn_tooling_log.mdx b/api_docs/kbn_tooling_log.mdx index ffff78435abd3..cf451921a663a 100644 --- a/api_docs/kbn_tooling_log.mdx +++ b/api_docs/kbn_tooling_log.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-tooling-log title: "@kbn/tooling-log" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/tooling-log plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/tooling-log'] --- import kbnToolingLogObj from './kbn_tooling_log.devdocs.json'; diff --git a/api_docs/kbn_triggers_actions_ui_types.mdx b/api_docs/kbn_triggers_actions_ui_types.mdx index 01fe12c7cfa64..73ab2db8265da 100644 --- a/api_docs/kbn_triggers_actions_ui_types.mdx +++ b/api_docs/kbn_triggers_actions_ui_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-triggers-actions-ui-types title: "@kbn/triggers-actions-ui-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/triggers-actions-ui-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/triggers-actions-ui-types'] --- import kbnTriggersActionsUiTypesObj from './kbn_triggers_actions_ui_types.devdocs.json'; diff --git a/api_docs/kbn_try_in_console.mdx b/api_docs/kbn_try_in_console.mdx index 5eb284913eac7..c28331d513129 100644 --- a/api_docs/kbn_try_in_console.mdx +++ b/api_docs/kbn_try_in_console.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-try-in-console title: "@kbn/try-in-console" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/try-in-console plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/try-in-console'] --- import kbnTryInConsoleObj from './kbn_try_in_console.devdocs.json'; diff --git a/api_docs/kbn_ts_projects.mdx b/api_docs/kbn_ts_projects.mdx index 749516f2d5c9b..0baed0d4973de 100644 --- a/api_docs/kbn_ts_projects.mdx +++ b/api_docs/kbn_ts_projects.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ts-projects title: "@kbn/ts-projects" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ts-projects plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ts-projects'] --- import kbnTsProjectsObj from './kbn_ts_projects.devdocs.json'; diff --git a/api_docs/kbn_typed_react_router_config.mdx b/api_docs/kbn_typed_react_router_config.mdx index 30bf65eb3fb72..fa888d99adf38 100644 --- a/api_docs/kbn_typed_react_router_config.mdx +++ b/api_docs/kbn_typed_react_router_config.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-typed-react-router-config title: "@kbn/typed-react-router-config" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/typed-react-router-config plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/typed-react-router-config'] --- import kbnTypedReactRouterConfigObj from './kbn_typed_react_router_config.devdocs.json'; diff --git a/api_docs/kbn_ui_actions_browser.devdocs.json b/api_docs/kbn_ui_actions_browser.devdocs.json index 6b641dade132c..b79226d21a95c 100644 --- a/api_docs/kbn_ui_actions_browser.devdocs.json +++ b/api_docs/kbn_ui_actions_browser.devdocs.json @@ -304,7 +304,7 @@ "section": "def-common.Presentable", "text": "Presentable" }, - ", \"order\" | \"getDisplayName\" | \"getIconType\" | \"getDisplayNameTooltip\">>" + ", \"order\" | \"getIconType\" | \"getDisplayName\" | \"getDisplayNameTooltip\">>" ], "path": "packages/kbn-ui-actions-browser/src/types/presentable.ts", "deprecated": false, diff --git a/api_docs/kbn_ui_actions_browser.mdx b/api_docs/kbn_ui_actions_browser.mdx index 9a5d7c8a9fc8c..5a4940104bc25 100644 --- a/api_docs/kbn_ui_actions_browser.mdx +++ b/api_docs/kbn_ui_actions_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ui-actions-browser title: "@kbn/ui-actions-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ui-actions-browser plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ui-actions-browser'] --- import kbnUiActionsBrowserObj from './kbn_ui_actions_browser.devdocs.json'; diff --git a/api_docs/kbn_ui_shared_deps_src.mdx b/api_docs/kbn_ui_shared_deps_src.mdx index 0d17547212c06..e85dac8fda8a4 100644 --- a/api_docs/kbn_ui_shared_deps_src.mdx +++ b/api_docs/kbn_ui_shared_deps_src.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ui-shared-deps-src title: "@kbn/ui-shared-deps-src" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ui-shared-deps-src plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ui-shared-deps-src'] --- import kbnUiSharedDepsSrcObj from './kbn_ui_shared_deps_src.devdocs.json'; diff --git a/api_docs/kbn_ui_theme.devdocs.json b/api_docs/kbn_ui_theme.devdocs.json index f7b49a9d755a3..b7c9d0a6f2831 100644 --- a/api_docs/kbn_ui_theme.devdocs.json +++ b/api_docs/kbn_ui_theme.devdocs.json @@ -85,6 +85,26 @@ "plugin": "@kbn/monaco", "path": "packages/kbn-monaco/src/console/theme.ts" }, + { + "plugin": "@kbn/monaco", + "path": "packages/kbn-monaco/src/console/theme.ts" + }, + { + "plugin": "@kbn/monaco", + "path": "packages/kbn-monaco/src/console/theme.ts" + }, + { + "plugin": "@kbn/monaco", + "path": "packages/kbn-monaco/src/console/theme.ts" + }, + { + "plugin": "@kbn/monaco", + "path": "packages/kbn-monaco/src/console/theme.ts" + }, + { + "plugin": "@kbn/monaco", + "path": "packages/kbn-monaco/src/console/theme.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/public/resolver/view/use_colors.ts" diff --git a/api_docs/kbn_ui_theme.mdx b/api_docs/kbn_ui_theme.mdx index bcda14d552e0c..b4db58ac5e143 100644 --- a/api_docs/kbn_ui_theme.mdx +++ b/api_docs/kbn_ui_theme.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ui-theme title: "@kbn/ui-theme" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ui-theme plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ui-theme'] --- import kbnUiThemeObj from './kbn_ui_theme.devdocs.json'; diff --git a/api_docs/kbn_unified_data_table.mdx b/api_docs/kbn_unified_data_table.mdx index 7a9da1c914ca6..376365b4aaac3 100644 --- a/api_docs/kbn_unified_data_table.mdx +++ b/api_docs/kbn_unified_data_table.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-unified-data-table title: "@kbn/unified-data-table" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/unified-data-table plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/unified-data-table'] --- import kbnUnifiedDataTableObj from './kbn_unified_data_table.devdocs.json'; diff --git a/api_docs/kbn_unified_doc_viewer.mdx b/api_docs/kbn_unified_doc_viewer.mdx index f1a071751304a..9956162d3ddd5 100644 --- a/api_docs/kbn_unified_doc_viewer.mdx +++ b/api_docs/kbn_unified_doc_viewer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-unified-doc-viewer title: "@kbn/unified-doc-viewer" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/unified-doc-viewer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/unified-doc-viewer'] --- import kbnUnifiedDocViewerObj from './kbn_unified_doc_viewer.devdocs.json'; diff --git a/api_docs/kbn_unified_field_list.mdx b/api_docs/kbn_unified_field_list.mdx index fada9f340d836..4bb2d56a83777 100644 --- a/api_docs/kbn_unified_field_list.mdx +++ b/api_docs/kbn_unified_field_list.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-unified-field-list title: "@kbn/unified-field-list" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/unified-field-list plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/unified-field-list'] --- import kbnUnifiedFieldListObj from './kbn_unified_field_list.devdocs.json'; diff --git a/api_docs/kbn_unsaved_changes_badge.mdx b/api_docs/kbn_unsaved_changes_badge.mdx index 59298d7c2fc23..86c235924b08a 100644 --- a/api_docs/kbn_unsaved_changes_badge.mdx +++ b/api_docs/kbn_unsaved_changes_badge.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-unsaved-changes-badge title: "@kbn/unsaved-changes-badge" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/unsaved-changes-badge plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/unsaved-changes-badge'] --- import kbnUnsavedChangesBadgeObj from './kbn_unsaved_changes_badge.devdocs.json'; diff --git a/api_docs/kbn_unsaved_changes_prompt.mdx b/api_docs/kbn_unsaved_changes_prompt.mdx index 9ade999c38c39..b1019abcf3a7f 100644 --- a/api_docs/kbn_unsaved_changes_prompt.mdx +++ b/api_docs/kbn_unsaved_changes_prompt.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-unsaved-changes-prompt title: "@kbn/unsaved-changes-prompt" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/unsaved-changes-prompt plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/unsaved-changes-prompt'] --- import kbnUnsavedChangesPromptObj from './kbn_unsaved_changes_prompt.devdocs.json'; diff --git a/api_docs/kbn_use_tracked_promise.mdx b/api_docs/kbn_use_tracked_promise.mdx index 64a1c5c283d17..f7d5d9802dd3a 100644 --- a/api_docs/kbn_use_tracked_promise.mdx +++ b/api_docs/kbn_use_tracked_promise.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-use-tracked-promise title: "@kbn/use-tracked-promise" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/use-tracked-promise plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/use-tracked-promise'] --- import kbnUseTrackedPromiseObj from './kbn_use_tracked_promise.devdocs.json'; diff --git a/api_docs/kbn_user_profile_components.mdx b/api_docs/kbn_user_profile_components.mdx index b3bd469679bb8..3d93e17085d0b 100644 --- a/api_docs/kbn_user_profile_components.mdx +++ b/api_docs/kbn_user_profile_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-user-profile-components title: "@kbn/user-profile-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/user-profile-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/user-profile-components'] --- import kbnUserProfileComponentsObj from './kbn_user_profile_components.devdocs.json'; diff --git a/api_docs/kbn_utility_types.mdx b/api_docs/kbn_utility_types.mdx index e818b0869ddc0..1b8a2e6e4c015 100644 --- a/api_docs/kbn_utility_types.mdx +++ b/api_docs/kbn_utility_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-utility-types title: "@kbn/utility-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/utility-types plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/utility-types'] --- import kbnUtilityTypesObj from './kbn_utility_types.devdocs.json'; diff --git a/api_docs/kbn_utility_types_jest.mdx b/api_docs/kbn_utility_types_jest.mdx index 786b78c009b71..d97f361d571e7 100644 --- a/api_docs/kbn_utility_types_jest.mdx +++ b/api_docs/kbn_utility_types_jest.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-utility-types-jest title: "@kbn/utility-types-jest" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/utility-types-jest plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/utility-types-jest'] --- import kbnUtilityTypesJestObj from './kbn_utility_types_jest.devdocs.json'; diff --git a/api_docs/kbn_utils.mdx b/api_docs/kbn_utils.mdx index 3e224edd55945..b470ecd37a67e 100644 --- a/api_docs/kbn_utils.mdx +++ b/api_docs/kbn_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-utils title: "@kbn/utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/utils'] --- import kbnUtilsObj from './kbn_utils.devdocs.json'; diff --git a/api_docs/kbn_visualization_ui_components.mdx b/api_docs/kbn_visualization_ui_components.mdx index 6bc692b3d1d3f..3ec389e690a40 100644 --- a/api_docs/kbn_visualization_ui_components.mdx +++ b/api_docs/kbn_visualization_ui_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-visualization-ui-components title: "@kbn/visualization-ui-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/visualization-ui-components plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/visualization-ui-components'] --- import kbnVisualizationUiComponentsObj from './kbn_visualization_ui_components.devdocs.json'; diff --git a/api_docs/kbn_visualization_utils.mdx b/api_docs/kbn_visualization_utils.mdx index 787315350f0a9..edde6552e6e48 100644 --- a/api_docs/kbn_visualization_utils.mdx +++ b/api_docs/kbn_visualization_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-visualization-utils title: "@kbn/visualization-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/visualization-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/visualization-utils'] --- import kbnVisualizationUtilsObj from './kbn_visualization_utils.devdocs.json'; diff --git a/api_docs/kbn_xstate_utils.mdx b/api_docs/kbn_xstate_utils.mdx index a77e1a664b032..6b89317a24e24 100644 --- a/api_docs/kbn_xstate_utils.mdx +++ b/api_docs/kbn_xstate_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-xstate-utils title: "@kbn/xstate-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/xstate-utils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/xstate-utils'] --- import kbnXstateUtilsObj from './kbn_xstate_utils.devdocs.json'; diff --git a/api_docs/kbn_yarn_lock_validator.mdx b/api_docs/kbn_yarn_lock_validator.mdx index dd126036f0c23..6daed9b370f76 100644 --- a/api_docs/kbn_yarn_lock_validator.mdx +++ b/api_docs/kbn_yarn_lock_validator.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-yarn-lock-validator title: "@kbn/yarn-lock-validator" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/yarn-lock-validator plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/yarn-lock-validator'] --- import kbnYarnLockValidatorObj from './kbn_yarn_lock_validator.devdocs.json'; diff --git a/api_docs/kbn_zod.mdx b/api_docs/kbn_zod.mdx index 563294de0edf8..3c2e859097c8f 100644 --- a/api_docs/kbn_zod.mdx +++ b/api_docs/kbn_zod.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-zod title: "@kbn/zod" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/zod plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/zod'] --- import kbnZodObj from './kbn_zod.devdocs.json'; diff --git a/api_docs/kbn_zod_helpers.mdx b/api_docs/kbn_zod_helpers.mdx index d62a7f6c49c92..cdff0021aacd7 100644 --- a/api_docs/kbn_zod_helpers.mdx +++ b/api_docs/kbn_zod_helpers.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-zod-helpers title: "@kbn/zod-helpers" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/zod-helpers plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/zod-helpers'] --- import kbnZodHelpersObj from './kbn_zod_helpers.devdocs.json'; diff --git a/api_docs/kibana_overview.mdx b/api_docs/kibana_overview.mdx index fa6c238fa7800..74ef38b08ec3f 100644 --- a/api_docs/kibana_overview.mdx +++ b/api_docs/kibana_overview.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kibanaOverview title: "kibanaOverview" image: https://source.unsplash.com/400x175/?github description: API docs for the kibanaOverview plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'kibanaOverview'] --- import kibanaOverviewObj from './kibana_overview.devdocs.json'; diff --git a/api_docs/kibana_react.devdocs.json b/api_docs/kibana_react.devdocs.json index 244c55b71b9da..795667ebbec00 100644 --- a/api_docs/kibana_react.devdocs.json +++ b/api_docs/kibana_react.devdocs.json @@ -2531,6 +2531,14 @@ "section": "def-public.ExecutionContextSetup", "text": "ExecutionContextSetup" }, + " | undefined; featureFlags?: ", + { + "pluginId": "@kbn/core-feature-flags-browser", + "scope": "public", + "docId": "kibKbnCoreFeatureFlagsBrowserPluginApi", + "section": "def-public.FeatureFlagsStart", + "text": "FeatureFlagsStart" + }, " | undefined; http?: ", { "pluginId": "@kbn/core-http-browser", diff --git a/api_docs/kibana_react.mdx b/api_docs/kibana_react.mdx index cba2b1ce1648c..62d77d33dcf5f 100644 --- a/api_docs/kibana_react.mdx +++ b/api_docs/kibana_react.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kibanaReact title: "kibanaReact" image: https://source.unsplash.com/400x175/?github description: API docs for the kibanaReact plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'kibanaReact'] --- import kibanaReactObj from './kibana_react.devdocs.json'; diff --git a/api_docs/kibana_utils.mdx b/api_docs/kibana_utils.mdx index 0a4674502959f..0e97569a1b519 100644 --- a/api_docs/kibana_utils.mdx +++ b/api_docs/kibana_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kibanaUtils title: "kibanaUtils" image: https://source.unsplash.com/400x175/?github description: API docs for the kibanaUtils plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'kibanaUtils'] --- import kibanaUtilsObj from './kibana_utils.devdocs.json'; diff --git a/api_docs/kubernetes_security.mdx b/api_docs/kubernetes_security.mdx index 24e0272883296..b0104c8adc19f 100644 --- a/api_docs/kubernetes_security.mdx +++ b/api_docs/kubernetes_security.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kubernetesSecurity title: "kubernetesSecurity" image: https://source.unsplash.com/400x175/?github description: API docs for the kubernetesSecurity plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'kubernetesSecurity'] --- import kubernetesSecurityObj from './kubernetes_security.devdocs.json'; diff --git a/api_docs/lens.mdx b/api_docs/lens.mdx index 12fd0b398cfdd..aeee722227a5d 100644 --- a/api_docs/lens.mdx +++ b/api_docs/lens.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/lens title: "lens" image: https://source.unsplash.com/400x175/?github description: API docs for the lens plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'lens'] --- import lensObj from './lens.devdocs.json'; diff --git a/api_docs/license_api_guard.mdx b/api_docs/license_api_guard.mdx index 3fc60dbb0dd26..30b723b877656 100644 --- a/api_docs/license_api_guard.mdx +++ b/api_docs/license_api_guard.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/licenseApiGuard title: "licenseApiGuard" image: https://source.unsplash.com/400x175/?github description: API docs for the licenseApiGuard plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'licenseApiGuard'] --- import licenseApiGuardObj from './license_api_guard.devdocs.json'; diff --git a/api_docs/license_management.mdx b/api_docs/license_management.mdx index cb1ff50182afb..34cdf278e17a9 100644 --- a/api_docs/license_management.mdx +++ b/api_docs/license_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/licenseManagement title: "licenseManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the licenseManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'licenseManagement'] --- import licenseManagementObj from './license_management.devdocs.json'; diff --git a/api_docs/licensing.mdx b/api_docs/licensing.mdx index 0ef3172a61244..38904bd0d174b 100644 --- a/api_docs/licensing.mdx +++ b/api_docs/licensing.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/licensing title: "licensing" image: https://source.unsplash.com/400x175/?github description: API docs for the licensing plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'licensing'] --- import licensingObj from './licensing.devdocs.json'; diff --git a/api_docs/links.mdx b/api_docs/links.mdx index 818c2ac82a7a6..a923fd523bda3 100644 --- a/api_docs/links.mdx +++ b/api_docs/links.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/links title: "links" image: https://source.unsplash.com/400x175/?github description: API docs for the links plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'links'] --- import linksObj from './links.devdocs.json'; diff --git a/api_docs/lists.mdx b/api_docs/lists.mdx index 767734b3c9d3c..4ff724794f2da 100644 --- a/api_docs/lists.mdx +++ b/api_docs/lists.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/lists title: "lists" image: https://source.unsplash.com/400x175/?github description: API docs for the lists plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'lists'] --- import listsObj from './lists.devdocs.json'; diff --git a/api_docs/logs_data_access.devdocs.json b/api_docs/logs_data_access.devdocs.json index 3255af872f573..95f2140d313b3 100644 --- a/api_docs/logs_data_access.devdocs.json +++ b/api_docs/logs_data_access.devdocs.json @@ -51,6 +51,39 @@ ], "initialIsOpen": false }, + { + "parentPluginId": "logsDataAccess", + "id": "def-public.LogSourcesSettingSynchronisationInfo", + "type": "Function", + "tags": [], + "label": "LogSourcesSettingSynchronisationInfo", + "description": [], + "signature": [ + "({ isLoading, logSourcesValue, getUrlForApp, title }: React.PropsWithChildren<{ isLoading: boolean; logSourcesValue: string; getUrlForApp: (appId: string, options?: { path?: string | undefined; absolute?: boolean | undefined; deepLinkId?: string | undefined; } | undefined) => string; title?: string | undefined; }>) => JSX.Element" + ], + "path": "x-pack/plugins/observability_solution/logs_data_access/public/components/logs_sources_setting.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "logsDataAccess", + "id": "def-public.LogSourcesSettingSynchronisationInfo.$1", + "type": "CompoundType", + "tags": [], + "label": "{ isLoading, logSourcesValue, getUrlForApp, title }", + "description": [], + "signature": [ + "React.PropsWithChildren<{ isLoading: boolean; logSourcesValue: string; getUrlForApp: (appId: string, options?: { path?: string | undefined; absolute?: boolean | undefined; deepLinkId?: string | undefined; } | undefined) => string; title?: string | undefined; }>" + ], + "path": "x-pack/plugins/observability_solution/logs_data_access/public/components/logs_sources_setting.tsx", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, { "parentPluginId": "logsDataAccess", "id": "def-public.useLogSourcesContext", diff --git a/api_docs/logs_data_access.mdx b/api_docs/logs_data_access.mdx index af96766666cd1..feaab610c69f4 100644 --- a/api_docs/logs_data_access.mdx +++ b/api_docs/logs_data_access.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/logsDataAccess title: "logsDataAccess" image: https://source.unsplash.com/400x175/?github description: API docs for the logsDataAccess plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'logsDataAccess'] --- import logsDataAccessObj from './logs_data_access.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs- | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 13 | 0 | 11 | 7 | +| 15 | 0 | 13 | 7 | ## Client diff --git a/api_docs/logs_explorer.mdx b/api_docs/logs_explorer.mdx index 4c86876f2ce98..30acf5f93d793 100644 --- a/api_docs/logs_explorer.mdx +++ b/api_docs/logs_explorer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/logsExplorer title: "logsExplorer" image: https://source.unsplash.com/400x175/?github description: API docs for the logsExplorer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'logsExplorer'] --- import logsExplorerObj from './logs_explorer.devdocs.json'; diff --git a/api_docs/logs_shared.mdx b/api_docs/logs_shared.mdx index 697e1ee33aa87..6c2d6ab32a622 100644 --- a/api_docs/logs_shared.mdx +++ b/api_docs/logs_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/logsShared title: "logsShared" image: https://source.unsplash.com/400x175/?github description: API docs for the logsShared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'logsShared'] --- import logsSharedObj from './logs_shared.devdocs.json'; diff --git a/api_docs/management.mdx b/api_docs/management.mdx index 096313fba48ca..7f474a4e0b610 100644 --- a/api_docs/management.mdx +++ b/api_docs/management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/management title: "management" image: https://source.unsplash.com/400x175/?github description: API docs for the management plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'management'] --- import managementObj from './management.devdocs.json'; diff --git a/api_docs/maps.mdx b/api_docs/maps.mdx index d027bb30a8329..4d781d8a25877 100644 --- a/api_docs/maps.mdx +++ b/api_docs/maps.mdx @@ -8,14 +8,14 @@ slug: /kibana-dev-docs/api/maps title: "maps" image: https://source.unsplash.com/400x175/?github description: API docs for the maps plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'maps'] --- import mapsObj from './maps.devdocs.json'; -Contact [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) for questions regarding this plugin. +Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) for questions regarding this plugin. **Code health stats** diff --git a/api_docs/maps_ems.mdx b/api_docs/maps_ems.mdx index 046f26cc9edb1..7b723a3e7fe88 100644 --- a/api_docs/maps_ems.mdx +++ b/api_docs/maps_ems.mdx @@ -8,14 +8,14 @@ slug: /kibana-dev-docs/api/mapsEms title: "mapsEms" image: https://source.unsplash.com/400x175/?github description: API docs for the mapsEms plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'mapsEms'] --- import mapsEmsObj from './maps_ems.devdocs.json'; -Contact [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) for questions regarding this plugin. +Contact [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) for questions regarding this plugin. **Code health stats** diff --git a/api_docs/metrics_data_access.mdx b/api_docs/metrics_data_access.mdx index 27c857687a2b8..e302251c22646 100644 --- a/api_docs/metrics_data_access.mdx +++ b/api_docs/metrics_data_access.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/metricsDataAccess title: "metricsDataAccess" image: https://source.unsplash.com/400x175/?github description: API docs for the metricsDataAccess plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'metricsDataAccess'] --- import metricsDataAccessObj from './metrics_data_access.devdocs.json'; diff --git a/api_docs/ml.mdx b/api_docs/ml.mdx index 631a1506b17bd..86e6c2f09b519 100644 --- a/api_docs/ml.mdx +++ b/api_docs/ml.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/ml title: "ml" image: https://source.unsplash.com/400x175/?github description: API docs for the ml plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ml'] --- import mlObj from './ml.devdocs.json'; diff --git a/api_docs/mock_idp_plugin.mdx b/api_docs/mock_idp_plugin.mdx index a1bcdaf060393..e1aad0582f50e 100644 --- a/api_docs/mock_idp_plugin.mdx +++ b/api_docs/mock_idp_plugin.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/mockIdpPlugin title: "mockIdpPlugin" image: https://source.unsplash.com/400x175/?github description: API docs for the mockIdpPlugin plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'mockIdpPlugin'] --- import mockIdpPluginObj from './mock_idp_plugin.devdocs.json'; diff --git a/api_docs/monitoring.mdx b/api_docs/monitoring.mdx index 2ca761284d1e0..9536583f55b81 100644 --- a/api_docs/monitoring.mdx +++ b/api_docs/monitoring.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/monitoring title: "monitoring" image: https://source.unsplash.com/400x175/?github description: API docs for the monitoring plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'monitoring'] --- import monitoringObj from './monitoring.devdocs.json'; diff --git a/api_docs/monitoring_collection.mdx b/api_docs/monitoring_collection.mdx index c2dda73f35726..2913597ba9cfc 100644 --- a/api_docs/monitoring_collection.mdx +++ b/api_docs/monitoring_collection.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/monitoringCollection title: "monitoringCollection" image: https://source.unsplash.com/400x175/?github description: API docs for the monitoringCollection plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'monitoringCollection'] --- import monitoringCollectionObj from './monitoring_collection.devdocs.json'; diff --git a/api_docs/navigation.mdx b/api_docs/navigation.mdx index 0e93de25a89a1..c1a73ac787e5c 100644 --- a/api_docs/navigation.mdx +++ b/api_docs/navigation.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/navigation title: "navigation" image: https://source.unsplash.com/400x175/?github description: API docs for the navigation plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'navigation'] --- import navigationObj from './navigation.devdocs.json'; diff --git a/api_docs/newsfeed.mdx b/api_docs/newsfeed.mdx index 233050fea8efc..5341799db70a1 100644 --- a/api_docs/newsfeed.mdx +++ b/api_docs/newsfeed.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/newsfeed title: "newsfeed" image: https://source.unsplash.com/400x175/?github description: API docs for the newsfeed plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'newsfeed'] --- import newsfeedObj from './newsfeed.devdocs.json'; diff --git a/api_docs/no_data_page.mdx b/api_docs/no_data_page.mdx index 99416ad1ee0bb..92843f066694d 100644 --- a/api_docs/no_data_page.mdx +++ b/api_docs/no_data_page.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/noDataPage title: "noDataPage" image: https://source.unsplash.com/400x175/?github description: API docs for the noDataPage plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'noDataPage'] --- import noDataPageObj from './no_data_page.devdocs.json'; diff --git a/api_docs/notifications.mdx b/api_docs/notifications.mdx index f73ec119b5760..7cc7ece9e6921 100644 --- a/api_docs/notifications.mdx +++ b/api_docs/notifications.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/notifications title: "notifications" image: https://source.unsplash.com/400x175/?github description: API docs for the notifications plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'notifications'] --- import notificationsObj from './notifications.devdocs.json'; diff --git a/api_docs/observability.devdocs.json b/api_docs/observability.devdocs.json index df57c1b532c37..e62ffba52ccab 100644 --- a/api_docs/observability.devdocs.json +++ b/api_docs/observability.devdocs.json @@ -2892,27 +2892,6 @@ "path": "x-pack/plugins/observability_solution/observability/public/plugin.ts", "deprecated": false, "trackAdoption": false - }, - { - "parentPluginId": "observability", - "id": "def-public.ObservabilityPublicPluginsSetup.inventory", - "type": "Object", - "tags": [], - "label": "inventory", - "description": [], - "signature": [ - { - "pluginId": "inventory", - "scope": "public", - "docId": "kibInventoryPluginApi", - "section": "def-public.InventoryPublicSetup", - "text": "InventoryPublicSetup" - }, - " | undefined" - ], - "path": "x-pack/plugins/observability_solution/observability/public/plugin.ts", - "deprecated": false, - "trackAdoption": false } ], "initialIsOpen": false @@ -3863,27 +3842,6 @@ "path": "x-pack/plugins/observability_solution/observability/public/plugin.ts", "deprecated": false, "trackAdoption": false - }, - { - "parentPluginId": "observability", - "id": "def-public.ObservabilityPublicPluginsStart.inventory", - "type": "Object", - "tags": [], - "label": "inventory", - "description": [], - "signature": [ - { - "pluginId": "inventory", - "scope": "public", - "docId": "kibInventoryPluginApi", - "section": "def-public.InventoryPublicStart", - "text": "InventoryPublicStart" - }, - " | undefined" - ], - "path": "x-pack/plugins/observability_solution/observability/public/plugin.ts", - "deprecated": false, - "trackAdoption": false } ], "initialIsOpen": false @@ -9190,7 +9148,7 @@ "SearchNestedIdentity", " | undefined; _ignored?: string[] | undefined; ignored_field_values?: Record | undefined; _shard?: string | undefined; _node?: string | undefined; _routing?: string | undefined; _rank?: number | undefined; _seq_no?: number | undefined; _primary_term?: number | undefined; _version?: number | undefined; sort?: ", "SortResults", - " | undefined; }>; find: (findParams: { query?: string | undefined; start?: string | undefined; end?: string | undefined; sloId?: string | undefined; sloInstanceId?: string | undefined; serviceName?: string | undefined; }) => Promise<{ items: { id: string | undefined; annotation: { title: string; type?: string | undefined; style?: { icon?: string | undefined; color?: string | undefined; line?: { width?: number | undefined; style?: \"dashed\" | \"solid\" | \"dotted\" | undefined; iconPosition?: \"top\" | \"bottom\" | undefined; textDecoration?: \"none\" | \"name\" | undefined; } | undefined; rect?: { fill?: \"inside\" | \"outside\" | undefined; } | undefined; } | undefined; }; '@timestamp': string; message: string; event?: ({ start: string; } & { end?: string | undefined; }) | undefined; tags?: string[] | undefined; service?: { name?: string | undefined; environment?: string | undefined; version?: string | undefined; } | undefined; monitor?: { id?: string | undefined; } | undefined; slo?: ({ id: string; } & { instanceId?: string | undefined; }) | undefined; host?: { name?: string | undefined; } | undefined; }[]; total: number; }>; delete: (deleteParams: { id: string; }) => Promise<", + " | undefined; }>; find: (findParams: { query?: string | undefined; start?: string | undefined; end?: string | undefined; sloId?: string | undefined; sloInstanceId?: string | undefined; serviceName?: string | undefined; filter?: string | undefined; size?: number | undefined; }) => Promise<{ items: { id: string | undefined; annotation: { title: string; type?: string | undefined; style?: { icon?: string | undefined; color?: string | undefined; line?: { width?: number | undefined; style?: \"dashed\" | \"solid\" | \"dotted\" | undefined; iconPosition?: \"top\" | \"bottom\" | undefined; textDecoration?: \"none\" | \"name\" | undefined; } | undefined; rect?: { fill?: \"inside\" | \"outside\" | undefined; } | undefined; } | undefined; }; '@timestamp': string; message: string; event?: ({ start: string; } & { end?: string | undefined; }) | undefined; tags?: string[] | undefined; service?: { name?: string | undefined; environment?: string | undefined; version?: string | undefined; } | undefined; monitor?: { id?: string | undefined; } | undefined; slo?: ({ id: string; } & { instanceId?: string | undefined; }) | undefined; host?: { name?: string | undefined; } | undefined; }[]; total: number; }>; delete: (deleteParams: { id: string; }) => Promise<", "DeleteByQueryResponse", ">; permissions: () => Promise<{ index: string; hasGoldLicense: boolean; }>; }" ], @@ -12947,6 +12905,104 @@ "trackAdoption": false } ] + }, + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers", + "type": "Object", + "tags": [], + "label": "[searchExcludedDataTiers]", + "description": [], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers.category", + "type": "Array", + "tags": [], + "label": "category", + "description": [], + "signature": [ + "string[]" + ], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers.name", + "type": "string", + "tags": [], + "label": "name", + "description": [], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers.description", + "type": "string", + "tags": [], + "label": "description", + "description": [], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers.value", + "type": "Array", + "tags": [], + "label": "value", + "description": [], + "signature": [ + "never[]" + ], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers.schema", + "type": "Object", + "tags": [], + "label": "schema", + "description": [], + "signature": [ + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "<(\"data_cold\" | \"data_frozen\")[]>" + ], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observability", + "id": "def-server.uiSettings.searchExcludedDataTiers.requiresPageReload", + "type": "boolean", + "tags": [], + "label": "requiresPageReload", + "description": [], + "signature": [ + "false" + ], + "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", + "deprecated": false, + "trackAdoption": false + } + ] } ], "initialIsOpen": false @@ -12992,7 +13048,7 @@ "SearchNestedIdentity", " | undefined; _ignored?: string[] | undefined; ignored_field_values?: Record | undefined; _shard?: string | undefined; _node?: string | undefined; _routing?: string | undefined; _rank?: number | undefined; _seq_no?: number | undefined; _primary_term?: number | undefined; _version?: number | undefined; sort?: ", "SortResults", - " | undefined; }>; find: (findParams: { query?: string | undefined; start?: string | undefined; end?: string | undefined; sloId?: string | undefined; sloInstanceId?: string | undefined; serviceName?: string | undefined; }) => Promise<{ items: { id: string | undefined; annotation: { title: string; type?: string | undefined; style?: { icon?: string | undefined; color?: string | undefined; line?: { width?: number | undefined; style?: \"dashed\" | \"solid\" | \"dotted\" | undefined; iconPosition?: \"top\" | \"bottom\" | undefined; textDecoration?: \"none\" | \"name\" | undefined; } | undefined; rect?: { fill?: \"inside\" | \"outside\" | undefined; } | undefined; } | undefined; }; '@timestamp': string; message: string; event?: ({ start: string; } & { end?: string | undefined; }) | undefined; tags?: string[] | undefined; service?: { name?: string | undefined; environment?: string | undefined; version?: string | undefined; } | undefined; monitor?: { id?: string | undefined; } | undefined; slo?: ({ id: string; } & { instanceId?: string | undefined; }) | undefined; host?: { name?: string | undefined; } | undefined; }[]; total: number; }>; delete: (deleteParams: { id: string; }) => Promise<", + " | undefined; }>; find: (findParams: { query?: string | undefined; start?: string | undefined; end?: string | undefined; sloId?: string | undefined; sloInstanceId?: string | undefined; serviceName?: string | undefined; filter?: string | undefined; size?: number | undefined; }) => Promise<{ items: { id: string | undefined; annotation: { title: string; type?: string | undefined; style?: { icon?: string | undefined; color?: string | undefined; line?: { width?: number | undefined; style?: \"dashed\" | \"solid\" | \"dotted\" | undefined; iconPosition?: \"top\" | \"bottom\" | undefined; textDecoration?: \"none\" | \"name\" | undefined; } | undefined; rect?: { fill?: \"inside\" | \"outside\" | undefined; } | undefined; } | undefined; }; '@timestamp': string; message: string; event?: ({ start: string; } & { end?: string | undefined; }) | undefined; tags?: string[] | undefined; service?: { name?: string | undefined; environment?: string | undefined; version?: string | undefined; } | undefined; monitor?: { id?: string | undefined; } | undefined; slo?: ({ id: string; } & { instanceId?: string | undefined; }) | undefined; host?: { name?: string | undefined; } | undefined; }[]; total: number; }>; delete: (deleteParams: { id: string; }) => Promise<", "DeleteByQueryResponse", ">; permissions: () => Promise<{ index: string; hasGoldLicense: boolean; }>; } | undefined>; alertDetailsContextualInsightsService: ", "AlertDetailsContextualInsightsService", diff --git a/api_docs/observability.mdx b/api_docs/observability.mdx index d328829906668..0a541bf579906 100644 --- a/api_docs/observability.mdx +++ b/api_docs/observability.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observability title: "observability" image: https://source.unsplash.com/400x175/?github description: API docs for the observability plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observability'] --- import observabilityObj from './observability.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/ | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 705 | 2 | 698 | 22 | +| 710 | 2 | 703 | 22 | ## Client diff --git a/api_docs/observability_a_i_assistant.devdocs.json b/api_docs/observability_a_i_assistant.devdocs.json index b9cd1189dd76b..75922418bef35 100644 --- a/api_docs/observability_a_i_assistant.devdocs.json +++ b/api_docs/observability_a_i_assistant.devdocs.json @@ -1147,6 +1147,21 @@ "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/functions/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-public.FunctionDefinition.scopes", + "type": "Array", + "tags": [], + "label": "scopes", + "description": [], + "signature": [ + "AssistantScope", + "[] | undefined" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/functions/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -1459,7 +1474,9 @@ "section": "def-common.FunctionDefinition", "text": "FunctionDefinition" }, - ", \"name\" | \"description\" | \"parameters\">[] | undefined; functionCall?: string | undefined; signal: AbortSignal; }) => ", + ", \"name\" | \"description\" | \"parameters\">[] | undefined; functionCall?: string | undefined; signal: AbortSignal; scope: ", + "AssistantScope", + "; }) => ", "Observable", "<", { @@ -1582,6 +1599,20 @@ "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-public.ObservabilityAIAssistantChatService.chat.$2.scope", + "type": "CompoundType", + "tags": [], + "label": "scope", + "description": [], + "signature": [ + "\"search\" | \"observability\" | \"all\"" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false } ] } @@ -1608,7 +1639,9 @@ }, "[]; persist: boolean; disableFunctions: boolean | { except: string[]; }; signal: AbortSignal; instructions?: ", "AdHocInstruction", - "[] | undefined; }) => ", + "[] | undefined; scope: ", + "AssistantScope", + "; }) => ", "Observable", "<", { @@ -1752,6 +1785,20 @@ "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-public.ObservabilityAIAssistantChatService.complete.$1.scope", + "type": "CompoundType", + "tags": [], + "label": "scope", + "description": [], + "signature": [ + "\"search\" | \"observability\" | \"all\"" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false } ] } @@ -1766,7 +1813,9 @@ "label": "getFunctions", "description": [], "signature": [ - "(options?: { contexts?: string[] | undefined; filter?: string | undefined; } | undefined) => ", + "(options?: { contexts?: string[] | undefined; filter?: string | undefined; scope: ", + "AssistantScope", + "; } | undefined) => ", { "pluginId": "observabilityAIAssistant", "scope": "common", @@ -1818,6 +1867,20 @@ "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-public.ObservabilityAIAssistantChatService.getFunctions.$1.scope", + "type": "CompoundType", + "tags": [], + "label": "scope", + "description": [], + "signature": [ + "\"search\" | \"observability\" | \"all\"" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false } ] } @@ -1927,7 +1990,9 @@ "section": "def-public.ChatActionClickHandler", "text": "ChatActionClickHandler" }, - ") => React.ReactNode" + ", scope?: ", + "AssistantScope", + " | undefined) => React.ReactNode" ], "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", "deprecated": false, @@ -2024,6 +2089,22 @@ "deprecated": false, "trackAdoption": false, "isRequired": true + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-public.ObservabilityAIAssistantChatService.renderFunction.$5", + "type": "CompoundType", + "tags": [], + "label": "scope", + "description": [], + "signature": [ + "AssistantScope", + " | undefined" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false } ], "returnComment": [] @@ -2050,7 +2131,7 @@ "label": "callApi", "description": [], "signature": [ - "(endpoint: TEndpoint, ...args: MaybeOptionalArgs<", + "(endpoint: TEndpoint, ...args: MaybeOptionalArgs<", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -2370,7 +2451,7 @@ "RecalledEntry", "[]; }, ", "ObservabilityAIAssistantRouteCreateOptions", - ">; \"GET /internal/observability_ai_assistant/functions\": ", + ">; \"GET /internal/observability_ai_assistant/{scope}/functions\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -2378,7 +2459,19 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /internal/observability_ai_assistant/functions\", undefined, ", + "<\"GET /internal/observability_ai_assistant/{scope}/functions\", ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", { functionDefinitions: ", { @@ -2766,7 +2859,15 @@ "ObservabilityAIAssistantScreenContextRequest", ", ", "ObservabilityAIAssistantScreenContextRequest", - ", unknown>>; }>; }>]>, ", + ", unknown>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>]>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -2790,7 +2891,15 @@ "StringC", "; connectorId: ", "StringC", - "; }>; }>, ", + "; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -2848,7 +2957,15 @@ "PartialC", "<{ parameters: ", "AnyC", - "; }>]>>; }>, ", + "; }>]>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>, ", "PartialC", "<{ functionCall: ", "StringC", @@ -3178,7 +3295,7 @@ "RecalledEntry", "[]; }, ", "ObservabilityAIAssistantRouteCreateOptions", - ">; \"GET /internal/observability_ai_assistant/functions\": ", + ">; \"GET /internal/observability_ai_assistant/{scope}/functions\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -3186,7 +3303,19 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /internal/observability_ai_assistant/functions\", undefined, ", + "<\"GET /internal/observability_ai_assistant/{scope}/functions\", ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", { functionDefinitions: ", { @@ -3574,7 +3703,15 @@ "ObservabilityAIAssistantScreenContextRequest", ", ", "ObservabilityAIAssistantScreenContextRequest", - ", unknown>>; }>; }>]>, ", + ", unknown>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>]>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -3598,7 +3735,15 @@ "StringC", "; connectorId: ", "StringC", - "; }>; }>, ", + "; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -3656,7 +3801,15 @@ "PartialC", "<{ parameters: ", "AnyC", - "; }>]>>; }>, ", + "; }>]>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>, ", "PartialC", "<{ functionCall: ", "StringC", @@ -3937,6 +4090,20 @@ } ], "returnComment": [] + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-public.ObservabilityAIAssistantService.scope", + "type": "CompoundType", + "tags": [], + "label": "scope", + "description": [], + "signature": [ + "\"search\" | \"observability\" | \"all\"" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -4241,7 +4408,7 @@ "label": "aiAssistantLogsIndexPattern", "description": [], "signature": [ - "\"observability:aiAssistantLogsIndexPattern\"" + "\"observability:logSources\"" ], "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/ui_settings/settings_keys.ts", "deprecated": false, @@ -4613,7 +4780,7 @@ "RecalledEntry", "[]; }, ", "ObservabilityAIAssistantRouteCreateOptions", - ">; \"GET /internal/observability_ai_assistant/functions\": ", + ">; \"GET /internal/observability_ai_assistant/{scope}/functions\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -4621,7 +4788,19 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /internal/observability_ai_assistant/functions\", undefined, ", + "<\"GET /internal/observability_ai_assistant/{scope}/functions\", ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", { functionDefinitions: ", { @@ -5009,7 +5188,15 @@ "ObservabilityAIAssistantScreenContextRequest", ", ", "ObservabilityAIAssistantScreenContextRequest", - ", unknown>>; }>; }>]>, ", + ", unknown>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>]>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -5033,7 +5220,15 @@ "StringC", "; connectorId: ", "StringC", - "; }>; }>, ", + "; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -5091,7 +5286,15 @@ "PartialC", "<{ parameters: ", "AnyC", - "; }>]>>; }>, ", + "; }>]>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>, ", "PartialC", "<{ functionCall: ", "StringC", @@ -5652,7 +5855,7 @@ "RecalledEntry", "[]; }, ", "ObservabilityAIAssistantRouteCreateOptions", - ">; \"GET /internal/observability_ai_assistant/functions\": ", + ">; \"GET /internal/observability_ai_assistant/{scope}/functions\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -5660,7 +5863,19 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /internal/observability_ai_assistant/functions\", undefined, ", + "<\"GET /internal/observability_ai_assistant/{scope}/functions\", ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", { functionDefinitions: ", { @@ -6048,7 +6263,15 @@ "ObservabilityAIAssistantScreenContextRequest", ", ", "ObservabilityAIAssistantScreenContextRequest", - ", unknown>>; }>; }>]>, ", + ", unknown>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>]>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -6072,7 +6295,15 @@ "StringC", "; connectorId: ", "StringC", - "; }>; }>, ", + "; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -6130,7 +6361,15 @@ "PartialC", "<{ parameters: ", "AnyC", - "; }>]>>; }>, ", + "; }>]>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>, ", "PartialC", "<{ functionCall: ", "StringC", @@ -6187,7 +6426,7 @@ "label": "ObservabilityAIAssistantAPIEndpoint", "description": [], "signature": [ - "\"POST /internal/observability_ai_assistant/chat\" | \"POST /internal/observability_ai_assistant/chat/recall\" | \"POST /internal/observability_ai_assistant/chat/complete\" | \"POST /api/observability_ai_assistant/chat/complete 2023-10-31\" | \"GET /internal/observability_ai_assistant/conversation/{conversationId}\" | \"POST /internal/observability_ai_assistant/conversations\" | \"POST /internal/observability_ai_assistant/conversation\" | \"PUT /internal/observability_ai_assistant/conversation/{conversationId}\" | \"PUT /internal/observability_ai_assistant/conversation/{conversationId}/title\" | \"DELETE /internal/observability_ai_assistant/conversation/{conversationId}\" | \"GET /internal/observability_ai_assistant/connectors\" | \"GET /internal/observability_ai_assistant/functions\" | \"POST /internal/observability_ai_assistant/functions/recall\" | \"POST /internal/observability_ai_assistant/functions/summarize\" | \"POST /internal/observability_ai_assistant/kb/setup\" | \"GET /internal/observability_ai_assistant/kb/status\" | \"GET /internal/observability_ai_assistant/kb/entries\" | \"PUT /internal/observability_ai_assistant/kb/user_instructions\" | \"GET /internal/observability_ai_assistant/kb/user_instructions\" | \"POST /internal/observability_ai_assistant/kb/entries/import\" | \"POST /internal/observability_ai_assistant/kb/entries/save\" | \"DELETE /internal/observability_ai_assistant/kb/entries/{entryId}\"" + "\"POST /internal/observability_ai_assistant/chat\" | \"POST /internal/observability_ai_assistant/chat/recall\" | \"POST /internal/observability_ai_assistant/chat/complete\" | \"POST /api/observability_ai_assistant/chat/complete 2023-10-31\" | \"GET /internal/observability_ai_assistant/conversation/{conversationId}\" | \"POST /internal/observability_ai_assistant/conversations\" | \"POST /internal/observability_ai_assistant/conversation\" | \"PUT /internal/observability_ai_assistant/conversation/{conversationId}\" | \"PUT /internal/observability_ai_assistant/conversation/{conversationId}/title\" | \"DELETE /internal/observability_ai_assistant/conversation/{conversationId}\" | \"GET /internal/observability_ai_assistant/connectors\" | \"GET /internal/observability_ai_assistant/{scope}/functions\" | \"POST /internal/observability_ai_assistant/functions/recall\" | \"POST /internal/observability_ai_assistant/functions/summarize\" | \"POST /internal/observability_ai_assistant/kb/setup\" | \"GET /internal/observability_ai_assistant/kb/status\" | \"GET /internal/observability_ai_assistant/kb/entries\" | \"PUT /internal/observability_ai_assistant/kb/user_instructions\" | \"GET /internal/observability_ai_assistant/kb/user_instructions\" | \"POST /internal/observability_ai_assistant/kb/entries/import\" | \"POST /internal/observability_ai_assistant/kb/entries/save\" | \"DELETE /internal/observability_ai_assistant/kb/entries/{entryId}\"" ], "path": "x-pack/plugins/observability_solution/observability_ai_assistant/public/api/index.ts", "deprecated": false, @@ -6598,7 +6837,9 @@ "label": "props", "description": [], "signature": [ - "{ connectorId?: string | undefined; service: ", + "{ scope: ", + "AssistantScope", + "; connectorId?: string | undefined; service: ", { "pluginId": "observabilityAIAssistant", "scope": "public", @@ -6855,7 +7096,7 @@ "label": "aiAssistantLogsIndexPattern", "description": [], "signature": [ - "\"observability:aiAssistantLogsIndexPattern\"" + "\"observability:logSources\"" ], "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/ui_settings/settings_keys.ts", "deprecated": false, @@ -7212,7 +7453,7 @@ "RecalledEntry", "[]; }, ", "ObservabilityAIAssistantRouteCreateOptions", - ">; \"GET /internal/observability_ai_assistant/functions\": ", + ">; \"GET /internal/observability_ai_assistant/{scope}/functions\": ", { "pluginId": "@kbn/server-route-repository-utils", "scope": "common", @@ -7220,7 +7461,19 @@ "section": "def-common.ServerRoute", "text": "ServerRoute" }, - "<\"GET /internal/observability_ai_assistant/functions\", undefined, ", + "<\"GET /internal/observability_ai_assistant/{scope}/functions\", ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", { functionDefinitions: ", { @@ -7608,7 +7861,15 @@ "ObservabilityAIAssistantScreenContextRequest", ", ", "ObservabilityAIAssistantScreenContextRequest", - ", unknown>>; }>; }>]>, ", + ", unknown>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>]>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -7632,7 +7893,15 @@ "StringC", "; connectorId: ", "StringC", - "; }>; }>, ", + "; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>; }>, ", "ObservabilityAIAssistantRouteHandlerResources", ", ", "Readable", @@ -7690,7 +7959,15 @@ "PartialC", "<{ parameters: ", "AnyC", - "; }>]>>; }>, ", + "; }>]>>; scope: ", + "UnionC", + "<[", + "LiteralC", + "<\"observability\">, ", + "LiteralC", + "<\"search\">, ", + "LiteralC", + "<\"all\">]>; }>, ", "PartialC", "<{ functionCall: ", "StringC", @@ -8544,6 +8821,21 @@ "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/functions/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "observabilityAIAssistant", + "id": "def-common.FunctionDefinition.scopes", + "type": "Array", + "tags": [], + "label": "scopes", + "description": [], + "signature": [ + "AssistantScope", + "[] | undefined" + ], + "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/functions/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -8871,7 +9163,7 @@ "label": "aiAssistantLogsIndexPattern", "description": [], "signature": [ - "\"observability:aiAssistantLogsIndexPattern\"" + "\"observability:logSources\"" ], "path": "x-pack/plugins/observability_solution/observability_ai_assistant/common/ui_settings/settings_keys.ts", "deprecated": false, diff --git a/api_docs/observability_a_i_assistant.mdx b/api_docs/observability_a_i_assistant.mdx index 8df0c80b4f7b3..6d25526cc86ef 100644 --- a/api_docs/observability_a_i_assistant.mdx +++ b/api_docs/observability_a_i_assistant.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observabilityAIAssistant title: "observabilityAIAssistant" image: https://source.unsplash.com/400x175/?github description: API docs for the observabilityAIAssistant plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityAIAssistant'] --- import observabilityAIAssistantObj from './observability_a_i_assistant.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/obs-ai-assistant](https://github.com/orgs/elastic/teams/obs-ai | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 286 | 1 | 284 | 27 | +| 293 | 1 | 291 | 28 | ## Client diff --git a/api_docs/observability_a_i_assistant_app.mdx b/api_docs/observability_a_i_assistant_app.mdx index bbf024f9241f2..2ce562381b219 100644 --- a/api_docs/observability_a_i_assistant_app.mdx +++ b/api_docs/observability_a_i_assistant_app.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observabilityAIAssistantApp title: "observabilityAIAssistantApp" image: https://source.unsplash.com/400x175/?github description: API docs for the observabilityAIAssistantApp plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityAIAssistantApp'] --- import observabilityAIAssistantAppObj from './observability_a_i_assistant_app.devdocs.json'; diff --git a/api_docs/observability_ai_assistant_management.mdx b/api_docs/observability_ai_assistant_management.mdx index a1f56e774a6c1..8270811c74e7e 100644 --- a/api_docs/observability_ai_assistant_management.mdx +++ b/api_docs/observability_ai_assistant_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observabilityAiAssistantManagement title: "observabilityAiAssistantManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the observabilityAiAssistantManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityAiAssistantManagement'] --- import observabilityAiAssistantManagementObj from './observability_ai_assistant_management.devdocs.json'; diff --git a/api_docs/observability_logs_explorer.mdx b/api_docs/observability_logs_explorer.mdx index f4e66e35942ae..b2b0da30051e8 100644 --- a/api_docs/observability_logs_explorer.mdx +++ b/api_docs/observability_logs_explorer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observabilityLogsExplorer title: "observabilityLogsExplorer" image: https://source.unsplash.com/400x175/?github description: API docs for the observabilityLogsExplorer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityLogsExplorer'] --- import observabilityLogsExplorerObj from './observability_logs_explorer.devdocs.json'; diff --git a/api_docs/observability_onboarding.mdx b/api_docs/observability_onboarding.mdx index d7f711fa592da..8172e97a40b95 100644 --- a/api_docs/observability_onboarding.mdx +++ b/api_docs/observability_onboarding.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observabilityOnboarding title: "observabilityOnboarding" image: https://source.unsplash.com/400x175/?github description: API docs for the observabilityOnboarding plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityOnboarding'] --- import observabilityOnboardingObj from './observability_onboarding.devdocs.json'; diff --git a/api_docs/observability_shared.devdocs.json b/api_docs/observability_shared.devdocs.json index df684914c0f7b..3f8a9696ceff3 100644 --- a/api_docs/observability_shared.devdocs.json +++ b/api_docs/observability_shared.devdocs.json @@ -4355,6 +4355,106 @@ ], "initialIsOpen": false }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocatorDefinition", + "type": "Class", + "tags": [], + "label": "ServiceEntityLocatorDefinition", + "description": [], + "signature": [ + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.ServiceEntityLocatorDefinition", + "text": "ServiceEntityLocatorDefinition" + }, + " implements ", + { + "pluginId": "share", + "scope": "common", + "docId": "kibSharePluginApi", + "section": "def-common.LocatorDefinition", + "text": "LocatorDefinition" + }, + "<", + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.ServiceEntityLocatorParams", + "text": "ServiceEntityLocatorParams" + }, + ">" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocatorDefinition.id", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "\"SERVICE_ENTITY_LOCATOR\"" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocatorDefinition.getLocation", + "type": "Function", + "tags": [], + "label": "getLocation", + "description": [], + "signature": [ + "({ serviceName }: ", + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.ServiceEntityLocatorParams", + "text": "ServiceEntityLocatorParams" + }, + ") => Promise<{ app: string; path: string; state: {}; }>" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocatorDefinition.getLocation.$1", + "type": "Object", + "tags": [], + "label": "{ serviceName }", + "description": [], + "signature": [ + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.ServiceEntityLocatorParams", + "text": "ServiceEntityLocatorParams" + } + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, { "parentPluginId": "observabilityShared", "id": "def-common.ServiceOverviewLocatorDefinition", @@ -4754,6 +4854,106 @@ } ], "initialIsOpen": false + }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocatorDefinition", + "type": "Class", + "tags": [], + "label": "TransactionDetailsByTraceIdLocatorDefinition", + "description": [], + "signature": [ + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.TransactionDetailsByTraceIdLocatorDefinition", + "text": "TransactionDetailsByTraceIdLocatorDefinition" + }, + " implements ", + { + "pluginId": "share", + "scope": "common", + "docId": "kibSharePluginApi", + "section": "def-common.LocatorDefinition", + "text": "LocatorDefinition" + }, + "<", + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.TransactionDetailsByTraceIdLocatorParams", + "text": "TransactionDetailsByTraceIdLocatorParams" + }, + ">" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocatorDefinition.id", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "\"TRANSACTION_DETAILS_BY_TRACE_ID_LOCATOR\"" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocatorDefinition.getLocation", + "type": "Function", + "tags": [], + "label": "getLocation", + "description": [], + "signature": [ + "({ traceId }: ", + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.TransactionDetailsByTraceIdLocatorParams", + "text": "TransactionDetailsByTraceIdLocatorParams" + }, + ") => Promise<{ app: string; path: string; state: {}; }>" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocatorDefinition.getLocation.$1", + "type": "Object", + "tags": [], + "label": "{ traceId }", + "description": [], + "signature": [ + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.TransactionDetailsByTraceIdLocatorParams", + "text": "TransactionDetailsByTraceIdLocatorParams" + } + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false } ], "functions": [ @@ -5585,6 +5785,48 @@ "children": [], "initialIsOpen": false }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocatorParams", + "type": "Interface", + "tags": [], + "label": "ServiceEntityLocatorParams", + "description": [], + "signature": [ + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.ServiceEntityLocatorParams", + "text": "ServiceEntityLocatorParams" + }, + " extends ", + { + "pluginId": "@kbn/utility-types", + "scope": "common", + "docId": "kibKbnUtilityTypesPluginApi", + "section": "def-common.SerializableRecord", + "text": "SerializableRecord" + } + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocatorParams.serviceName", + "type": "string", + "tags": [], + "label": "serviceName", + "description": [], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, { "parentPluginId": "observabilityShared", "id": "def-common.ServiceOverviewParams", @@ -5902,6 +6144,48 @@ } ], "initialIsOpen": false + }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocatorParams", + "type": "Interface", + "tags": [], + "label": "TransactionDetailsByTraceIdLocatorParams", + "description": [], + "signature": [ + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.TransactionDetailsByTraceIdLocatorParams", + "text": "TransactionDetailsByTraceIdLocatorParams" + }, + " extends ", + { + "pluginId": "@kbn/utility-types", + "scope": "common", + "docId": "kibKbnUtilityTypesPluginApi", + "section": "def-common.SerializableRecord", + "text": "SerializableRecord" + } + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocatorParams.traceId", + "type": "string", + "tags": [], + "label": "traceId", + "description": [], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false } ], "enums": [ @@ -7326,6 +7610,21 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.SERVICE_ENTITY_LOCATOR", + "type": "string", + "tags": [], + "label": "SERVICE_ENTITY_LOCATOR", + "description": [], + "signature": [ + "\"SERVICE_ENTITY_LOCATOR\"" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "observabilityShared", "id": "def-common.SERVICE_ENVIRONMENT", @@ -7476,6 +7775,36 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.ServiceEntityLocator", + "type": "Type", + "tags": [], + "label": "ServiceEntityLocator", + "description": [], + "signature": [ + { + "pluginId": "share", + "scope": "common", + "docId": "kibSharePluginApi", + "section": "def-common.LocatorPublic", + "text": "LocatorPublic" + }, + "<", + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.ServiceEntityLocatorParams", + "text": "ServiceEntityLocatorParams" + }, + ">" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/service_entity_locator.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "observabilityShared", "id": "def-common.ServiceOverviewLocator", @@ -7908,6 +8237,21 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.TRANSACTION_DETAILS_BY_TRACE_ID_LOCATOR", + "type": "string", + "tags": [], + "label": "TRANSACTION_DETAILS_BY_TRACE_ID_LOCATOR", + "description": [], + "signature": [ + "\"TRANSACTION_DETAILS_BY_TRACE_ID_LOCATOR\"" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "observabilityShared", "id": "def-common.TRANSACTION_DOM_INTERACTIVE", @@ -8118,6 +8462,36 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "observabilityShared", + "id": "def-common.TransactionDetailsByTraceIdLocator", + "type": "Type", + "tags": [], + "label": "TransactionDetailsByTraceIdLocator", + "description": [], + "signature": [ + { + "pluginId": "share", + "scope": "common", + "docId": "kibSharePluginApi", + "section": "def-common.LocatorPublic", + "text": "LocatorPublic" + }, + "<", + { + "pluginId": "observabilityShared", + "scope": "common", + "docId": "kibObservabilitySharedPluginApi", + "section": "def-common.TransactionDetailsByTraceIdLocatorParams", + "text": "TransactionDetailsByTraceIdLocatorParams" + }, + ">" + ], + "path": "x-pack/plugins/observability_solution/observability_shared/common/locators/apm/transaction_details_by_trace_id_locator.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "observabilityShared", "id": "def-common.URL_FULL", diff --git a/api_docs/observability_shared.mdx b/api_docs/observability_shared.mdx index 92deb6b8fc266..0d7b1d98ddd86 100644 --- a/api_docs/observability_shared.mdx +++ b/api_docs/observability_shared.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/observabilityShared title: "observabilityShared" image: https://source.unsplash.com/400x175/?github description: API docs for the observabilityShared plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityShared'] --- import observabilitySharedObj from './observability_shared.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/observability-ui](https://github.com/orgs/elastic/teams/observ | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 458 | 1 | 453 | 19 | +| 474 | 1 | 469 | 19 | ## Client diff --git a/api_docs/osquery.mdx b/api_docs/osquery.mdx index 51906c837cfab..5e99fbf1f8c2b 100644 --- a/api_docs/osquery.mdx +++ b/api_docs/osquery.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/osquery title: "osquery" image: https://source.unsplash.com/400x175/?github description: API docs for the osquery plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'osquery'] --- import osqueryObj from './osquery.devdocs.json'; diff --git a/api_docs/painless_lab.mdx b/api_docs/painless_lab.mdx index e50c55dada803..71c5f2af71600 100644 --- a/api_docs/painless_lab.mdx +++ b/api_docs/painless_lab.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/painlessLab title: "painlessLab" image: https://source.unsplash.com/400x175/?github description: API docs for the painlessLab plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'painlessLab'] --- import painlessLabObj from './painless_lab.devdocs.json'; diff --git a/api_docs/plugin_directory.mdx b/api_docs/plugin_directory.mdx index 39add68e0e4c7..dac5bf7072d72 100644 --- a/api_docs/plugin_directory.mdx +++ b/api_docs/plugin_directory.mdx @@ -7,7 +7,7 @@ id: kibDevDocsPluginDirectory slug: /kibana-dev-docs/api-meta/plugin-api-directory title: Directory description: Directory of public APIs available through plugins or packages. -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -15,13 +15,13 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | Count | Plugins or Packages with a
public API | Number of teams | |--------------|----------|------------------------| -| 854 | 728 | 46 | +| 860 | 733 | 45 | ### Public API health stats | API Count | Any Count | Missing comments | Missing exports | |--------------|----------|-----------------|--------| -| 53130 | 245 | 39936 | 1978 | +| 53181 | 245 | 39877 | 1963 | ## Plugin Directory @@ -39,21 +39,21 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds Canvas application to Kibana | 9 | 0 | 8 | 3 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | The Case management system in Kibana | 115 | 0 | 95 | 28 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 268 | 2 | 253 | 10 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 84 | 0 | 21 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 84 | 0 | 21 | 1 | | cloudChat | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | Chat available on Elastic Cloud deployments for quicker assistance. | 0 | 0 | 0 | 0 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | Static migration page where self-managed users can see text/copy about migrating to Elastic Cloud | 8 | 0 | 8 | 1 | | | [@elastic/kibana-cloud-security-posture](https://github.com/orgs/elastic/teams/kibana-cloud-security-posture) | Defend for containers (D4C) | 52 | 0 | 43 | 2 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | Provides the necessary APIs to implement A/B testing scenarios, fetching the variations in configuration and reporting back metrics to track conversion rates of the experiments. | 12 | 0 | 0 | 0 | +| cloudExperiments | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | Provides the necessary APIs to implement A/B testing scenarios, fetching the variations in configuration and reporting back metrics to track conversion rates of the experiments. | 0 | 0 | 0 | 0 | | cloudFullStory | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | When Kibana runs on Elastic Cloud, this plugin registers FullStory as a shipper for telemetry. | 0 | 0 | 0 | 0 | | cloudLinks | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | Adds the links to the Elastic Cloud console | 0 | 0 | 0 | 0 | | | [@elastic/kibana-cloud-security-posture](https://github.com/orgs/elastic/teams/kibana-cloud-security-posture) | The cloud security posture plugin | 13 | 0 | 2 | 2 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 39 | 0 | 30 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Content management app | 149 | 0 | 125 | 6 | -| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | The Controls Plugin contains embeddable components intended to create a simple query interface for end users, and a powerful editing suite that allows dashboard authors to build controls | 259 | 0 | 254 | 30 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | The Controls Plugin contains embeddable components intended to create a simple query interface for end users, and a powerful editing suite that allows dashboard authors to build controls | 134 | 0 | 130 | 14 | | crossClusterReplication | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 0 | 0 | 0 | 0 | | customBranding | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Enables customization of Kibana | 0 | 0 | 0 | 0 | | | [@elastic/fleet](https://github.com/orgs/elastic/teams/fleet) | Add custom data integrations so they can be displayed in the Fleet integrations app | 271 | 0 | 252 | 1 | -| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds the Dashboard app to Kibana | 129 | 0 | 123 | 12 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds the Dashboard app to Kibana | 128 | 0 | 123 | 13 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 54 | 0 | 51 | 0 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | Data services are useful for searching and querying data from Elasticsearch. Helpful utilities include: a re-usable react query bar, KQL autocomplete, async search, Data Views (Index Patterns) and field formatters. | 3209 | 31 | 2594 | 24 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | - | 5 | 0 | 5 | 0 | @@ -68,7 +68,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 35 | 0 | 33 | 2 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | A stateful layer to register shared features and provide an access point to discover without a direct dependency | 16 | 0 | 15 | 2 | | | [@elastic/security-threat-hunting-explore](https://github.com/orgs/elastic/teams/security-threat-hunting-explore) | APIs used to assess the quality of data in Elasticsearch indexes | 2 | 0 | 0 | 0 | -| | [@elastic/security-generative-ai](https://github.com/orgs/elastic/teams/security-generative-ai) | Server APIs for the Elastic AI Assistant | 49 | 0 | 35 | 2 | +| | [@elastic/security-generative-ai](https://github.com/orgs/elastic/teams/security-generative-ai) | Server APIs for the Elastic AI Assistant | 53 | 0 | 38 | 2 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds embeddables service to Kibana | 575 | 1 | 465 | 9 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Extends embeddable plugin with more functionality | 19 | 0 | 19 | 2 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | This plugin provides encryption and decryption utilities for saved objects containing sensitive information. | 53 | 0 | 46 | 1 | @@ -76,7 +76,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/obs-entities](https://github.com/orgs/elastic/teams/obs-entities) | - | 2 | 0 | 2 | 0 | | | [@elastic/obs-entities](https://github.com/orgs/elastic/teams/obs-entities) | Entity manager plugin for entity assets (inventory, topology, etc) | 20 | 0 | 20 | 3 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 99 | 3 | 97 | 3 | -| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 24 | 0 | 9 | 0 | +| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 25 | 0 | 9 | 0 | | | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 2 | 0 | 2 | 0 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | The Event Annotation service contains expressions for event annotations | 201 | 0 | 201 | 6 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | The listing page for event annotations. | 15 | 0 | 15 | 0 | @@ -99,7 +99,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 255 | 0 | 105 | 2 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | Index pattern fields and ambiguous values formatters | 292 | 5 | 253 | 3 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | Exposes services for async usage and search of fields metadata. | 42 | 0 | 42 | 7 | -| | [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) | The file upload plugin contains components and services for uploading a file, analyzing its data, and then importing the data into an Elasticsearch index. Supported file types include CSV, TSV, newline-delimited JSON and GeoJSON. | 88 | 0 | 88 | 8 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | The file upload plugin contains components and services for uploading a file, analyzing its data, and then importing the data into an Elasticsearch index. Supported file types include CSV, TSV, newline-delimited JSON and GeoJSON. | 88 | 0 | 88 | 8 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | File upload, download, sharing, and serving over HTTP implementation in Kibana. | 240 | 0 | 24 | 9 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Simple UI for managing files in Kibana | 3 | 0 | 3 | 0 | | | [@elastic/fleet](https://github.com/orgs/elastic/teams/fleet) | - | 1361 | 5 | 1238 | 74 | @@ -113,13 +113,13 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 149 | 0 | 111 | 1 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Image embeddable | 1 | 0 | 1 | 0 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 4 | 0 | 4 | 0 | -| | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 238 | 0 | 233 | 1 | -| | [@elastic/appex-ai-infra](https://github.com/orgs/elastic/teams/appex-ai-infra) | - | 49 | 0 | 44 | 12 | +| | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 243 | 0 | 238 | 1 | +| | [@elastic/appex-ai-infra](https://github.com/orgs/elastic/teams/appex-ai-infra) | - | 49 | 0 | 44 | 15 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | This plugin visualizes data from Filebeat and Metricbeat, and integrates with other Observability solutions | 23 | 0 | 23 | 5 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 4 | 0 | 4 | 0 | | inputControlVis | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds Input Control visualization to Kibana | 0 | 0 | 0 | 0 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 127 | 2 | 100 | 4 | -| | [@elastic/security-scalability](https://github.com/orgs/elastic/teams/security-scalability) | Plugin implementing the Integration Assistant API and UI | 54 | 0 | 46 | 3 | +| | [@elastic/security-scalability](https://github.com/orgs/elastic/teams/security-scalability) | Plugin implementing the Integration Assistant API and UI | 59 | 0 | 49 | 4 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | This plugin provides UI and APIs for the interactive setup mode. | 28 | 0 | 18 | 0 | | | [@elastic/obs-ux-infra_services-team](https://github.com/orgs/elastic/teams/obs-ux-infra_services-team) | - | 5 | 0 | 5 | 3 | | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 43 | 0 | 43 | 4 | @@ -135,13 +135,13 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 117 | 0 | 42 | 10 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | A dashboard panel for creating links to dashboards or external links. | 5 | 0 | 5 | 0 | | | [@elastic/security-detection-engine](https://github.com/orgs/elastic/teams/security-detection-engine) | - | 226 | 0 | 97 | 52 | -| | [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | - | 13 | 0 | 11 | 7 | +| | [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | - | 15 | 0 | 13 | 7 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | This plugin provides a LogsExplorer component using the Discover customization framework, offering several affordances specifically designed for log consumption. | 120 | 4 | 120 | 23 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | Exposes the shared components and APIs to access and visualize logs. | 310 | 0 | 281 | 32 | | logstash | [@elastic/logstash](https://github.com/orgs/elastic/teams/logstash) | - | 0 | 0 | 0 | 0 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 44 | 0 | 44 | 7 | -| | [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) | - | 209 | 0 | 205 | 28 | -| | [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) | - | 60 | 0 | 60 | 0 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 209 | 0 | 205 | 28 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 60 | 0 | 60 | 0 | | | [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | Exposes utilities for accessing metrics data | 137 | 8 | 137 | 5 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | This plugin provides access to the machine learning features provided by Elastic. | 154 | 3 | 67 | 102 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 2 | 0 | 2 | 0 | @@ -151,13 +151,13 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 17 | 0 | 17 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 3 | 0 | 3 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 2 | 0 | 2 | 1 | -| | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 705 | 2 | 698 | 22 | -| | [@elastic/obs-ai-assistant](https://github.com/orgs/elastic/teams/obs-ai-assistant) | - | 286 | 1 | 284 | 27 | +| | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 710 | 2 | 703 | 22 | +| | [@elastic/obs-ai-assistant](https://github.com/orgs/elastic/teams/obs-ai-assistant) | - | 293 | 1 | 291 | 28 | | | [@elastic/obs-ai-assistant](https://github.com/orgs/elastic/teams/obs-ai-assistant) | - | 4 | 0 | 4 | 0 | | | [@elastic/obs-ai-assistant](https://github.com/orgs/elastic/teams/obs-ai-assistant) | - | 2 | 0 | 2 | 0 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | This plugin exposes and registers observability log consumption features. | 19 | 0 | 19 | 1 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | - | 23 | 0 | 23 | 0 | -| | [@elastic/observability-ui](https://github.com/orgs/elastic/teams/observability-ui) | - | 458 | 1 | 453 | 19 | +| | [@elastic/observability-ui](https://github.com/orgs/elastic/teams/observability-ui) | - | 474 | 1 | 469 | 19 | | | [@elastic/security-defend-workflows](https://github.com/orgs/elastic/teams/security-defend-workflows) | - | 23 | 0 | 23 | 7 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 2 | 0 | 2 | 0 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds a standardized Presentation panel which allows any forward ref component to interface with various Kibana systems. | 11 | 0 | 11 | 4 | @@ -183,10 +183,10 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 11 | 0 | 11 | 0 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 10 | 0 | 6 | 1 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | Plugin to provide access to and rendering of python notebooks for use in the persistent developer console. | 10 | 0 | 10 | 1 | -| | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 17 | 0 | 11 | 1 | +| | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 21 | 0 | 15 | 1 | | searchprofiler | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 0 | 0 | 0 | 0 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | This plugin provides authentication and authorization features, and exposes functionality to understand the capabilities of the currently authenticated user. | 448 | 0 | 231 | 0 | -| | [@elastic/security-solution](https://github.com/orgs/elastic/teams/security-solution) | - | 192 | 0 | 123 | 33 | +| | [@elastic/security-solution](https://github.com/orgs/elastic/teams/security-solution) | - | 193 | 0 | 124 | 34 | | | [@elastic/security-solution](https://github.com/orgs/elastic/teams/security-solution) | ESS customizations for Security Solution. | 6 | 0 | 6 | 0 | | | [@elastic/security-solution](https://github.com/orgs/elastic/teams/security-solution) | Serverless customizations for security. | 7 | 0 | 7 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | The core Serverless plugin, providing APIs to Serverless Project plugins. | 25 | 0 | 24 | 0 | @@ -196,7 +196,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Adds URL Service and sharing capabilities to Kibana | 121 | 0 | 60 | 12 | | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 59 | 0 | 59 | 1 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 22 | 1 | 22 | 1 | -| | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | This plugin provides the Spaces feature, which allows saved objects to be organized into meaningful categories. | 261 | 0 | 67 | 0 | +| | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | This plugin provides the Spaces feature, which allows saved objects to be organized into meaningful categories. | 262 | 0 | 67 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 25 | 0 | 25 | 3 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 10 | 0 | 10 | 0 | | synthetics | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | This plugin visualizes data from Synthetics and Heartbeat, and integrates with other Observability solutions. | 0 | 0 | 0 | 1 | @@ -316,7 +316,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 5 | 0 | 0 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 20 | 0 | 7 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 6 | 0 | 6 | 0 | -| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 207 | 0 | 100 | 0 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 207 | 0 | 101 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 3 | 0 | 3 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 6 | 0 | 1 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 8 | 0 | 8 | 0 | @@ -339,7 +339,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 4 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 22 | 0 | 13 | 1 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 38 | 1 | 34 | 0 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 117 | 0 | 56 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 118 | 0 | 56 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 43 | 0 | 38 | 3 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 13 | 1 | 13 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 4 | 1 | @@ -353,12 +353,18 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 5 | 0 | 5 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 9 | 0 | 2 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 4 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 29 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 9 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 38 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 11 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 6 | 0 | 0 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 116 | 4 | 37 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 17 | 0 | 17 | 2 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 16 | 0 | 16 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 9 | 0 | 4 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 10 | 1 | 10 | 0 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 16 | 0 | 13 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 17 | 0 | 0 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 22 | 0 | 7 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 9 | 0 | 9 | 3 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 7 | 0 | 7 | 0 | @@ -375,9 +381,9 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 4 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 2 | 0 | 2 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 4 | 0 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 36 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 38 | 0 | 0 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 5 | 0 | 5 | 0 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 40 | 0 | 0 | 0 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 42 | 0 | 0 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 9 | 0 | 9 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 4 | 0 | 4 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 41 | 0 | 34 | 0 | @@ -510,17 +516,17 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 269 | 1 | 209 | 15 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 27 | 0 | 27 | 1 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 2 | 0 | 1 | 0 | -| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 177 | 1 | 139 | 31 | +| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 177 | 1 | 139 | 20 | | | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 73 | 0 | 69 | 0 | -| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 197 | 0 | 185 | 10 | +| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 199 | 0 | 187 | 12 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 40 | 0 | 40 | 0 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 52 | 0 | 52 | 1 | -| | [@elastic/security-threat-hunting-investigations](https://github.com/orgs/elastic/teams/security-threat-hunting-investigations) | - | 43 | 0 | 17 | 2 | +| | [@elastic/security-threat-hunting-investigations](https://github.com/orgs/elastic/teams/security-threat-hunting-investigations) | - | 44 | 0 | 17 | 3 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 22 | 0 | 18 | 0 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 49 | 0 | 40 | 2 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 2 | 0 | 0 | 0 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | - | 3 | 0 | 3 | 0 | -| | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 102 | 0 | 77 | 1 | +| | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 108 | 0 | 83 | 1 | | | [@elastic/appex-qa](https://github.com/orgs/elastic/teams/appex-qa) | - | 560 | 6 | 520 | 7 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 1 | 0 | 0 | 0 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 1 | 0 | 1 | 0 | @@ -540,7 +546,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 7 | 1 | 7 | 1 | | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 9 | 0 | 9 | 0 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 52 | 12 | 43 | 0 | -| | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 59 | 0 | 59 | 0 | +| | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 73 | 0 | 73 | 0 | | | [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | - | 60 | 0 | 60 | 4 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 44 | 0 | 44 | 0 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 13 | 0 | 13 | 0 | @@ -548,7 +554,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 41 | 2 | 35 | 0 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 9 | 0 | 7 | 0 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 108 | 0 | 107 | 0 | -| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 7 | 0 | 5 | 0 | +| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 11 | 0 | 7 | 0 | | | [@elastic/obs-ux-infra_services-team](https://github.com/orgs/elastic/teams/obs-ux-infra_services-team) | - | 193 | 0 | 190 | 6 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 172 | 0 | 172 | 1 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 28 | 0 | 2 | 2 | @@ -567,8 +573,8 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 88 | 0 | 10 | 0 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 56 | 0 | 6 | 0 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 2 | 0 | 0 | 0 | -| | [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) | - | 592 | 1 | 1 | 0 | -| | [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) | - | 2 | 0 | 2 | 0 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 592 | 1 | 1 | 0 | +| | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 2 | 0 | 2 | 0 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 97 | 1 | 0 | 0 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 209 | 3 | 1 | 0 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 8 | 0 | 8 | 0 | @@ -596,7 +602,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 18 | 0 | 18 | 0 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 42 | 1 | 35 | 1 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 22 | 0 | 16 | 0 | -| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 121 | 0 | 121 | 3 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 123 | 0 | 123 | 3 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 55 | 1 | 50 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 2 | 0 | 2 | 0 | | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 10 | 0 | 10 | 2 | @@ -654,7 +660,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 76 | 0 | 76 | 0 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 3929 | 0 | 3929 | 0 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 18 | 1 | 17 | 1 | -| | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 25 | 0 | 25 | 0 | +| | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 30 | 0 | 30 | 1 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 20 | 0 | 18 | 1 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 50 | 0 | 25 | 0 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 66 | 0 | 63 | 0 | @@ -756,7 +762,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 37 | 1 | 19 | 0 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 131 | 3 | 98 | 2 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 2 | 0 | 1 | 0 | -| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 28 | 0 | 12 | 0 | +| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 29 | 0 | 12 | 0 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | - | 8 | 0 | 8 | 0 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 74 | 0 | 55 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 15 | 0 | 15 | 0 | diff --git a/api_docs/presentation_panel.mdx b/api_docs/presentation_panel.mdx index 646744ab4d1ec..d2b7230886f5d 100644 --- a/api_docs/presentation_panel.mdx +++ b/api_docs/presentation_panel.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/presentationPanel title: "presentationPanel" image: https://source.unsplash.com/400x175/?github description: API docs for the presentationPanel plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'presentationPanel'] --- import presentationPanelObj from './presentation_panel.devdocs.json'; diff --git a/api_docs/presentation_util.mdx b/api_docs/presentation_util.mdx index 162fc6e74f476..67cc9a179b22d 100644 --- a/api_docs/presentation_util.mdx +++ b/api_docs/presentation_util.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/presentationUtil title: "presentationUtil" image: https://source.unsplash.com/400x175/?github description: API docs for the presentationUtil plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'presentationUtil'] --- import presentationUtilObj from './presentation_util.devdocs.json'; diff --git a/api_docs/profiling.mdx b/api_docs/profiling.mdx index 2fd0d31b6befe..a7794f056166a 100644 --- a/api_docs/profiling.mdx +++ b/api_docs/profiling.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/profiling title: "profiling" image: https://source.unsplash.com/400x175/?github description: API docs for the profiling plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'profiling'] --- import profilingObj from './profiling.devdocs.json'; diff --git a/api_docs/profiling_data_access.mdx b/api_docs/profiling_data_access.mdx index 4eb55274641b8..3d6e03ee2863a 100644 --- a/api_docs/profiling_data_access.mdx +++ b/api_docs/profiling_data_access.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/profilingDataAccess title: "profilingDataAccess" image: https://source.unsplash.com/400x175/?github description: API docs for the profilingDataAccess plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'profilingDataAccess'] --- import profilingDataAccessObj from './profiling_data_access.devdocs.json'; diff --git a/api_docs/remote_clusters.mdx b/api_docs/remote_clusters.mdx index e7b01d7ff7ffe..67d42e20b3b4f 100644 --- a/api_docs/remote_clusters.mdx +++ b/api_docs/remote_clusters.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/remoteClusters title: "remoteClusters" image: https://source.unsplash.com/400x175/?github description: API docs for the remoteClusters plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'remoteClusters'] --- import remoteClustersObj from './remote_clusters.devdocs.json'; diff --git a/api_docs/reporting.mdx b/api_docs/reporting.mdx index d9a7e189a17f6..77c3d4977db30 100644 --- a/api_docs/reporting.mdx +++ b/api_docs/reporting.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/reporting title: "reporting" image: https://source.unsplash.com/400x175/?github description: API docs for the reporting plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'reporting'] --- import reportingObj from './reporting.devdocs.json'; diff --git a/api_docs/rollup.mdx b/api_docs/rollup.mdx index 360f1614d991c..134c99c026dce 100644 --- a/api_docs/rollup.mdx +++ b/api_docs/rollup.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/rollup title: "rollup" image: https://source.unsplash.com/400x175/?github description: API docs for the rollup plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'rollup'] --- import rollupObj from './rollup.devdocs.json'; diff --git a/api_docs/rule_registry.mdx b/api_docs/rule_registry.mdx index c5cc8848d1971..7712d52205330 100644 --- a/api_docs/rule_registry.mdx +++ b/api_docs/rule_registry.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/ruleRegistry title: "ruleRegistry" image: https://source.unsplash.com/400x175/?github description: API docs for the ruleRegistry plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ruleRegistry'] --- import ruleRegistryObj from './rule_registry.devdocs.json'; diff --git a/api_docs/runtime_fields.mdx b/api_docs/runtime_fields.mdx index 460641f166d87..499311440a8d9 100644 --- a/api_docs/runtime_fields.mdx +++ b/api_docs/runtime_fields.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/runtimeFields title: "runtimeFields" image: https://source.unsplash.com/400x175/?github description: API docs for the runtimeFields plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'runtimeFields'] --- import runtimeFieldsObj from './runtime_fields.devdocs.json'; diff --git a/api_docs/saved_objects.mdx b/api_docs/saved_objects.mdx index 2572dc210c579..123244801f78b 100644 --- a/api_docs/saved_objects.mdx +++ b/api_docs/saved_objects.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/savedObjects title: "savedObjects" image: https://source.unsplash.com/400x175/?github description: API docs for the savedObjects plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'savedObjects'] --- import savedObjectsObj from './saved_objects.devdocs.json'; diff --git a/api_docs/saved_objects_finder.mdx b/api_docs/saved_objects_finder.mdx index 8a78de16d7341..ab63292004fa9 100644 --- a/api_docs/saved_objects_finder.mdx +++ b/api_docs/saved_objects_finder.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/savedObjectsFinder title: "savedObjectsFinder" image: https://source.unsplash.com/400x175/?github description: API docs for the savedObjectsFinder plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'savedObjectsFinder'] --- import savedObjectsFinderObj from './saved_objects_finder.devdocs.json'; diff --git a/api_docs/saved_objects_management.mdx b/api_docs/saved_objects_management.mdx index b789f43069fd5..2521d0192d84f 100644 --- a/api_docs/saved_objects_management.mdx +++ b/api_docs/saved_objects_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/savedObjectsManagement title: "savedObjectsManagement" image: https://source.unsplash.com/400x175/?github description: API docs for the savedObjectsManagement plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'savedObjectsManagement'] --- import savedObjectsManagementObj from './saved_objects_management.devdocs.json'; diff --git a/api_docs/saved_objects_tagging.mdx b/api_docs/saved_objects_tagging.mdx index e3ac8a9b1203d..6e23a8de2f200 100644 --- a/api_docs/saved_objects_tagging.mdx +++ b/api_docs/saved_objects_tagging.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/savedObjectsTagging title: "savedObjectsTagging" image: https://source.unsplash.com/400x175/?github description: API docs for the savedObjectsTagging plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'savedObjectsTagging'] --- import savedObjectsTaggingObj from './saved_objects_tagging.devdocs.json'; diff --git a/api_docs/saved_objects_tagging_oss.mdx b/api_docs/saved_objects_tagging_oss.mdx index 8887542976ce0..3ce9cb6625ae5 100644 --- a/api_docs/saved_objects_tagging_oss.mdx +++ b/api_docs/saved_objects_tagging_oss.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/savedObjectsTaggingOss title: "savedObjectsTaggingOss" image: https://source.unsplash.com/400x175/?github description: API docs for the savedObjectsTaggingOss plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'savedObjectsTaggingOss'] --- import savedObjectsTaggingOssObj from './saved_objects_tagging_oss.devdocs.json'; diff --git a/api_docs/saved_search.mdx b/api_docs/saved_search.mdx index 408fe1666f918..9fadf64fbe533 100644 --- a/api_docs/saved_search.mdx +++ b/api_docs/saved_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/savedSearch title: "savedSearch" image: https://source.unsplash.com/400x175/?github description: API docs for the savedSearch plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'savedSearch'] --- import savedSearchObj from './saved_search.devdocs.json'; diff --git a/api_docs/screenshot_mode.mdx b/api_docs/screenshot_mode.mdx index aa29491df81f8..344b2e46c49ed 100644 --- a/api_docs/screenshot_mode.mdx +++ b/api_docs/screenshot_mode.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/screenshotMode title: "screenshotMode" image: https://source.unsplash.com/400x175/?github description: API docs for the screenshotMode plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'screenshotMode'] --- import screenshotModeObj from './screenshot_mode.devdocs.json'; diff --git a/api_docs/screenshotting.mdx b/api_docs/screenshotting.mdx index 986f4f6fb8ca0..d35db0377a4e2 100644 --- a/api_docs/screenshotting.mdx +++ b/api_docs/screenshotting.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/screenshotting title: "screenshotting" image: https://source.unsplash.com/400x175/?github description: API docs for the screenshotting plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'screenshotting'] --- import screenshottingObj from './screenshotting.devdocs.json'; diff --git a/api_docs/search_assistant.mdx b/api_docs/search_assistant.mdx index d204567b135de..f1c8ac2b05a8b 100644 --- a/api_docs/search_assistant.mdx +++ b/api_docs/search_assistant.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchAssistant title: "searchAssistant" image: https://source.unsplash.com/400x175/?github description: API docs for the searchAssistant plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchAssistant'] --- import searchAssistantObj from './search_assistant.devdocs.json'; diff --git a/api_docs/search_connectors.mdx b/api_docs/search_connectors.mdx index 8ecce79d63de4..4ef0f25d53493 100644 --- a/api_docs/search_connectors.mdx +++ b/api_docs/search_connectors.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchConnectors title: "searchConnectors" image: https://source.unsplash.com/400x175/?github description: API docs for the searchConnectors plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchConnectors'] --- import searchConnectorsObj from './search_connectors.devdocs.json'; diff --git a/api_docs/search_homepage.mdx b/api_docs/search_homepage.mdx index e984afce0f94a..73adf90280461 100644 --- a/api_docs/search_homepage.mdx +++ b/api_docs/search_homepage.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchHomepage title: "searchHomepage" image: https://source.unsplash.com/400x175/?github description: API docs for the searchHomepage plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchHomepage'] --- import searchHomepageObj from './search_homepage.devdocs.json'; diff --git a/api_docs/search_indices.mdx b/api_docs/search_indices.mdx index f9054f79c1e13..6d7438e0d5156 100644 --- a/api_docs/search_indices.mdx +++ b/api_docs/search_indices.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchIndices title: "searchIndices" image: https://source.unsplash.com/400x175/?github description: API docs for the searchIndices plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchIndices'] --- import searchIndicesObj from './search_indices.devdocs.json'; diff --git a/api_docs/search_inference_endpoints.mdx b/api_docs/search_inference_endpoints.mdx index 2dff31fcd1cf8..0f7af49e73f64 100644 --- a/api_docs/search_inference_endpoints.mdx +++ b/api_docs/search_inference_endpoints.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchInferenceEndpoints title: "searchInferenceEndpoints" image: https://source.unsplash.com/400x175/?github description: API docs for the searchInferenceEndpoints plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchInferenceEndpoints'] --- import searchInferenceEndpointsObj from './search_inference_endpoints.devdocs.json'; diff --git a/api_docs/search_notebooks.mdx b/api_docs/search_notebooks.mdx index e2dc610985b9a..e8490c57c16ed 100644 --- a/api_docs/search_notebooks.mdx +++ b/api_docs/search_notebooks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchNotebooks title: "searchNotebooks" image: https://source.unsplash.com/400x175/?github description: API docs for the searchNotebooks plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchNotebooks'] --- import searchNotebooksObj from './search_notebooks.devdocs.json'; diff --git a/api_docs/search_playground.devdocs.json b/api_docs/search_playground.devdocs.json index e5f8ac16bd1a3..d72547a8ff2d6 100644 --- a/api_docs/search_playground.devdocs.json +++ b/api_docs/search_playground.devdocs.json @@ -277,6 +277,54 @@ "initialIsOpen": false } ], - "objects": [] + "objects": [ + { + "parentPluginId": "searchPlayground", + "id": "def-common.DEFAULT_PAGINATION", + "type": "Object", + "tags": [], + "label": "DEFAULT_PAGINATION", + "description": [], + "path": "x-pack/plugins/search_playground/common/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "searchPlayground", + "id": "def-common.DEFAULT_PAGINATION.from", + "type": "number", + "tags": [], + "label": "from", + "description": [], + "path": "x-pack/plugins/search_playground/common/index.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "searchPlayground", + "id": "def-common.DEFAULT_PAGINATION.size", + "type": "number", + "tags": [], + "label": "size", + "description": [], + "path": "x-pack/plugins/search_playground/common/index.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "searchPlayground", + "id": "def-common.DEFAULT_PAGINATION.total", + "type": "number", + "tags": [], + "label": "total", + "description": [], + "path": "x-pack/plugins/search_playground/common/index.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ] } } \ No newline at end of file diff --git a/api_docs/search_playground.mdx b/api_docs/search_playground.mdx index 9bbc096d212d1..b728de94b270d 100644 --- a/api_docs/search_playground.mdx +++ b/api_docs/search_playground.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/searchPlayground title: "searchPlayground" image: https://source.unsplash.com/400x175/?github description: API docs for the searchPlayground plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchPlayground'] --- import searchPlaygroundObj from './search_playground.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-ki | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 17 | 0 | 11 | 1 | +| 21 | 0 | 15 | 1 | ## Client @@ -41,6 +41,9 @@ Contact [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-ki ## Common +### Objects + + ### Consts, variables and types diff --git a/api_docs/security.devdocs.json b/api_docs/security.devdocs.json index 907b33cf37b97..5944ca9374215 100644 --- a/api_docs/security.devdocs.json +++ b/api_docs/security.devdocs.json @@ -5914,23 +5914,23 @@ }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts" + "path": "x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts" + "path": "x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/lib/auth/api_key/api_key.ts" + "path": "x-pack/plugins/entity_manager/server/lib/auth/api_key/api_key.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/enable.ts" + "path": "x-pack/plugins/entity_manager/server/routes/enablement/enable.ts" }, { "plugin": "entityManager", - "path": "x-pack/plugins/observability_solution/entity_manager/server/routes/enablement/disable.ts" + "path": "x-pack/plugins/entity_manager/server/routes/enablement/disable.ts" }, { "plugin": "serverlessSearch", diff --git a/api_docs/security.mdx b/api_docs/security.mdx index 550367e4ff248..c26359db873ac 100644 --- a/api_docs/security.mdx +++ b/api_docs/security.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/security title: "security" image: https://source.unsplash.com/400x175/?github description: API docs for the security plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'security'] --- import securityObj from './security.devdocs.json'; diff --git a/api_docs/security_solution.devdocs.json b/api_docs/security_solution.devdocs.json index 9d4957972ff47..fb27b8fa4661f 100644 --- a/api_docs/security_solution.devdocs.json +++ b/api_docs/security_solution.devdocs.json @@ -390,7 +390,7 @@ "label": "data", "description": [], "signature": [ - "({ id: string; type: \"eql\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"eql\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; tiebreaker_field?: string | undefined; timestamp_field?: string | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; event_category_override?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; } | { id: string; type: \"query\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; saved_id?: string | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; } | { id: string; type: \"saved_query\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; saved_id: string; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; query?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; } | { id: string; type: \"threshold\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threshold: { value: number; field: string | string[]; cardinality?: { value: number; field: string; }[] | undefined; }; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { duration: { value: number; unit: \"m\" | \"h\" | \"s\"; }; } | undefined; saved_id?: string | undefined; } | { id: string; type: \"threat_match\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; threat_query: string; threat_mapping: { entries: { value: string; type: \"mapping\"; field: string; }[]; }[]; threat_index: string[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; saved_id?: string | undefined; threat_filters?: unknown[] | undefined; threat_indicator_path?: string | undefined; threat_language?: \"kuery\" | \"lucene\" | undefined; concurrent_searches?: number | undefined; items_per_search?: number | undefined; } | { id: string; type: \"machine_learning\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; anomaly_threshold: number; machine_learning_job_id: string | string[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; } | { id: string; type: \"new_terms\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; new_terms_fields: string[]; history_window_start: string; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; } | { id: string; type: \"esql\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"esql\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; })[]" + "({ id: string; type: \"eql\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"eql\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; tiebreaker_field?: string | undefined; timestamp_field?: string | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; event_category_override?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; } | { id: string; type: \"query\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; saved_id?: string | undefined; } | { id: string; type: \"saved_query\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; saved_id: string; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; query?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; } | { id: string; type: \"threshold\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threshold: { value: number; field: string | string[]; cardinality?: { value: number; field: string; }[] | undefined; }; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { duration: { value: number; unit: \"m\" | \"h\" | \"s\"; }; } | undefined; saved_id?: string | undefined; } | { id: string; type: \"threat_match\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; threat_query: string; threat_mapping: { entries: { value: string; type: \"mapping\"; field: string; }[]; }[]; threat_index: string[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; saved_id?: string | undefined; threat_filters?: unknown[] | undefined; threat_indicator_path?: string | undefined; threat_language?: \"kuery\" | \"lucene\" | undefined; concurrent_searches?: number | undefined; items_per_search?: number | undefined; } | { id: string; type: \"machine_learning\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; anomaly_threshold: number; machine_learning_job_id: string | string[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; } | { id: string; type: \"new_terms\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"kuery\" | \"lucene\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; new_terms_fields: string[]; history_window_start: string; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; index?: string[] | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; filters?: unknown[] | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; data_view_id?: string | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; } | { id: string; type: \"esql\"; version: number; name: string; actions: { params: {} & { [k: string]: unknown; }; id: string; action_type_id: string; frequency?: { throttle: string | null; notifyWhen: \"onActionGroupChange\" | \"onActiveAlert\" | \"onThrottleInterval\"; summary: boolean; } | undefined; uuid?: string | undefined; group?: string | undefined; alerts_filter?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; }[]; tags: string[]; setup: string; description: string; enabled: boolean; revision: number; query: string; interval: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; risk_score: number; language: \"esql\"; from: string; to: string; created_at: string; created_by: string; updated_at: string; updated_by: string; references: string[]; author: string[]; immutable: boolean; rule_id: string; threat: { framework: string; tactic: { id: string; name: string; reference: string; }; technique?: { id: string; name: string; reference: string; subtechnique?: { id: string; name: string; reference: string; }[] | undefined; }[] | undefined; }[]; risk_score_mapping: { value: string; field: string; operator: \"equals\"; risk_score?: number | undefined; }[]; severity_mapping: { value: string; severity: \"medium\" | \"high\" | \"low\" | \"critical\"; field: string; operator: \"equals\"; }[]; exceptions_list: { id: string; type: \"endpoint\" | \"detection\" | \"rule_default\" | \"endpoint_trusted_apps\" | \"endpoint_events\" | \"endpoint_host_isolation_exceptions\" | \"endpoint_blocklists\"; list_id: string; namespace_type: \"single\" | \"agnostic\"; }[]; false_positives: string[]; max_signals: number; related_integrations: { version: string; package: string; integration?: string | undefined; }[]; required_fields: { type: string; name: string; ecs: boolean; }[]; meta?: Zod.objectOutputType<{}, Zod.ZodUnknown, \"strip\"> | undefined; namespace?: string | undefined; license?: string | undefined; throttle?: string | undefined; outcome?: \"exactMatch\" | \"aliasMatch\" | \"conflict\" | undefined; alias_target_id?: string | undefined; alias_purpose?: \"savedObjectConversion\" | \"savedObjectImport\" | undefined; note?: string | undefined; rule_name_override?: string | undefined; timestamp_override?: string | undefined; timestamp_override_fallback_disabled?: boolean | undefined; timeline_id?: string | undefined; timeline_title?: string | undefined; building_block_type?: string | undefined; output_index?: string | undefined; investigation_fields?: { field_names: string[]; } | undefined; rule_source?: { type: \"external\"; is_customized: boolean; } | { type: \"internal\"; } | undefined; execution_summary?: { last_execution: { message: string; date: string; status: \"running\" | \"succeeded\" | \"failed\" | \"going to run\" | \"partial failure\"; metrics: { total_search_duration_ms?: number | undefined; total_indexing_duration_ms?: number | undefined; execution_gap_duration_s?: number | undefined; total_enrichment_duration_ms?: number | undefined; }; status_order: number; }; } | undefined; alert_suppression?: { group_by: string[]; duration?: { value: number; unit: \"m\" | \"h\" | \"s\"; } | undefined; missing_fields_strategy?: \"doNotSuppress\" | \"suppress\" | undefined; } | undefined; response_actions?: ({ params: { query?: string | undefined; timeout?: number | undefined; queries?: { id: string; query: string; version?: string | undefined; snapshot?: boolean | undefined; platform?: string | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; removed?: boolean | undefined; }[] | undefined; ecs_mapping?: Zod.objectOutputType<{}, Zod.ZodObject<{ field: Zod.ZodOptional; value: Zod.ZodOptional]>>; }, \"strip\", Zod.ZodTypeAny, { value?: string | string[] | undefined; field?: string | undefined; }, { value?: string | string[] | undefined; field?: string | undefined; }>, \"strip\"> | undefined; saved_query_id?: string | undefined; pack_id?: string | undefined; }; action_type_id: \".osquery\"; } | { params: { command: \"isolate\"; comment?: string | undefined; } | { config: { field: string; overwrite: boolean; }; command: \"kill-process\" | \"suspend-process\"; comment?: string | undefined; }; action_type_id: \".endpoint\"; })[] | undefined; })[]" ], "path": "x-pack/plugins/security_solution/public/detection_engine/rule_management/logic/types.ts", "deprecated": false, @@ -485,7 +485,7 @@ "\nExperimental flag needed to enable the link" ], "signature": [ - "\"assistantKnowledgeBaseByDefault\" | \"assistantModelEvaluation\" | \"assistantBedrockChat\" | \"excludePoliciesInFilterEnabled\" | \"kubernetesEnabled\" | \"donutChartEmbeddablesEnabled\" | \"previewTelemetryUrlEnabled\" | \"extendedRuleExecutionLoggingEnabled\" | \"socTrendsEnabled\" | \"responseActionUploadEnabled\" | \"automatedProcessActionsEnabled\" | \"responseActionsSentinelOneV1Enabled\" | \"responseActionsSentinelOneV2Enabled\" | \"responseActionsSentinelOneGetFileEnabled\" | \"responseActionsSentinelOneKillProcessEnabled\" | \"responseActionsSentinelOneProcessesEnabled\" | \"responseActionsCrowdstrikeManualHostIsolationEnabled\" | \"securitySolutionNotesEnabled\" | \"entityAlertPreviewDisabled\" | \"newUserDetailsFlyoutManagedUser\" | \"riskScoringPersistence\" | \"riskScoringRoutesEnabled\" | \"esqlRulesDisabled\" | \"protectionUpdatesEnabled\" | \"disableTimelineSaveTour\" | \"riskEnginePrivilegesRouteEnabled\" | \"sentinelOneDataInAnalyzerEnabled\" | \"sentinelOneManualHostActionsEnabled\" | \"crowdstrikeDataInAnalyzerEnabled\" | \"jamfDataInAnalyzerEnabled\" | \"timelineEsqlTabDisabled\" | \"unifiedComponentsInTimelineDisabled\" | \"analyzerDatePickersAndSourcererDisabled\" | \"prebuiltRulesCustomizationEnabled\" | \"malwareOnWriteScanOptionAvailable\" | \"unifiedManifestEnabled\" | \"valueListItemsModalEnabled\" | \"manualRuleRunEnabled\" | \"filterProcessDescendantsForEventFiltersEnabled\" | \"dataIngestionHubEnabled\" | undefined" + "\"assistantKnowledgeBaseByDefault\" | \"assistantModelEvaluation\" | \"assistantBedrockChat\" | \"excludePoliciesInFilterEnabled\" | \"kubernetesEnabled\" | \"donutChartEmbeddablesEnabled\" | \"previewTelemetryUrlEnabled\" | \"extendedRuleExecutionLoggingEnabled\" | \"socTrendsEnabled\" | \"responseActionUploadEnabled\" | \"automatedProcessActionsEnabled\" | \"automatedResponseActionsForMoreRulesEnabled\" | \"responseActionsSentinelOneV1Enabled\" | \"responseActionsSentinelOneV2Enabled\" | \"responseActionsSentinelOneGetFileEnabled\" | \"responseActionsSentinelOneKillProcessEnabled\" | \"responseActionsSentinelOneProcessesEnabled\" | \"responseActionsCrowdstrikeManualHostIsolationEnabled\" | \"securitySolutionNotesEnabled\" | \"entityAlertPreviewDisabled\" | \"assistantNaturalLanguageESQLTool\" | \"newUserDetailsFlyoutManagedUser\" | \"riskScoringPersistence\" | \"riskScoringRoutesEnabled\" | \"esqlRulesDisabled\" | \"loggingRequestsEnabled\" | \"protectionUpdatesEnabled\" | \"disableTimelineSaveTour\" | \"riskEnginePrivilegesRouteEnabled\" | \"sentinelOneDataInAnalyzerEnabled\" | \"sentinelOneManualHostActionsEnabled\" | \"crowdstrikeDataInAnalyzerEnabled\" | \"jamfDataInAnalyzerEnabled\" | \"timelineEsqlTabDisabled\" | \"unifiedComponentsInTimelineDisabled\" | \"analyzerDatePickersAndSourcererDisabled\" | \"visualizationInFlyoutEnabled\" | \"prebuiltRulesCustomizationEnabled\" | \"malwareOnWriteScanOptionAvailable\" | \"unifiedManifestEnabled\" | \"valueListItemsModalEnabled\" | \"manualRuleRunEnabled\" | \"filterProcessDescendantsForEventFiltersEnabled\" | \"dataIngestionHubEnabled\" | \"entityStoreEnabled\" | undefined" ], "path": "x-pack/plugins/security_solution/public/common/links/types.ts", "deprecated": false, @@ -565,7 +565,7 @@ "\nExperimental flag needed to disable the link. Opposite of experimentalKey" ], "signature": [ - "\"assistantKnowledgeBaseByDefault\" | \"assistantModelEvaluation\" | \"assistantBedrockChat\" | \"excludePoliciesInFilterEnabled\" | \"kubernetesEnabled\" | \"donutChartEmbeddablesEnabled\" | \"previewTelemetryUrlEnabled\" | \"extendedRuleExecutionLoggingEnabled\" | \"socTrendsEnabled\" | \"responseActionUploadEnabled\" | \"automatedProcessActionsEnabled\" | \"responseActionsSentinelOneV1Enabled\" | \"responseActionsSentinelOneV2Enabled\" | \"responseActionsSentinelOneGetFileEnabled\" | \"responseActionsSentinelOneKillProcessEnabled\" | \"responseActionsSentinelOneProcessesEnabled\" | \"responseActionsCrowdstrikeManualHostIsolationEnabled\" | \"securitySolutionNotesEnabled\" | \"entityAlertPreviewDisabled\" | \"newUserDetailsFlyoutManagedUser\" | \"riskScoringPersistence\" | \"riskScoringRoutesEnabled\" | \"esqlRulesDisabled\" | \"protectionUpdatesEnabled\" | \"disableTimelineSaveTour\" | \"riskEnginePrivilegesRouteEnabled\" | \"sentinelOneDataInAnalyzerEnabled\" | \"sentinelOneManualHostActionsEnabled\" | \"crowdstrikeDataInAnalyzerEnabled\" | \"jamfDataInAnalyzerEnabled\" | \"timelineEsqlTabDisabled\" | \"unifiedComponentsInTimelineDisabled\" | \"analyzerDatePickersAndSourcererDisabled\" | \"prebuiltRulesCustomizationEnabled\" | \"malwareOnWriteScanOptionAvailable\" | \"unifiedManifestEnabled\" | \"valueListItemsModalEnabled\" | \"manualRuleRunEnabled\" | \"filterProcessDescendantsForEventFiltersEnabled\" | \"dataIngestionHubEnabled\" | undefined" + "\"assistantKnowledgeBaseByDefault\" | \"assistantModelEvaluation\" | \"assistantBedrockChat\" | \"excludePoliciesInFilterEnabled\" | \"kubernetesEnabled\" | \"donutChartEmbeddablesEnabled\" | \"previewTelemetryUrlEnabled\" | \"extendedRuleExecutionLoggingEnabled\" | \"socTrendsEnabled\" | \"responseActionUploadEnabled\" | \"automatedProcessActionsEnabled\" | \"automatedResponseActionsForMoreRulesEnabled\" | \"responseActionsSentinelOneV1Enabled\" | \"responseActionsSentinelOneV2Enabled\" | \"responseActionsSentinelOneGetFileEnabled\" | \"responseActionsSentinelOneKillProcessEnabled\" | \"responseActionsSentinelOneProcessesEnabled\" | \"responseActionsCrowdstrikeManualHostIsolationEnabled\" | \"securitySolutionNotesEnabled\" | \"entityAlertPreviewDisabled\" | \"assistantNaturalLanguageESQLTool\" | \"newUserDetailsFlyoutManagedUser\" | \"riskScoringPersistence\" | \"riskScoringRoutesEnabled\" | \"esqlRulesDisabled\" | \"loggingRequestsEnabled\" | \"protectionUpdatesEnabled\" | \"disableTimelineSaveTour\" | \"riskEnginePrivilegesRouteEnabled\" | \"sentinelOneDataInAnalyzerEnabled\" | \"sentinelOneManualHostActionsEnabled\" | \"crowdstrikeDataInAnalyzerEnabled\" | \"jamfDataInAnalyzerEnabled\" | \"timelineEsqlTabDisabled\" | \"unifiedComponentsInTimelineDisabled\" | \"analyzerDatePickersAndSourcererDisabled\" | \"visualizationInFlyoutEnabled\" | \"prebuiltRulesCustomizationEnabled\" | \"malwareOnWriteScanOptionAvailable\" | \"unifiedManifestEnabled\" | \"valueListItemsModalEnabled\" | \"manualRuleRunEnabled\" | \"filterProcessDescendantsForEventFiltersEnabled\" | \"dataIngestionHubEnabled\" | \"entityStoreEnabled\" | undefined" ], "path": "x-pack/plugins/security_solution/public/common/links/types.ts", "deprecated": false, @@ -1931,7 +1931,7 @@ "label": "experimentalFeatures", "description": [], "signature": [ - "{ readonly excludePoliciesInFilterEnabled: boolean; readonly kubernetesEnabled: boolean; readonly donutChartEmbeddablesEnabled: boolean; readonly previewTelemetryUrlEnabled: boolean; readonly extendedRuleExecutionLoggingEnabled: boolean; readonly socTrendsEnabled: boolean; readonly responseActionUploadEnabled: boolean; readonly automatedProcessActionsEnabled: boolean; readonly responseActionsSentinelOneV1Enabled: boolean; readonly responseActionsSentinelOneV2Enabled: boolean; readonly responseActionsSentinelOneGetFileEnabled: boolean; readonly responseActionsSentinelOneKillProcessEnabled: boolean; readonly responseActionsSentinelOneProcessesEnabled: boolean; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: boolean; readonly securitySolutionNotesEnabled: boolean; readonly entityAlertPreviewDisabled: boolean; readonly assistantModelEvaluation: boolean; readonly assistantKnowledgeBaseByDefault: boolean; readonly assistantBedrockChat: boolean; readonly newUserDetailsFlyoutManagedUser: boolean; readonly riskScoringPersistence: boolean; readonly riskScoringRoutesEnabled: boolean; readonly esqlRulesDisabled: boolean; readonly protectionUpdatesEnabled: boolean; readonly disableTimelineSaveTour: boolean; readonly riskEnginePrivilegesRouteEnabled: boolean; readonly sentinelOneDataInAnalyzerEnabled: boolean; readonly sentinelOneManualHostActionsEnabled: boolean; readonly crowdstrikeDataInAnalyzerEnabled: boolean; readonly jamfDataInAnalyzerEnabled: boolean; readonly timelineEsqlTabDisabled: boolean; readonly unifiedComponentsInTimelineDisabled: boolean; readonly analyzerDatePickersAndSourcererDisabled: boolean; readonly prebuiltRulesCustomizationEnabled: boolean; readonly malwareOnWriteScanOptionAvailable: boolean; readonly unifiedManifestEnabled: boolean; readonly valueListItemsModalEnabled: boolean; readonly manualRuleRunEnabled: boolean; readonly filterProcessDescendantsForEventFiltersEnabled: boolean; readonly dataIngestionHubEnabled: boolean; }" + "{ readonly excludePoliciesInFilterEnabled: boolean; readonly kubernetesEnabled: boolean; readonly donutChartEmbeddablesEnabled: boolean; readonly previewTelemetryUrlEnabled: boolean; readonly extendedRuleExecutionLoggingEnabled: boolean; readonly socTrendsEnabled: boolean; readonly responseActionUploadEnabled: boolean; readonly automatedProcessActionsEnabled: boolean; readonly automatedResponseActionsForMoreRulesEnabled: boolean; readonly responseActionsSentinelOneV1Enabled: boolean; readonly responseActionsSentinelOneV2Enabled: boolean; readonly responseActionsSentinelOneGetFileEnabled: boolean; readonly responseActionsSentinelOneKillProcessEnabled: boolean; readonly responseActionsSentinelOneProcessesEnabled: boolean; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: boolean; readonly securitySolutionNotesEnabled: boolean; readonly entityAlertPreviewDisabled: boolean; readonly assistantModelEvaluation: boolean; readonly assistantKnowledgeBaseByDefault: boolean; readonly assistantBedrockChat: boolean; readonly assistantNaturalLanguageESQLTool: boolean; readonly newUserDetailsFlyoutManagedUser: boolean; readonly riskScoringPersistence: boolean; readonly riskScoringRoutesEnabled: boolean; readonly esqlRulesDisabled: boolean; readonly loggingRequestsEnabled: boolean; readonly protectionUpdatesEnabled: boolean; readonly disableTimelineSaveTour: boolean; readonly riskEnginePrivilegesRouteEnabled: boolean; readonly sentinelOneDataInAnalyzerEnabled: boolean; readonly sentinelOneManualHostActionsEnabled: boolean; readonly crowdstrikeDataInAnalyzerEnabled: boolean; readonly jamfDataInAnalyzerEnabled: boolean; readonly timelineEsqlTabDisabled: boolean; readonly unifiedComponentsInTimelineDisabled: boolean; readonly analyzerDatePickersAndSourcererDisabled: boolean; readonly visualizationInFlyoutEnabled: boolean; readonly prebuiltRulesCustomizationEnabled: boolean; readonly malwareOnWriteScanOptionAvailable: boolean; readonly unifiedManifestEnabled: boolean; readonly valueListItemsModalEnabled: boolean; readonly manualRuleRunEnabled: boolean; readonly filterProcessDescendantsForEventFiltersEnabled: boolean; readonly dataIngestionHubEnabled: boolean; readonly entityStoreEnabled: boolean; }" ], "path": "x-pack/plugins/security_solution/public/types.ts", "deprecated": false, @@ -2992,6 +2992,23 @@ "trackAdoption": false, "children": [], "returnComment": [] + }, + { + "parentPluginId": "securitySolution", + "id": "def-server.SecuritySolutionApiRequestHandlerContext.getEntityStoreDataClient", + "type": "Function", + "tags": [], + "label": "getEntityStoreDataClient", + "description": [], + "signature": [ + "() => ", + "EntityStoreDataClient" + ], + "path": "x-pack/plugins/security_solution/server/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] } ], "initialIsOpen": false @@ -3082,7 +3099,7 @@ "\nThe security solution generic experimental features" ], "signature": [ - "{ readonly excludePoliciesInFilterEnabled: boolean; readonly kubernetesEnabled: boolean; readonly donutChartEmbeddablesEnabled: boolean; readonly previewTelemetryUrlEnabled: boolean; readonly extendedRuleExecutionLoggingEnabled: boolean; readonly socTrendsEnabled: boolean; readonly responseActionUploadEnabled: boolean; readonly automatedProcessActionsEnabled: boolean; readonly responseActionsSentinelOneV1Enabled: boolean; readonly responseActionsSentinelOneV2Enabled: boolean; readonly responseActionsSentinelOneGetFileEnabled: boolean; readonly responseActionsSentinelOneKillProcessEnabled: boolean; readonly responseActionsSentinelOneProcessesEnabled: boolean; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: boolean; readonly securitySolutionNotesEnabled: boolean; readonly entityAlertPreviewDisabled: boolean; readonly assistantModelEvaluation: boolean; readonly assistantKnowledgeBaseByDefault: boolean; readonly assistantBedrockChat: boolean; readonly newUserDetailsFlyoutManagedUser: boolean; readonly riskScoringPersistence: boolean; readonly riskScoringRoutesEnabled: boolean; readonly esqlRulesDisabled: boolean; readonly protectionUpdatesEnabled: boolean; readonly disableTimelineSaveTour: boolean; readonly riskEnginePrivilegesRouteEnabled: boolean; readonly sentinelOneDataInAnalyzerEnabled: boolean; readonly sentinelOneManualHostActionsEnabled: boolean; readonly crowdstrikeDataInAnalyzerEnabled: boolean; readonly jamfDataInAnalyzerEnabled: boolean; readonly timelineEsqlTabDisabled: boolean; readonly unifiedComponentsInTimelineDisabled: boolean; readonly analyzerDatePickersAndSourcererDisabled: boolean; readonly prebuiltRulesCustomizationEnabled: boolean; readonly malwareOnWriteScanOptionAvailable: boolean; readonly unifiedManifestEnabled: boolean; readonly valueListItemsModalEnabled: boolean; readonly manualRuleRunEnabled: boolean; readonly filterProcessDescendantsForEventFiltersEnabled: boolean; readonly dataIngestionHubEnabled: boolean; }" + "{ readonly excludePoliciesInFilterEnabled: boolean; readonly kubernetesEnabled: boolean; readonly donutChartEmbeddablesEnabled: boolean; readonly previewTelemetryUrlEnabled: boolean; readonly extendedRuleExecutionLoggingEnabled: boolean; readonly socTrendsEnabled: boolean; readonly responseActionUploadEnabled: boolean; readonly automatedProcessActionsEnabled: boolean; readonly automatedResponseActionsForMoreRulesEnabled: boolean; readonly responseActionsSentinelOneV1Enabled: boolean; readonly responseActionsSentinelOneV2Enabled: boolean; readonly responseActionsSentinelOneGetFileEnabled: boolean; readonly responseActionsSentinelOneKillProcessEnabled: boolean; readonly responseActionsSentinelOneProcessesEnabled: boolean; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: boolean; readonly securitySolutionNotesEnabled: boolean; readonly entityAlertPreviewDisabled: boolean; readonly assistantModelEvaluation: boolean; readonly assistantKnowledgeBaseByDefault: boolean; readonly assistantBedrockChat: boolean; readonly assistantNaturalLanguageESQLTool: boolean; readonly newUserDetailsFlyoutManagedUser: boolean; readonly riskScoringPersistence: boolean; readonly riskScoringRoutesEnabled: boolean; readonly esqlRulesDisabled: boolean; readonly loggingRequestsEnabled: boolean; readonly protectionUpdatesEnabled: boolean; readonly disableTimelineSaveTour: boolean; readonly riskEnginePrivilegesRouteEnabled: boolean; readonly sentinelOneDataInAnalyzerEnabled: boolean; readonly sentinelOneManualHostActionsEnabled: boolean; readonly crowdstrikeDataInAnalyzerEnabled: boolean; readonly jamfDataInAnalyzerEnabled: boolean; readonly timelineEsqlTabDisabled: boolean; readonly unifiedComponentsInTimelineDisabled: boolean; readonly analyzerDatePickersAndSourcererDisabled: boolean; readonly visualizationInFlyoutEnabled: boolean; readonly prebuiltRulesCustomizationEnabled: boolean; readonly malwareOnWriteScanOptionAvailable: boolean; readonly unifiedManifestEnabled: boolean; readonly valueListItemsModalEnabled: boolean; readonly manualRuleRunEnabled: boolean; readonly filterProcessDescendantsForEventFiltersEnabled: boolean; readonly dataIngestionHubEnabled: boolean; readonly entityStoreEnabled: boolean; }" ], "path": "x-pack/plugins/security_solution/server/plugin_contract.ts", "deprecated": false, @@ -3258,7 +3275,7 @@ "label": "ExperimentalFeatures", "description": [], "signature": [ - "{ readonly excludePoliciesInFilterEnabled: boolean; readonly kubernetesEnabled: boolean; readonly donutChartEmbeddablesEnabled: boolean; readonly previewTelemetryUrlEnabled: boolean; readonly extendedRuleExecutionLoggingEnabled: boolean; readonly socTrendsEnabled: boolean; readonly responseActionUploadEnabled: boolean; readonly automatedProcessActionsEnabled: boolean; readonly responseActionsSentinelOneV1Enabled: boolean; readonly responseActionsSentinelOneV2Enabled: boolean; readonly responseActionsSentinelOneGetFileEnabled: boolean; readonly responseActionsSentinelOneKillProcessEnabled: boolean; readonly responseActionsSentinelOneProcessesEnabled: boolean; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: boolean; readonly securitySolutionNotesEnabled: boolean; readonly entityAlertPreviewDisabled: boolean; readonly assistantModelEvaluation: boolean; readonly assistantKnowledgeBaseByDefault: boolean; readonly assistantBedrockChat: boolean; readonly newUserDetailsFlyoutManagedUser: boolean; readonly riskScoringPersistence: boolean; readonly riskScoringRoutesEnabled: boolean; readonly esqlRulesDisabled: boolean; readonly protectionUpdatesEnabled: boolean; readonly disableTimelineSaveTour: boolean; readonly riskEnginePrivilegesRouteEnabled: boolean; readonly sentinelOneDataInAnalyzerEnabled: boolean; readonly sentinelOneManualHostActionsEnabled: boolean; readonly crowdstrikeDataInAnalyzerEnabled: boolean; readonly jamfDataInAnalyzerEnabled: boolean; readonly timelineEsqlTabDisabled: boolean; readonly unifiedComponentsInTimelineDisabled: boolean; readonly analyzerDatePickersAndSourcererDisabled: boolean; readonly prebuiltRulesCustomizationEnabled: boolean; readonly malwareOnWriteScanOptionAvailable: boolean; readonly unifiedManifestEnabled: boolean; readonly valueListItemsModalEnabled: boolean; readonly manualRuleRunEnabled: boolean; readonly filterProcessDescendantsForEventFiltersEnabled: boolean; readonly dataIngestionHubEnabled: boolean; }" + "{ readonly excludePoliciesInFilterEnabled: boolean; readonly kubernetesEnabled: boolean; readonly donutChartEmbeddablesEnabled: boolean; readonly previewTelemetryUrlEnabled: boolean; readonly extendedRuleExecutionLoggingEnabled: boolean; readonly socTrendsEnabled: boolean; readonly responseActionUploadEnabled: boolean; readonly automatedProcessActionsEnabled: boolean; readonly automatedResponseActionsForMoreRulesEnabled: boolean; readonly responseActionsSentinelOneV1Enabled: boolean; readonly responseActionsSentinelOneV2Enabled: boolean; readonly responseActionsSentinelOneGetFileEnabled: boolean; readonly responseActionsSentinelOneKillProcessEnabled: boolean; readonly responseActionsSentinelOneProcessesEnabled: boolean; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: boolean; readonly securitySolutionNotesEnabled: boolean; readonly entityAlertPreviewDisabled: boolean; readonly assistantModelEvaluation: boolean; readonly assistantKnowledgeBaseByDefault: boolean; readonly assistantBedrockChat: boolean; readonly assistantNaturalLanguageESQLTool: boolean; readonly newUserDetailsFlyoutManagedUser: boolean; readonly riskScoringPersistence: boolean; readonly riskScoringRoutesEnabled: boolean; readonly esqlRulesDisabled: boolean; readonly loggingRequestsEnabled: boolean; readonly protectionUpdatesEnabled: boolean; readonly disableTimelineSaveTour: boolean; readonly riskEnginePrivilegesRouteEnabled: boolean; readonly sentinelOneDataInAnalyzerEnabled: boolean; readonly sentinelOneManualHostActionsEnabled: boolean; readonly crowdstrikeDataInAnalyzerEnabled: boolean; readonly jamfDataInAnalyzerEnabled: boolean; readonly timelineEsqlTabDisabled: boolean; readonly unifiedComponentsInTimelineDisabled: boolean; readonly analyzerDatePickersAndSourcererDisabled: boolean; readonly visualizationInFlyoutEnabled: boolean; readonly prebuiltRulesCustomizationEnabled: boolean; readonly malwareOnWriteScanOptionAvailable: boolean; readonly unifiedManifestEnabled: boolean; readonly valueListItemsModalEnabled: boolean; readonly manualRuleRunEnabled: boolean; readonly filterProcessDescendantsForEventFiltersEnabled: boolean; readonly dataIngestionHubEnabled: boolean; readonly entityStoreEnabled: boolean; }" ], "path": "x-pack/plugins/security_solution/common/experimental_features.ts", "deprecated": false, @@ -3324,7 +3341,7 @@ "\nA list of allowed values that can be used in `xpack.securitySolution.enableExperimental`.\nThis object is then used to validate and parse the value entered." ], "signature": [ - "{ readonly excludePoliciesInFilterEnabled: false; readonly kubernetesEnabled: true; readonly donutChartEmbeddablesEnabled: false; readonly previewTelemetryUrlEnabled: false; readonly extendedRuleExecutionLoggingEnabled: false; readonly socTrendsEnabled: false; readonly responseActionUploadEnabled: true; readonly automatedProcessActionsEnabled: true; readonly responseActionsSentinelOneV1Enabled: true; readonly responseActionsSentinelOneV2Enabled: true; readonly responseActionsSentinelOneGetFileEnabled: true; readonly responseActionsSentinelOneKillProcessEnabled: true; readonly responseActionsSentinelOneProcessesEnabled: true; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: true; readonly securitySolutionNotesEnabled: false; readonly entityAlertPreviewDisabled: false; readonly assistantModelEvaluation: false; readonly assistantKnowledgeBaseByDefault: false; readonly assistantBedrockChat: true; readonly newUserDetailsFlyoutManagedUser: false; readonly riskScoringPersistence: true; readonly riskScoringRoutesEnabled: true; readonly esqlRulesDisabled: false; readonly protectionUpdatesEnabled: true; readonly disableTimelineSaveTour: false; readonly riskEnginePrivilegesRouteEnabled: true; readonly sentinelOneDataInAnalyzerEnabled: true; readonly sentinelOneManualHostActionsEnabled: true; readonly crowdstrikeDataInAnalyzerEnabled: true; readonly jamfDataInAnalyzerEnabled: true; readonly timelineEsqlTabDisabled: false; readonly unifiedComponentsInTimelineDisabled: false; readonly analyzerDatePickersAndSourcererDisabled: false; readonly prebuiltRulesCustomizationEnabled: false; readonly malwareOnWriteScanOptionAvailable: true; readonly unifiedManifestEnabled: true; readonly valueListItemsModalEnabled: true; readonly manualRuleRunEnabled: false; readonly filterProcessDescendantsForEventFiltersEnabled: true; readonly dataIngestionHubEnabled: false; }" + "{ readonly excludePoliciesInFilterEnabled: false; readonly kubernetesEnabled: true; readonly donutChartEmbeddablesEnabled: false; readonly previewTelemetryUrlEnabled: false; readonly extendedRuleExecutionLoggingEnabled: false; readonly socTrendsEnabled: false; readonly responseActionUploadEnabled: true; readonly automatedProcessActionsEnabled: true; readonly automatedResponseActionsForMoreRulesEnabled: false; readonly responseActionsSentinelOneV1Enabled: true; readonly responseActionsSentinelOneV2Enabled: true; readonly responseActionsSentinelOneGetFileEnabled: true; readonly responseActionsSentinelOneKillProcessEnabled: true; readonly responseActionsSentinelOneProcessesEnabled: true; readonly responseActionsCrowdstrikeManualHostIsolationEnabled: true; readonly securitySolutionNotesEnabled: false; readonly entityAlertPreviewDisabled: false; readonly assistantModelEvaluation: false; readonly assistantKnowledgeBaseByDefault: false; readonly assistantBedrockChat: true; readonly assistantNaturalLanguageESQLTool: false; readonly newUserDetailsFlyoutManagedUser: false; readonly riskScoringPersistence: true; readonly riskScoringRoutesEnabled: true; readonly esqlRulesDisabled: false; readonly loggingRequestsEnabled: false; readonly protectionUpdatesEnabled: true; readonly disableTimelineSaveTour: false; readonly riskEnginePrivilegesRouteEnabled: true; readonly sentinelOneDataInAnalyzerEnabled: true; readonly sentinelOneManualHostActionsEnabled: true; readonly crowdstrikeDataInAnalyzerEnabled: true; readonly jamfDataInAnalyzerEnabled: true; readonly timelineEsqlTabDisabled: false; readonly unifiedComponentsInTimelineDisabled: false; readonly analyzerDatePickersAndSourcererDisabled: false; readonly visualizationInFlyoutEnabled: false; readonly prebuiltRulesCustomizationEnabled: false; readonly malwareOnWriteScanOptionAvailable: true; readonly unifiedManifestEnabled: true; readonly valueListItemsModalEnabled: true; readonly manualRuleRunEnabled: false; readonly filterProcessDescendantsForEventFiltersEnabled: true; readonly dataIngestionHubEnabled: false; readonly entityStoreEnabled: false; }" ], "path": "x-pack/plugins/security_solution/common/experimental_features.ts", "deprecated": false, diff --git a/api_docs/security_solution.mdx b/api_docs/security_solution.mdx index 53aa3877df819..11a454c2994d2 100644 --- a/api_docs/security_solution.mdx +++ b/api_docs/security_solution.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/securitySolution title: "securitySolution" image: https://source.unsplash.com/400x175/?github description: API docs for the securitySolution plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'securitySolution'] --- import securitySolutionObj from './security_solution.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/security-solution](https://github.com/orgs/elastic/teams/secur | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 192 | 0 | 123 | 33 | +| 193 | 0 | 124 | 34 | ## Client diff --git a/api_docs/security_solution_ess.mdx b/api_docs/security_solution_ess.mdx index b093fd4d765c6..5293befda82a0 100644 --- a/api_docs/security_solution_ess.mdx +++ b/api_docs/security_solution_ess.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/securitySolutionEss title: "securitySolutionEss" image: https://source.unsplash.com/400x175/?github description: API docs for the securitySolutionEss plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'securitySolutionEss'] --- import securitySolutionEssObj from './security_solution_ess.devdocs.json'; diff --git a/api_docs/security_solution_serverless.mdx b/api_docs/security_solution_serverless.mdx index a3eefbf9ccaee..dd0bb7dfd2c34 100644 --- a/api_docs/security_solution_serverless.mdx +++ b/api_docs/security_solution_serverless.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/securitySolutionServerless title: "securitySolutionServerless" image: https://source.unsplash.com/400x175/?github description: API docs for the securitySolutionServerless plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'securitySolutionServerless'] --- import securitySolutionServerlessObj from './security_solution_serverless.devdocs.json'; diff --git a/api_docs/serverless.mdx b/api_docs/serverless.mdx index 52cffee88bcda..9c40048428255 100644 --- a/api_docs/serverless.mdx +++ b/api_docs/serverless.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/serverless title: "serverless" image: https://source.unsplash.com/400x175/?github description: API docs for the serverless plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'serverless'] --- import serverlessObj from './serverless.devdocs.json'; diff --git a/api_docs/serverless_observability.mdx b/api_docs/serverless_observability.mdx index a323bc4580c74..b43d7f63160d9 100644 --- a/api_docs/serverless_observability.mdx +++ b/api_docs/serverless_observability.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/serverlessObservability title: "serverlessObservability" image: https://source.unsplash.com/400x175/?github description: API docs for the serverlessObservability plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'serverlessObservability'] --- import serverlessObservabilityObj from './serverless_observability.devdocs.json'; diff --git a/api_docs/serverless_search.mdx b/api_docs/serverless_search.mdx index 4428b3ceb59f5..4115374e5874d 100644 --- a/api_docs/serverless_search.mdx +++ b/api_docs/serverless_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/serverlessSearch title: "serverlessSearch" image: https://source.unsplash.com/400x175/?github description: API docs for the serverlessSearch plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'serverlessSearch'] --- import serverlessSearchObj from './serverless_search.devdocs.json'; diff --git a/api_docs/session_view.mdx b/api_docs/session_view.mdx index 43d2bec876682..84d1f469437a1 100644 --- a/api_docs/session_view.mdx +++ b/api_docs/session_view.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/sessionView title: "sessionView" image: https://source.unsplash.com/400x175/?github description: API docs for the sessionView plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'sessionView'] --- import sessionViewObj from './session_view.devdocs.json'; diff --git a/api_docs/share.mdx b/api_docs/share.mdx index 30b36cb134adf..1b0734fd71683 100644 --- a/api_docs/share.mdx +++ b/api_docs/share.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/share title: "share" image: https://source.unsplash.com/400x175/?github description: API docs for the share plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'share'] --- import shareObj from './share.devdocs.json'; diff --git a/api_docs/slo.mdx b/api_docs/slo.mdx index 00c58dbf57ab5..f6230e1152351 100644 --- a/api_docs/slo.mdx +++ b/api_docs/slo.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/slo title: "slo" image: https://source.unsplash.com/400x175/?github description: API docs for the slo plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'slo'] --- import sloObj from './slo.devdocs.json'; diff --git a/api_docs/snapshot_restore.mdx b/api_docs/snapshot_restore.mdx index 8e5e9891ebfec..4e6792fa493b0 100644 --- a/api_docs/snapshot_restore.mdx +++ b/api_docs/snapshot_restore.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/snapshotRestore title: "snapshotRestore" image: https://source.unsplash.com/400x175/?github description: API docs for the snapshotRestore plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'snapshotRestore'] --- import snapshotRestoreObj from './snapshot_restore.devdocs.json'; diff --git a/api_docs/spaces.devdocs.json b/api_docs/spaces.devdocs.json index 320429beae408..c21f0b6a20fc3 100644 --- a/api_docs/spaces.devdocs.json +++ b/api_docs/spaces.devdocs.json @@ -2877,7 +2877,7 @@ "\nSetup contract for the Spaces plugin." ], "signature": [ - "{ hasOnlyDefaultSpace: boolean; }" + "{ hasOnlyDefaultSpace: boolean; isSolutionViewEnabled: boolean; }" ], "path": "x-pack/plugins/spaces/public/plugin.tsx", "deprecated": false, @@ -2986,6 +2986,19 @@ "path": "x-pack/plugins/spaces/public/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "spaces", + "id": "def-public.SpacesApi.isSolutionViewEnabled", + "type": "boolean", + "tags": [], + "label": "isSolutionViewEnabled", + "description": [ + "\nIndicates whether the solution view is enabled." + ], + "path": "x-pack/plugins/spaces/public/types.ts", + "deprecated": false, + "trackAdoption": false } ], "lifecycle": "start", diff --git a/api_docs/spaces.mdx b/api_docs/spaces.mdx index e584521cc85e1..d50c3b04bf105 100644 --- a/api_docs/spaces.mdx +++ b/api_docs/spaces.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/spaces title: "spaces" image: https://source.unsplash.com/400x175/?github description: API docs for the spaces plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'spaces'] --- import spacesObj from './spaces.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana- | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 261 | 0 | 67 | 0 | +| 262 | 0 | 67 | 0 | ## Client diff --git a/api_docs/stack_alerts.mdx b/api_docs/stack_alerts.mdx index 7ee09695b7b2e..58a6d62130a97 100644 --- a/api_docs/stack_alerts.mdx +++ b/api_docs/stack_alerts.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/stackAlerts title: "stackAlerts" image: https://source.unsplash.com/400x175/?github description: API docs for the stackAlerts plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'stackAlerts'] --- import stackAlertsObj from './stack_alerts.devdocs.json'; diff --git a/api_docs/stack_connectors.mdx b/api_docs/stack_connectors.mdx index 3f8f7fc803c10..47e81d8f69e55 100644 --- a/api_docs/stack_connectors.mdx +++ b/api_docs/stack_connectors.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/stackConnectors title: "stackConnectors" image: https://source.unsplash.com/400x175/?github description: API docs for the stackConnectors plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'stackConnectors'] --- import stackConnectorsObj from './stack_connectors.devdocs.json'; diff --git a/api_docs/task_manager.mdx b/api_docs/task_manager.mdx index 7fbb7287d12ce..fdfa6a0c0b000 100644 --- a/api_docs/task_manager.mdx +++ b/api_docs/task_manager.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/taskManager title: "taskManager" image: https://source.unsplash.com/400x175/?github description: API docs for the taskManager plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'taskManager'] --- import taskManagerObj from './task_manager.devdocs.json'; diff --git a/api_docs/telemetry.devdocs.json b/api_docs/telemetry.devdocs.json index 5d733c822aea8..38f492d0e5fdb 100644 --- a/api_docs/telemetry.devdocs.json +++ b/api_docs/telemetry.devdocs.json @@ -807,6 +807,10 @@ "plugin": "fleet", "path": "x-pack/plugins/fleet/server/telemetry/sender.ts" }, + { + "plugin": "datasetQuality", + "path": "x-pack/plugins/observability_solution/dataset_quality/server/services/data_telemetry/data_telemetry_service.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/lib/telemetry/sender.ts" diff --git a/api_docs/telemetry.mdx b/api_docs/telemetry.mdx index e18eced7d7869..22912018b6328 100644 --- a/api_docs/telemetry.mdx +++ b/api_docs/telemetry.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/telemetry title: "telemetry" image: https://source.unsplash.com/400x175/?github description: API docs for the telemetry plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'telemetry'] --- import telemetryObj from './telemetry.devdocs.json'; diff --git a/api_docs/telemetry_collection_manager.mdx b/api_docs/telemetry_collection_manager.mdx index 19b4d115bbe1f..fc741bfffddbf 100644 --- a/api_docs/telemetry_collection_manager.mdx +++ b/api_docs/telemetry_collection_manager.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/telemetryCollectionManager title: "telemetryCollectionManager" image: https://source.unsplash.com/400x175/?github description: API docs for the telemetryCollectionManager plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'telemetryCollectionManager'] --- import telemetryCollectionManagerObj from './telemetry_collection_manager.devdocs.json'; diff --git a/api_docs/telemetry_collection_xpack.mdx b/api_docs/telemetry_collection_xpack.mdx index 39719302115f0..671f3b0a2f4b6 100644 --- a/api_docs/telemetry_collection_xpack.mdx +++ b/api_docs/telemetry_collection_xpack.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/telemetryCollectionXpack title: "telemetryCollectionXpack" image: https://source.unsplash.com/400x175/?github description: API docs for the telemetryCollectionXpack plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'telemetryCollectionXpack'] --- import telemetryCollectionXpackObj from './telemetry_collection_xpack.devdocs.json'; diff --git a/api_docs/telemetry_management_section.mdx b/api_docs/telemetry_management_section.mdx index 683518ca6a6ab..afc84e8e46d9f 100644 --- a/api_docs/telemetry_management_section.mdx +++ b/api_docs/telemetry_management_section.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/telemetryManagementSection title: "telemetryManagementSection" image: https://source.unsplash.com/400x175/?github description: API docs for the telemetryManagementSection plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'telemetryManagementSection'] --- import telemetryManagementSectionObj from './telemetry_management_section.devdocs.json'; diff --git a/api_docs/threat_intelligence.mdx b/api_docs/threat_intelligence.mdx index 1f9daa3d86635..82e352b70f517 100644 --- a/api_docs/threat_intelligence.mdx +++ b/api_docs/threat_intelligence.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/threatIntelligence title: "threatIntelligence" image: https://source.unsplash.com/400x175/?github description: API docs for the threatIntelligence plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'threatIntelligence'] --- import threatIntelligenceObj from './threat_intelligence.devdocs.json'; diff --git a/api_docs/timelines.mdx b/api_docs/timelines.mdx index 814bead03c066..a2701ab7a3ef2 100644 --- a/api_docs/timelines.mdx +++ b/api_docs/timelines.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/timelines title: "timelines" image: https://source.unsplash.com/400x175/?github description: API docs for the timelines plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'timelines'] --- import timelinesObj from './timelines.devdocs.json'; diff --git a/api_docs/transform.mdx b/api_docs/transform.mdx index 6d1102fd341f6..b4b21ba332c2c 100644 --- a/api_docs/transform.mdx +++ b/api_docs/transform.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/transform title: "transform" image: https://source.unsplash.com/400x175/?github description: API docs for the transform plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'transform'] --- import transformObj from './transform.devdocs.json'; diff --git a/api_docs/triggers_actions_ui.mdx b/api_docs/triggers_actions_ui.mdx index 1980e77cfbfcc..d9db7bbf6e0c5 100644 --- a/api_docs/triggers_actions_ui.mdx +++ b/api_docs/triggers_actions_ui.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/triggersActionsUi title: "triggersActionsUi" image: https://source.unsplash.com/400x175/?github description: API docs for the triggersActionsUi plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'triggersActionsUi'] --- import triggersActionsUiObj from './triggers_actions_ui.devdocs.json'; diff --git a/api_docs/ui_actions.devdocs.json b/api_docs/ui_actions.devdocs.json index 88c3eb5d86697..4046071ec1aa5 100644 --- a/api_docs/ui_actions.devdocs.json +++ b/api_docs/ui_actions.devdocs.json @@ -2199,7 +2199,7 @@ "section": "def-common.Presentable", "text": "Presentable" }, - ", \"order\" | \"getDisplayName\" | \"getIconType\" | \"getDisplayNameTooltip\">>" + ", \"order\" | \"getIconType\" | \"getDisplayName\" | \"getDisplayNameTooltip\">>" ], "path": "packages/kbn-ui-actions-browser/src/types/presentable.ts", "deprecated": false, diff --git a/api_docs/ui_actions.mdx b/api_docs/ui_actions.mdx index b46f49ea8eb7f..6695c33424017 100644 --- a/api_docs/ui_actions.mdx +++ b/api_docs/ui_actions.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/uiActions title: "uiActions" image: https://source.unsplash.com/400x175/?github description: API docs for the uiActions plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'uiActions'] --- import uiActionsObj from './ui_actions.devdocs.json'; diff --git a/api_docs/ui_actions_enhanced.mdx b/api_docs/ui_actions_enhanced.mdx index e40877f315f9b..207cd70dece1b 100644 --- a/api_docs/ui_actions_enhanced.mdx +++ b/api_docs/ui_actions_enhanced.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/uiActionsEnhanced title: "uiActionsEnhanced" image: https://source.unsplash.com/400x175/?github description: API docs for the uiActionsEnhanced plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'uiActionsEnhanced'] --- import uiActionsEnhancedObj from './ui_actions_enhanced.devdocs.json'; diff --git a/api_docs/unified_doc_viewer.mdx b/api_docs/unified_doc_viewer.mdx index f118ba9c56651..7621ad2eb2f35 100644 --- a/api_docs/unified_doc_viewer.mdx +++ b/api_docs/unified_doc_viewer.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/unifiedDocViewer title: "unifiedDocViewer" image: https://source.unsplash.com/400x175/?github description: API docs for the unifiedDocViewer plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedDocViewer'] --- import unifiedDocViewerObj from './unified_doc_viewer.devdocs.json'; diff --git a/api_docs/unified_histogram.mdx b/api_docs/unified_histogram.mdx index af8f458b3a92b..2506c32b28f40 100644 --- a/api_docs/unified_histogram.mdx +++ b/api_docs/unified_histogram.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/unifiedHistogram title: "unifiedHistogram" image: https://source.unsplash.com/400x175/?github description: API docs for the unifiedHistogram plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedHistogram'] --- import unifiedHistogramObj from './unified_histogram.devdocs.json'; diff --git a/api_docs/unified_search.mdx b/api_docs/unified_search.mdx index e398c6e2bce6e..c3b665f870b9d 100644 --- a/api_docs/unified_search.mdx +++ b/api_docs/unified_search.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/unifiedSearch title: "unifiedSearch" image: https://source.unsplash.com/400x175/?github description: API docs for the unifiedSearch plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedSearch'] --- import unifiedSearchObj from './unified_search.devdocs.json'; diff --git a/api_docs/unified_search_autocomplete.mdx b/api_docs/unified_search_autocomplete.mdx index 9a96a2613f452..6982131a3de7e 100644 --- a/api_docs/unified_search_autocomplete.mdx +++ b/api_docs/unified_search_autocomplete.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/unifiedSearch-autocomplete title: "unifiedSearch.autocomplete" image: https://source.unsplash.com/400x175/?github description: API docs for the unifiedSearch.autocomplete plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedSearch.autocomplete'] --- import unifiedSearchAutocompleteObj from './unified_search_autocomplete.devdocs.json'; diff --git a/api_docs/uptime.mdx b/api_docs/uptime.mdx index 8342013b10fca..edadd705fad0c 100644 --- a/api_docs/uptime.mdx +++ b/api_docs/uptime.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/uptime title: "uptime" image: https://source.unsplash.com/400x175/?github description: API docs for the uptime plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'uptime'] --- import uptimeObj from './uptime.devdocs.json'; diff --git a/api_docs/url_forwarding.mdx b/api_docs/url_forwarding.mdx index 056f6c0440ee2..aa8361f10920c 100644 --- a/api_docs/url_forwarding.mdx +++ b/api_docs/url_forwarding.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/urlForwarding title: "urlForwarding" image: https://source.unsplash.com/400x175/?github description: API docs for the urlForwarding plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'urlForwarding'] --- import urlForwardingObj from './url_forwarding.devdocs.json'; diff --git a/api_docs/usage_collection.mdx b/api_docs/usage_collection.mdx index 4ec27a6c500c2..ba5a5ee1fc2dc 100644 --- a/api_docs/usage_collection.mdx +++ b/api_docs/usage_collection.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/usageCollection title: "usageCollection" image: https://source.unsplash.com/400x175/?github description: API docs for the usageCollection plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'usageCollection'] --- import usageCollectionObj from './usage_collection.devdocs.json'; diff --git a/api_docs/ux.mdx b/api_docs/ux.mdx index 00136d67d47bf..6f3cdd21ec8ce 100644 --- a/api_docs/ux.mdx +++ b/api_docs/ux.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/ux title: "ux" image: https://source.unsplash.com/400x175/?github description: API docs for the ux plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ux'] --- import uxObj from './ux.devdocs.json'; diff --git a/api_docs/vis_default_editor.mdx b/api_docs/vis_default_editor.mdx index 33ef7cd83adf8..c5dbcd9dc4cf7 100644 --- a/api_docs/vis_default_editor.mdx +++ b/api_docs/vis_default_editor.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visDefaultEditor title: "visDefaultEditor" image: https://source.unsplash.com/400x175/?github description: API docs for the visDefaultEditor plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visDefaultEditor'] --- import visDefaultEditorObj from './vis_default_editor.devdocs.json'; diff --git a/api_docs/vis_type_gauge.mdx b/api_docs/vis_type_gauge.mdx index 41e7074607ed0..8d252976fb262 100644 --- a/api_docs/vis_type_gauge.mdx +++ b/api_docs/vis_type_gauge.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeGauge title: "visTypeGauge" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeGauge plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeGauge'] --- import visTypeGaugeObj from './vis_type_gauge.devdocs.json'; diff --git a/api_docs/vis_type_heatmap.mdx b/api_docs/vis_type_heatmap.mdx index c9616af6ad168..1c2b7de4f13fa 100644 --- a/api_docs/vis_type_heatmap.mdx +++ b/api_docs/vis_type_heatmap.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeHeatmap title: "visTypeHeatmap" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeHeatmap plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeHeatmap'] --- import visTypeHeatmapObj from './vis_type_heatmap.devdocs.json'; diff --git a/api_docs/vis_type_pie.mdx b/api_docs/vis_type_pie.mdx index fb65c6216e1fb..c890f73c7b7fa 100644 --- a/api_docs/vis_type_pie.mdx +++ b/api_docs/vis_type_pie.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypePie title: "visTypePie" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypePie plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypePie'] --- import visTypePieObj from './vis_type_pie.devdocs.json'; diff --git a/api_docs/vis_type_table.mdx b/api_docs/vis_type_table.mdx index ff76e8dc2ba54..864baa1450597 100644 --- a/api_docs/vis_type_table.mdx +++ b/api_docs/vis_type_table.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeTable title: "visTypeTable" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeTable plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeTable'] --- import visTypeTableObj from './vis_type_table.devdocs.json'; diff --git a/api_docs/vis_type_timelion.mdx b/api_docs/vis_type_timelion.mdx index 397ec16eb82a4..7b97d91233025 100644 --- a/api_docs/vis_type_timelion.mdx +++ b/api_docs/vis_type_timelion.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeTimelion title: "visTypeTimelion" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeTimelion plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeTimelion'] --- import visTypeTimelionObj from './vis_type_timelion.devdocs.json'; diff --git a/api_docs/vis_type_timeseries.mdx b/api_docs/vis_type_timeseries.mdx index 0c0202f8f4e3b..0af6bae95142d 100644 --- a/api_docs/vis_type_timeseries.mdx +++ b/api_docs/vis_type_timeseries.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeTimeseries title: "visTypeTimeseries" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeTimeseries plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeTimeseries'] --- import visTypeTimeseriesObj from './vis_type_timeseries.devdocs.json'; diff --git a/api_docs/vis_type_vega.mdx b/api_docs/vis_type_vega.mdx index b4f4ec879bd5b..c88a1a4187657 100644 --- a/api_docs/vis_type_vega.mdx +++ b/api_docs/vis_type_vega.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeVega title: "visTypeVega" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeVega plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeVega'] --- import visTypeVegaObj from './vis_type_vega.devdocs.json'; diff --git a/api_docs/vis_type_vislib.mdx b/api_docs/vis_type_vislib.mdx index 8cc44e5783455..03814b3db83b3 100644 --- a/api_docs/vis_type_vislib.mdx +++ b/api_docs/vis_type_vislib.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeVislib title: "visTypeVislib" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeVislib plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeVislib'] --- import visTypeVislibObj from './vis_type_vislib.devdocs.json'; diff --git a/api_docs/vis_type_xy.mdx b/api_docs/vis_type_xy.mdx index 4d9f3085c22b9..4e554f41ff013 100644 --- a/api_docs/vis_type_xy.mdx +++ b/api_docs/vis_type_xy.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visTypeXy title: "visTypeXy" image: https://source.unsplash.com/400x175/?github description: API docs for the visTypeXy plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeXy'] --- import visTypeXyObj from './vis_type_xy.devdocs.json'; diff --git a/api_docs/visualizations.devdocs.json b/api_docs/visualizations.devdocs.json index 3e76fdcd641e3..649d328ac9978 100644 --- a/api_docs/visualizations.devdocs.json +++ b/api_docs/visualizations.devdocs.json @@ -6976,7 +6976,7 @@ "section": "def-public.PublishesViewMode", "text": "PublishesViewMode" }, - ">) | undefined; disableTriggers: boolean; canLinkToLibrary: (() => Promise) | undefined; canUnlinkFromLibrary: (() => Promise) | undefined; timeRange$: ", + ">) | undefined; disableTriggers: boolean; timeRange$: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -6992,31 +6992,7 @@ "section": "def-common.TimeRange", "text": "TimeRange" }, - " | undefined>; setTimeRange: (timeRange: ", - { - "pluginId": "@kbn/es-query", - "scope": "common", - "docId": "kibKbnEsQueryPluginApi", - "section": "def-common.TimeRange", - "text": "TimeRange" - }, - " | undefined) => void; isCompatibleWithUnifiedSearch: (() => boolean) | undefined; linkToLibrary: (() => Promise) | undefined; unlinkFromLibrary: (() => Promise) | undefined; savedObjectId: ", - { - "pluginId": "@kbn/presentation-publishing", - "scope": "public", - "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishingSubject", - "text": "PublishingSubject" - }, - "; getExplicitInput: () => ", - { - "pluginId": "visualizations", - "scope": "public", - "docId": "kibVisualizationsPluginApi", - "section": "def-public.VisualizeInput", - "text": "VisualizeInput" - }, - "; getDescription: () => string; filters$: ", + " | undefined>; filters$: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -7032,7 +7008,7 @@ "section": "def-common.Filter", "text": "Filter" }, - "[] | undefined>; query$: ", + "[] | undefined>; isCompatibleWithUnifiedSearch: (() => boolean) | undefined; query$: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -7080,7 +7056,23 @@ "section": "def-common.Filter", "text": "Filter" }, - "[]; onEdit: () => Promise; phase$: ", + "[]; canLinkToLibrary: (() => Promise) | undefined; canUnlinkFromLibrary: (() => Promise) | undefined; setTimeRange: (timeRange: ", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.TimeRange", + "text": "TimeRange" + }, + " | undefined) => void; linkToLibrary: (() => Promise) | undefined; unlinkFromLibrary: (() => Promise) | undefined; getExplicitInput: () => ", + { + "pluginId": "visualizations", + "scope": "public", + "docId": "kibVisualizationsPluginApi", + "section": "def-public.VisualizeInput", + "text": "VisualizeInput" + }, + "; getDescription: () => string; onEdit: () => Promise; phase$: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -7096,7 +7088,15 @@ "section": "def-public.PhaseEvent", "text": "PhaseEvent" }, - " | undefined>; setPanelTitle: (newTitle: string | undefined) => void; isEditingEnabled: () => boolean; setHidePanelTitle: (hide: boolean | undefined) => void; getTypeDisplayName: () => string; setPanelDescription: (newTitle: string | undefined) => void; render: (domNode: HTMLElement) => Promise; getEditHref: () => Promise; reload: () => Promise; updateInput: (changes: Partial<", + " | undefined>; setPanelTitle: (newTitle: string | undefined) => void; isEditingEnabled: () => boolean; setHidePanelTitle: (hide: boolean | undefined) => void; getTypeDisplayName: () => string; setPanelDescription: (newTitle: string | undefined) => void; savedObjectId: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; render: (domNode: HTMLElement) => Promise; getEditHref: () => Promise; reload: () => Promise; updateInput: (changes: Partial<", { "pluginId": "visualizations", "scope": "public", @@ -7429,7 +7429,7 @@ "section": "def-common.SavedObjectReference", "text": "SavedObjectReference" }, - "[]; }; isEditable: () => Promise; getDisplayName: () => string; createFromSavedObject: (savedObjectId: string, input: Partial<", + "[]; }; getDisplayName: () => string; isEditable: () => Promise; createFromSavedObject: (savedObjectId: string, input: Partial<", { "pluginId": "visualizations", "scope": "public", diff --git a/api_docs/visualizations.mdx b/api_docs/visualizations.mdx index 123e96ab36e08..aaa0b47d2f530 100644 --- a/api_docs/visualizations.mdx +++ b/api_docs/visualizations.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/visualizations title: "visualizations" image: https://source.unsplash.com/400x175/?github description: API docs for the visualizations plugin -date: 2024-09-16 +date: 2024-09-20 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visualizations'] --- import visualizationsObj from './visualizations.devdocs.json'; diff --git a/dev_docs/getting_started/setting_up_a_development_env.mdx b/dev_docs/getting_started/setting_up_a_development_env.mdx index b69987a09da50..8a7980e9f45e0 100644 --- a/dev_docs/getting_started/setting_up_a_development_env.mdx +++ b/dev_docs/getting_started/setting_up_a_development_env.mdx @@ -109,6 +109,7 @@ Kibana also supports using a [dev container](https://containers.dev/) which can 1. You should see the Kibana repo and your terminal will be inside the container. You can develop as normal now, including running `yarn es` from inside the container. ### Customizing the Dev Container + Installing any extra extensions or making adjustments to the OS environment inside the container will not have an effect on your local OS or VS Code installation. Editing the `devcontainer.json` or `.devcontainer/Dockerfile` should be reserved for changes to all dev environments. ### FIPS Mode @@ -116,4 +117,9 @@ Installing any extra extensions or making adjustments to the OS environment insi The dev container is pre-configured to run Kibana in FIPS mode if needed. Simply change the `.env` file to `FIPS=1` and reopen your terminal. There should be a log message in your terminal which indicates `FIPS mode enabled`. ### Troubleshooting -- Sometimes when rebuilding the container, there will be an error message that it failed. Usually hitting retry will fix this, and is only related to VS Code trying to reconnect to the container too quickly. \ No newline at end of file + +- Sometimes when rebuilding the container, there will be an error message that it failed. Usually hitting retry will fix this, and is only related to VS Code trying to reconnect to the container too quickly. + +### Limitations + +- Git worktrees are not supported when using the repo from the Local Filesystem. [VSCode issue](https://github.com/microsoft/vscode/issues/68038) for tracking, and a possible workaround though it is untested. \ No newline at end of file diff --git a/dev_docs/nav-kibana-dev.docnav.json b/dev_docs/nav-kibana-dev.docnav.json index 2a9893898e8c5..dc8a4373f5450 100644 --- a/dev_docs/nav-kibana-dev.docnav.json +++ b/dev_docs/nav-kibana-dev.docnav.json @@ -136,10 +136,6 @@ }, { "id": "kibDevDocsEmbeddables" - }, - { - "id": "kibCloudExperimentsPlugin", - "label": "A/B testing on Elastic Cloud" } ] }, @@ -205,6 +201,10 @@ }, { "id": "kibDevTutorialCcsSetup" + }, + { + "id": "kibFeatureFlagsService", + "label": "Feature Flags" } ] }, @@ -646,4 +646,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/dev_docs/tutorials/performance/adding_performance_journey.mdx b/dev_docs/tutorials/performance/adding_performance_journey.mdx index 2f7f37452c285..a9c4fe7ef6bc5 100644 --- a/dev_docs/tutorials/performance/adding_performance_journey.mdx +++ b/dev_docs/tutorials/performance/adding_performance_journey.mdx @@ -89,6 +89,27 @@ simulate real life internet connection. This means that all requests have a fixe In order to keep track on performance metrics stability, journeys are run on main branch with a scheduled interval. Bare metal machine is used to produce results as stable and reproducible as possible. +#### Running subset of journeys for the PR + +Some code changes might affect the Kibana performance and it might be benefitial to run relevant journeys against the PR +and compare performance metrics vs. the ones on main branch. + +In oder to trigger the build for Kibana PR, you can follow these steps: + +- Create a new kibana-single-user-performance [build](https://buildkite.com/elastic/kibana-single-user-performance#new) +- Provide the following arguments: + - Branch: `refs/pull//head` + - Under Options, set the environment variable: `JOURNEYS_GROUP=` + +Currently supported journey groups: + +- kibanaStartAndLoad +- crud +- dashboard +- discover +- maps +- ml + #### Machine specifications All benchmarks are run on bare-metal machines with the [following specifications](https://www.hetzner.com/dedicated-rootserver/ex100): diff --git a/docs/developer/plugin-list.asciidoc b/docs/developer/plugin-list.asciidoc index 7e31cd50aeb81..38fc136ef1fac 100644 --- a/docs/developer/plugin-list.asciidoc +++ b/docs/developer/plugin-list.asciidoc @@ -499,8 +499,8 @@ The plugin exposes the static DefaultEditorController class to consume. |{kib-repo}blob/{branch}/x-pack/plugins/cloud_integrations/cloud_experiments/README.mdx[cloudExperiments] -|[!WARNING] -These APIs are deprecated and should not be used as we're working on a replacement Core Feature Flags Service that will arrive soon. +|[!NOTE] +This plugin no-longer exposes any evaluation APIs. Refer to for more information about how to interact with feature flags. |{kib-repo}blob/{branch}/x-pack/plugins/cloud_integrations/cloud_full_story/README.md[cloudFullStory] diff --git a/docs/osquery/exported-fields-reference.asciidoc b/docs/osquery/exported-fields-reference.asciidoc index 99cb79e874754..4a09e998a1a18 100644 --- a/docs/osquery/exported-fields-reference.asciidoc +++ b/docs/osquery/exported-fields-reference.asciidoc @@ -4578,7 +4578,7 @@ For more information about osquery tables, see the https://osquery.io/schema[osq *process* - keyword, text.text -* _alf_explicit_auths.process_ - Process name explicitly allowed +* _alf_explicit_auths.process_ - Process name that is explicitly allowed * _unified_log.process_ - the name of the process that made the entry *process_being_tapped* - keyword, number.long diff --git a/examples/controls_example/public/app/control_group_renderer_examples/edit_example.tsx b/examples/controls_example/public/app/control_group_renderer_examples/edit_example.tsx index d98b3cb3a041b..cf5a76956c36d 100644 --- a/examples/controls_example/public/app/control_group_renderer_examples/edit_example.tsx +++ b/examples/controls_example/public/app/control_group_renderer_examples/edit_example.tsx @@ -9,6 +9,7 @@ import { pickBy } from 'lodash'; import React, { useEffect, useState } from 'react'; + import { EuiButton, EuiButtonEmpty, @@ -16,20 +17,24 @@ import { EuiFlexGroup, EuiFlexItem, EuiPanel, + EuiSkeletonRectangle, EuiSpacer, EuiText, EuiTitle, - EuiSkeletonRectangle, } from '@elastic/eui'; -import { ViewMode } from '@kbn/embeddable-plugin/public'; -import { OPTIONS_LIST_CONTROL, RANGE_SLIDER_CONTROL } from '@kbn/controls-plugin/common'; -import { ControlGroupRuntimeState, ControlStateTransform } from '@kbn/controls-plugin/public'; +import { + OPTIONS_LIST_CONTROL, + RANGE_SLIDER_CONTROL, + type ControlGroupRuntimeState, +} from '@kbn/controls-plugin/common'; import { ACTION_DELETE_CONTROL, ACTION_EDIT_CONTROL, ControlGroupRenderer, + ControlGroupRendererApi, + type ControlStateTransform, } from '@kbn/controls-plugin/public'; -import { ControlGroupRendererApi } from '@kbn/controls-plugin/public'; +import { ViewMode } from '@kbn/embeddable-plugin/public'; const INPUT_KEY = 'kbnControls:saveExample:input'; diff --git a/examples/controls_example/public/app/control_group_renderer_examples/search_example.tsx b/examples/controls_example/public/app/control_group_renderer_examples/search_example.tsx index ed9a0403d449b..2325840c21927 100644 --- a/examples/controls_example/public/app/control_group_renderer_examples/search_example.tsx +++ b/examples/controls_example/public/app/control_group_renderer_examples/search_example.tsx @@ -8,12 +8,9 @@ */ import React, { useEffect, useState } from 'react'; -import { v4 as uuidv4 } from 'uuid'; import { lastValueFrom } from 'rxjs'; -import type { DataPublicPluginStart } from '@kbn/data-plugin/public'; -import type { DataView } from '@kbn/data-views-plugin/public'; -import type { NavigationPublicPluginStart } from '@kbn/navigation-plugin/public'; -import type { Filter, Query, TimeRange } from '@kbn/es-query'; +import { v4 as uuidv4 } from 'uuid'; + import { EuiCallOut, EuiLoadingSpinner, @@ -23,6 +20,11 @@ import { EuiTitle, } from '@elastic/eui'; import { ControlGroupRenderer, ControlGroupRendererApi } from '@kbn/controls-plugin/public'; +import type { DataPublicPluginStart } from '@kbn/data-plugin/public'; +import type { DataView } from '@kbn/data-views-plugin/public'; +import type { Filter, Query, TimeRange } from '@kbn/es-query'; +import type { NavigationPublicPluginStart } from '@kbn/navigation-plugin/public'; + import { PLUGIN_ID } from '../../constants'; interface Props { diff --git a/examples/controls_example/public/app/react_control_example/runtime_control_group_state.ts b/examples/controls_example/public/app/react_control_example/runtime_control_group_state.ts index a2f811a54253c..c5975a65842ba 100644 --- a/examples/controls_example/public/app/react_control_example/runtime_control_group_state.ts +++ b/examples/controls_example/public/app/react_control_example/runtime_control_group_state.ts @@ -7,7 +7,7 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { ControlGroupRuntimeState } from '@kbn/controls-plugin/public'; +import { ControlGroupRuntimeState } from '@kbn/controls-plugin/common'; const RUNTIME_STATE_SESSION_STORAGE_KEY = 'kibana.examples.controls.reactControlExample.controlGroupRuntimeState'; diff --git a/examples/controls_example/public/app/react_control_example/serialized_control_group_state.ts b/examples/controls_example/public/app/react_control_example/serialized_control_group_state.ts index e9e5b070db2bc..3d6487cdc7cba 100644 --- a/examples/controls_example/public/app/react_control_example/serialized_control_group_state.ts +++ b/examples/controls_example/public/app/react_control_example/serialized_control_group_state.ts @@ -7,8 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { SerializedPanelState } from '@kbn/presentation-containers'; -import { ControlGroupSerializedState } from '@kbn/controls-plugin/public'; +import type { SerializedPanelState } from '@kbn/presentation-containers'; +import type { ControlGroupSerializedState } from '@kbn/controls-plugin/common'; import { OPTIONS_LIST_CONTROL, RANGE_SLIDER_CONTROL, diff --git a/examples/discover_customization_examples/public/plugin.tsx b/examples/discover_customization_examples/public/plugin.tsx index c80224422bed8..7c35287b843ba 100644 --- a/examples/discover_customization_examples/public/plugin.tsx +++ b/examples/discover_customization_examples/public/plugin.tsx @@ -28,7 +28,7 @@ import ReactDOM from 'react-dom'; import useObservable from 'react-use/lib/useObservable'; import { ControlGroupRendererApi, ControlGroupRenderer } from '@kbn/controls-plugin/public'; import { css } from '@emotion/react'; -import type { ControlsPanels } from '@kbn/controls-plugin/common'; +import type { ControlPanelsState } from '@kbn/controls-plugin/common'; import { Route, Router, Routes } from '@kbn/shared-ux-router'; import { I18nProvider } from '@kbn/i18n-react'; import { KibanaThemeProvider } from '@kbn/react-kibana-context-theme'; @@ -357,7 +357,7 @@ export class DiscoverCustomizationExamplesPlugin implements Plugin { } const stateSubscription = stateStorage - .change$('controlPanels') + .change$('controlPanels') .subscribe((panels) => controlGroupAPI.updateInput({ initialChildControlState: panels ?? undefined }) ); @@ -410,7 +410,7 @@ export class DiscoverCustomizationExamplesPlugin implements Plugin { { - const panels = stateStorage.get('controlPanels'); + const panels = stateStorage.get('controlPanels'); if (!panels) { builder.addOptionsListControl(initialState, { diff --git a/examples/embeddable_examples/public/app/presentation_container_example/page_api.ts b/examples/embeddable_examples/public/app/presentation_container_example/page_api.ts index a2e4114bf59a8..517f0534993ef 100644 --- a/examples/embeddable_examples/public/app/presentation_container_example/page_api.ts +++ b/examples/embeddable_examples/public/app/presentation_container_example/page_api.ts @@ -198,10 +198,6 @@ export function getPageApi() { executionContext: { type: 'presentationContainerEmbeddableExample', }, - getAllDataViews: () => { - // TODO remove once dashboard converted to API and use `PublishesDataViews` interface - return []; - }, getPanelCount: () => { return panels$.value.length; }, diff --git a/examples/embeddable_examples/public/app/presentation_container_example/types.ts b/examples/embeddable_examples/public/app/presentation_container_example/types.ts index 66ac415ffebbe..c3530ba71dbcf 100644 --- a/examples/embeddable_examples/public/app/presentation_container_example/types.ts +++ b/examples/embeddable_examples/public/app/presentation_container_example/types.ts @@ -7,7 +7,6 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import type { DataView } from '@kbn/data-views-plugin/public'; import { TimeRange } from '@kbn/es-query'; import { CanAddNewPanel, @@ -36,9 +35,7 @@ export type PageApi = PresentationContainer & PublishesViewMode & PublishesReload & PublishesTimeRange & - PublishesUnsavedChanges & { - getAllDataViews: () => DataView[]; - }; + PublishesUnsavedChanges; export interface LastSavedState { timeRange: TimeRange; diff --git a/examples/feature_flags_example/README.md b/examples/feature_flags_example/README.md new file mode 100755 index 0000000000000..54ecd4126683d --- /dev/null +++ b/examples/feature_flags_example/README.md @@ -0,0 +1,5 @@ +# featureFlagsExample + +This plugin's goal is to demonstrate how to use the core feature flags service. + +Refer to [the docs](../../packages/core/feature-flags/README.mdx) to know more. diff --git a/examples/feature_flags_example/common/feature_flags.ts b/examples/feature_flags_example/common/feature_flags.ts new file mode 100644 index 0000000000000..fcff25bbd2c42 --- /dev/null +++ b/examples/feature_flags_example/common/feature_flags.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +export const FeatureFlagExampleBoolean = 'example-boolean'; +export const FeatureFlagExampleString = 'example-string'; +export const FeatureFlagExampleNumber = 'example-number'; diff --git a/examples/feature_flags_example/common/index.ts b/examples/feature_flags_example/common/index.ts new file mode 100644 index 0000000000000..37bde8e9843e1 --- /dev/null +++ b/examples/feature_flags_example/common/index.ts @@ -0,0 +1,11 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +export const PLUGIN_ID = 'featureFlagsExample'; +export const PLUGIN_NAME = 'Feature Flags Example'; diff --git a/examples/feature_flags_example/kibana.jsonc b/examples/feature_flags_example/kibana.jsonc new file mode 100644 index 0000000000000..c2a855723bdac --- /dev/null +++ b/examples/feature_flags_example/kibana.jsonc @@ -0,0 +1,13 @@ +{ + "type": "plugin", + "id": "@kbn/feature-flags-example-plugin", + "owner": "@elastic/kibana-core", + "description": "Plugin that shows how to make use of the feature flags core service.", + "plugin": { + "id": "featureFlagsExample", + "server": true, + "browser": true, + "requiredPlugins": ["developerExamples"], + "optionalPlugins": [] + } +} diff --git a/examples/feature_flags_example/public/application.tsx b/examples/feature_flags_example/public/application.tsx new file mode 100644 index 0000000000000..eab558d9301bd --- /dev/null +++ b/examples/feature_flags_example/public/application.tsx @@ -0,0 +1,33 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import ReactDOM from 'react-dom'; +import { AppMountParameters, CoreStart } from '@kbn/core/public'; +import { KibanaPageTemplate } from '@kbn/shared-ux-page-kibana-template'; +import { KibanaRootContextProvider } from '@kbn/react-kibana-context-root'; +import { FeatureFlagsExampleApp } from './components/app'; + +export const renderApp = (coreStart: CoreStart, { element }: AppMountParameters) => { + const { notifications, http, featureFlags } = coreStart; + ReactDOM.render( + + + + + , + element + ); + + return () => ReactDOM.unmountComponentAtNode(element); +}; diff --git a/examples/feature_flags_example/public/components/app.tsx b/examples/feature_flags_example/public/components/app.tsx new file mode 100644 index 0000000000000..432e7dc348abc --- /dev/null +++ b/examples/feature_flags_example/public/components/app.tsx @@ -0,0 +1,91 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { + EuiHorizontalRule, + EuiPageTemplate, + EuiTitle, + EuiText, + EuiLink, + EuiListGroup, + EuiListGroupItem, +} from '@elastic/eui'; +import type { CoreStart, FeatureFlagsStart } from '@kbn/core/public'; + +import useObservable from 'react-use/lib/useObservable'; +import { + FeatureFlagExampleBoolean, + FeatureFlagExampleNumber, + FeatureFlagExampleString, +} from '../../common/feature_flags'; +import { PLUGIN_NAME } from '../../common'; + +interface FeatureFlagsExampleAppDeps { + featureFlags: FeatureFlagsStart; + notifications: CoreStart['notifications']; + http: CoreStart['http']; +} + +export const FeatureFlagsExampleApp = ({ featureFlags }: FeatureFlagsExampleAppDeps) => { + // Fetching the feature flags synchronously + const bool = featureFlags.getBooleanValue(FeatureFlagExampleBoolean, false); + const str = featureFlags.getStringValue(FeatureFlagExampleString, 'red'); + const num = featureFlags.getNumberValue(FeatureFlagExampleNumber, 1); + + // Use React Hooks to observe feature flags changes + const bool$ = useObservable(featureFlags.getBooleanValue$(FeatureFlagExampleBoolean, false)); + const str$ = useObservable(featureFlags.getStringValue$(FeatureFlagExampleString, 'red')); + const num$ = useObservable(featureFlags.getNumberValue$(FeatureFlagExampleNumber, 1)); + + return ( + <> + + + +

{PLUGIN_NAME}

+
+
+ + +

Demo of the feature flags service

+
+ +

+ To learn more, refer to{' '} + + the docs + + . +

+ + +

+ The feature flags are: + + + +

+
+ +

+ The observed feature flags are: + + + +

+
+
+
+
+ + ); +}; diff --git a/examples/feature_flags_example/public/index.ts b/examples/feature_flags_example/public/index.ts new file mode 100644 index 0000000000000..9324fbb56bc2e --- /dev/null +++ b/examples/feature_flags_example/public/index.ts @@ -0,0 +1,14 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { FeatureFlagsExamplePlugin } from './plugin'; + +export function plugin() { + return new FeatureFlagsExamplePlugin(); +} diff --git a/examples/feature_flags_example/public/plugin.ts b/examples/feature_flags_example/public/plugin.ts new file mode 100644 index 0000000000000..915c40dcaafe8 --- /dev/null +++ b/examples/feature_flags_example/public/plugin.ts @@ -0,0 +1,40 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { AppMountParameters, CoreSetup, CoreStart, Plugin } from '@kbn/core/public'; +import { AppPluginSetupDependencies } from './types'; +import { PLUGIN_NAME } from '../common'; + +export class FeatureFlagsExamplePlugin implements Plugin { + public setup(core: CoreSetup, deps: AppPluginSetupDependencies) { + // Register an application into the side navigation menu + core.application.register({ + id: 'featureFlagsExample', + title: PLUGIN_NAME, + async mount(params: AppMountParameters) { + // Load application bundle + const { renderApp } = await import('./application'); + // Get start services as specified in kibana.json + const [coreStart] = await core.getStartServices(); + // Render the application + return renderApp(coreStart, params); + }, + }); + + deps.developerExamples.register({ + appId: 'featureFlagsExample', + title: PLUGIN_NAME, + description: 'Plugin that shows how to make use of the feature flags core service.', + }); + } + + public start(core: CoreStart) {} + + public stop() {} +} diff --git a/src/plugins/controls/public/services/embeddable/types.ts b/examples/feature_flags_example/public/types.ts similarity index 72% rename from src/plugins/controls/public/services/embeddable/types.ts rename to examples/feature_flags_example/public/types.ts index 917f03fb55e9b..7f3f7107a1385 100644 --- a/src/plugins/controls/public/services/embeddable/types.ts +++ b/examples/feature_flags_example/public/types.ts @@ -7,8 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { EmbeddableStart } from '@kbn/embeddable-plugin/public'; +import type { DeveloperExamplesSetup } from '@kbn/developer-examples-plugin/public'; -export interface ControlsEmbeddableService { - getEmbeddableFactory: EmbeddableStart['getEmbeddableFactory']; +export interface AppPluginSetupDependencies { + developerExamples: DeveloperExamplesSetup; } diff --git a/examples/feature_flags_example/server/index.ts b/examples/feature_flags_example/server/index.ts new file mode 100644 index 0000000000000..ad88372a7e11e --- /dev/null +++ b/examples/feature_flags_example/server/index.ts @@ -0,0 +1,77 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { FeatureFlagDefinitions } from '@kbn/core-feature-flags-server'; +import type { PluginInitializerContext } from '@kbn/core-plugins-server'; +import { + FeatureFlagExampleBoolean, + FeatureFlagExampleNumber, + FeatureFlagExampleString, +} from '../common/feature_flags'; + +export const featureFlags: FeatureFlagDefinitions = [ + { + key: FeatureFlagExampleBoolean, + name: 'Example boolean', + description: 'This is a demo of a boolean flag', + tags: ['example', 'my-plugin'], + variationType: 'boolean', + variations: [ + { + name: 'On', + description: 'Auto-hides the bar', + value: true, + }, + { + name: 'Off', + description: 'Static always-on', + value: false, + }, + ], + }, + { + key: FeatureFlagExampleString, + name: 'Example string', + description: 'This is a demo of a string flag', + tags: ['example', 'my-plugin'], + variationType: 'string', + variations: [ + { + name: 'Pink', + value: '#D75489', + }, + { + name: 'Turquoise', + value: '#65BAAF', + }, + ], + }, + { + key: FeatureFlagExampleNumber, + name: 'Example Number', + description: 'This is a demo of a number flag', + tags: ['example', 'my-plugin'], + variationType: 'number', + variations: [ + { + name: 'Five', + value: 5, + }, + { + name: 'Ten', + value: 10, + }, + ], + }, +]; + +export async function plugin(initializerContext: PluginInitializerContext) { + const { FeatureFlagsExamplePlugin } = await import('./plugin'); + return new FeatureFlagsExamplePlugin(initializerContext); +} diff --git a/examples/feature_flags_example/server/plugin.ts b/examples/feature_flags_example/server/plugin.ts new file mode 100644 index 0000000000000..3abd4554eb335 --- /dev/null +++ b/examples/feature_flags_example/server/plugin.ts @@ -0,0 +1,69 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { + PluginInitializerContext, + CoreSetup, + CoreStart, + Plugin, + Logger, +} from '@kbn/core/server'; +import { combineLatest } from 'rxjs'; + +import { + FeatureFlagExampleBoolean, + FeatureFlagExampleNumber, + FeatureFlagExampleString, +} from '../common/feature_flags'; +import { defineRoutes } from './routes'; + +export class FeatureFlagsExamplePlugin implements Plugin { + private readonly logger: Logger; + + constructor(initializerContext: PluginInitializerContext) { + this.logger = initializerContext.logger.get(); + } + + public setup(core: CoreSetup) { + const router = core.http.createRouter(); + + // Register server side APIs + defineRoutes(router); + } + + public start(core: CoreStart) { + // Promise form: when we need to fetch it once, like in an HTTP request + void Promise.all([ + core.featureFlags.getBooleanValue(FeatureFlagExampleBoolean, false), + core.featureFlags.getStringValue(FeatureFlagExampleString, 'white'), + core.featureFlags.getNumberValue(FeatureFlagExampleNumber, 1), + ]).then(([bool, str, num]) => { + this.logger.info(`The feature flags are: + - ${FeatureFlagExampleBoolean}: ${bool} + - ${FeatureFlagExampleString}: ${str} + - ${FeatureFlagExampleNumber}: ${num} + `); + }); + + // Observable form: when we need to react to the changes + combineLatest([ + core.featureFlags.getBooleanValue$(FeatureFlagExampleBoolean, false), + core.featureFlags.getStringValue$(FeatureFlagExampleString, 'red'), + core.featureFlags.getNumberValue$(FeatureFlagExampleNumber, 1), + ]).subscribe(([bool, str, num]) => { + this.logger.info(`The observed feature flags are: + - ${FeatureFlagExampleBoolean}: ${bool} + - ${FeatureFlagExampleString}: ${str} + - ${FeatureFlagExampleNumber}: ${num} + `); + }); + } + + public stop() {} +} diff --git a/examples/feature_flags_example/server/routes/index.ts b/examples/feature_flags_example/server/routes/index.ts new file mode 100644 index 0000000000000..97ce19ec9981b --- /dev/null +++ b/examples/feature_flags_example/server/routes/index.ts @@ -0,0 +1,44 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { IRouter } from '@kbn/core/server'; +import { schema } from '@kbn/config-schema'; +import { FeatureFlagExampleNumber } from '../../common/feature_flags'; + +export function defineRoutes(router: IRouter) { + router.versioned + .get({ + path: '/api/feature_flags_example/example', + access: 'public', + }) + .addVersion( + { + version: '2023-10-31', + validate: { + response: { + 200: { + body: () => + schema.object({ + number: schema.number(), + }), + }, + }, + }, + }, + async (context, request, response) => { + const { featureFlags } = await context.core; + + return response.ok({ + body: { + number: await featureFlags.getNumberValue(FeatureFlagExampleNumber, 1), + }, + }); + } + ); +} diff --git a/examples/feature_flags_example/tsconfig.json b/examples/feature_flags_example/tsconfig.json new file mode 100644 index 0000000000000..bbd68332f3d37 --- /dev/null +++ b/examples/feature_flags_example/tsconfig.json @@ -0,0 +1,24 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types" + }, + "include": [ + "index.ts", + "common/**/*.ts", + "public/**/*.ts", + "public/**/*.tsx", + "server/**/*.ts", + "../../typings/**/*" + ], + "exclude": ["target/**/*"], + "kbn_references": [ + "@kbn/core", + "@kbn/shared-ux-page-kibana-template", + "@kbn/react-kibana-context-root", + "@kbn/core-feature-flags-server", + "@kbn/core-plugins-server", + "@kbn/config-schema", + "@kbn/developer-examples-plugin", + ] +} diff --git a/examples/portable_dashboards_example/public/app.tsx b/examples/portable_dashboards_example/public/app.tsx index fd24fc607d06d..c68b612c31193 100644 --- a/examples/portable_dashboards_example/public/app.tsx +++ b/examples/portable_dashboards_example/public/app.tsx @@ -12,55 +12,65 @@ import React, { useMemo } from 'react'; import { useAsync } from 'react-use/lib'; import { Redirect } from 'react-router-dom'; import { Router, Routes, Route } from '@kbn/shared-ux-router'; -import { AppMountParameters } from '@kbn/core/public'; +import { AppMountParameters, CoreStart } from '@kbn/core/public'; import { EuiButton, EuiCallOut, EuiSpacer } from '@elastic/eui'; import { DashboardListingTable } from '@kbn/dashboard-plugin/public'; import { KibanaPageTemplate } from '@kbn/shared-ux-page-kibana-template'; -import { DualReduxExample } from './dual_redux_example'; +import { KibanaRenderContextProvider } from '@kbn/react-kibana-context-render'; +import { DualDashboardsExample } from './dual_dashboards_example'; import { StartDeps } from './plugin'; import { StaticByValueExample } from './static_by_value_example'; import { StaticByReferenceExample } from './static_by_reference_example'; -import { DynamicByReferenceExample } from './dynamically_add_panels_example'; import { DashboardWithControlsExample } from './dashboard_with_controls_example'; const DASHBOARD_DEMO_PATH = '/dashboardDemo'; const DASHBOARD_LIST_PATH = '/listingDemo'; export const renderApp = async ( + coreStart: CoreStart, { data, dashboard }: StartDeps, { element, history }: AppMountParameters ) => { ReactDOM.render( - , + , element ); return () => ReactDOM.unmountComponentAtNode(element); }; const PortableDashboardsDemos = ({ + coreStart, data, dashboard, history, }: { + coreStart: CoreStart; data: StartDeps['data']; dashboard: StartDeps['dashboard']; history: AppMountParameters['history']; }) => { return ( - - - - - - - - - - - - - + + + + + + + + + + + + + + + ); }; @@ -91,9 +101,7 @@ const DashboardsDemo = ({ <> - - - + diff --git a/examples/portable_dashboards_example/public/dashboard_with_controls_example.tsx b/examples/portable_dashboards_example/public/dashboard_with_controls_example.tsx index 205e160f2c81d..316ed8e47fb28 100644 --- a/examples/portable_dashboards_example/public/dashboard_with_controls_example.tsx +++ b/examples/portable_dashboards_example/public/dashboard_with_controls_example.tsx @@ -14,41 +14,29 @@ import type { DataView } from '@kbn/data-views-plugin/public'; import { EuiPanel, EuiSpacer, EuiText, EuiTitle } from '@elastic/eui'; import { controlGroupStateBuilder } from '@kbn/controls-plugin/public'; import { - AwaitingDashboardAPI, + DashboardApi, DashboardRenderer, DashboardCreationOptions, } from '@kbn/dashboard-plugin/public'; -import { apiHasUniqueId } from '@kbn/presentation-publishing'; import { FILTER_DEBUGGER_EMBEDDABLE_ID } from './constants'; export const DashboardWithControlsExample = ({ dataView }: { dataView: DataView }) => { - const [dashboard, setDashboard] = useState(); + const [dashboard, setDashboard] = useState(); // add a filter debugger panel as soon as the dashboard becomes available useEffect(() => { if (!dashboard) return; - (async () => { - const api = await dashboard.addNewPanel( + dashboard + .addNewPanel( { panelType: FILTER_DEBUGGER_EMBEDDABLE_ID, initialState: {}, }, true - ); - if (!apiHasUniqueId(api)) { - return; - } - const prevPanelState = dashboard.getExplicitInput().panels[api.uuid]; - // resize the new panel so that it fills up the entire width of the dashboard - dashboard.updateInput({ - panels: { - [api.uuid]: { - ...prevPanelState, - gridData: { i: api.uuid, x: 0, y: 0, w: 48, h: 12 }, - }, - }, + ) + .catch(() => { + // ignore error - its an example }); - })(); }, [dashboard]); return ( @@ -88,7 +76,7 @@ export const DashboardWithControlsExample = ({ dataView }: { dataView: DataView }), }; }} - ref={setDashboard} + onApiAvailable={setDashboard} /> diff --git a/examples/portable_dashboards_example/public/dual_redux_example.tsx b/examples/portable_dashboards_example/public/dual_dashboards_example.tsx similarity index 62% rename from examples/portable_dashboards_example/public/dual_redux_example.tsx rename to examples/portable_dashboards_example/public/dual_dashboards_example.tsx index 66544067ca831..2e4fcbd130e23 100644 --- a/examples/portable_dashboards_example/public/dual_redux_example.tsx +++ b/examples/portable_dashboards_example/public/dual_dashboards_example.tsx @@ -18,19 +18,16 @@ import { EuiText, EuiTitle, } from '@elastic/eui'; -import { - AwaitingDashboardAPI, - DashboardAPI, - DashboardRenderer, -} from '@kbn/dashboard-plugin/public'; +import { DashboardApi, DashboardRenderer } from '@kbn/dashboard-plugin/public'; import { ViewMode } from '@kbn/embeddable-plugin/public'; +import { useStateFromPublishingSubject } from '@kbn/presentation-publishing'; -export const DualReduxExample = () => { - const [firstDashboardContainer, setFirstDashboardContainer] = useState(); - const [secondDashboardContainer, setSecondDashboardContainer] = useState(); +export const DualDashboardsExample = () => { + const [firstDashboardApi, setFirstDashboardApi] = useState(); + const [secondDashboardApi, setSecondDashboardApi] = useState(); - const ButtonControls = ({ dashboard }: { dashboard: DashboardAPI }) => { - const viewMode = dashboard.select((state) => state.explicitInput.viewMode); + const ButtonControls = ({ dashboardApi }: { dashboardApi: DashboardApi }) => { + const viewMode = useStateFromPublishingSubject(dashboardApi.viewMode); return ( { }, ]} idSelected={viewMode} - onChange={(id, value) => dashboard.dispatch.setViewMode(value)} + onChange={(id, value) => dashboardApi.setViewMode(value)} type="single" /> ); @@ -57,12 +54,12 @@ export const DualReduxExample = () => { return ( <> -

Dual redux example

+

Dual dashboards example

- Use the redux contexts from two different dashboard containers to independently set the - view mode of each dashboard. + Use the APIs from different dashboards to independently set the view mode of each + dashboard.

@@ -73,18 +70,18 @@ export const DualReduxExample = () => {

Dashboard #1

- {firstDashboardContainer && } + {firstDashboardApi && } - +

Dashboard #2

- {secondDashboardContainer && } + {secondDashboardApi && } - +
diff --git a/examples/portable_dashboards_example/public/dynamically_add_panels_example.tsx b/examples/portable_dashboards_example/public/dynamically_add_panels_example.tsx deleted file mode 100644 index 3816beea96341..0000000000000 --- a/examples/portable_dashboards_example/public/dynamically_add_panels_example.tsx +++ /dev/null @@ -1,151 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import React, { useMemo, useState } from 'react'; - -import { AwaitingDashboardAPI, DashboardRenderer } from '@kbn/dashboard-plugin/public'; -import { - EuiButton, - EuiFlexGroup, - EuiFlexItem, - EuiPanel, - EuiSpacer, - EuiText, - EuiTitle, -} from '@elastic/eui'; -import { - VisualizeEmbeddable, - VisualizeInput, - VisualizeOutput, -} from '@kbn/visualizations-plugin/public/legacy/embeddable/visualize_embeddable'; - -const INPUT_KEY = 'portableDashboard:saveExample:input'; - -export const DynamicByReferenceExample = () => { - const [isSaving, setIsSaving] = useState(false); - const [dashboard, setdashboard] = useState(); - - const onSave = async () => { - if (!dashboard) return; - setIsSaving(true); - localStorage.setItem(INPUT_KEY, JSON.stringify(dashboard.getInput())); - // simulated async save await - await new Promise((resolve) => setTimeout(resolve, 1000)); - setIsSaving(false); - }; - - const getPersistableInput = () => { - let input = {}; - const inputAsString = localStorage.getItem(INPUT_KEY); - if (inputAsString) { - try { - input = JSON.parse(inputAsString); - } catch (e) { - // ignore parse errors - } - return input; - } - }; - - const resetPersistableInput = () => { - localStorage.removeItem(INPUT_KEY); - if (dashboard) { - const children = dashboard.getChildIds(); - children.map((childId) => { - dashboard.removeEmbeddable(childId); - }); - } - }; - - const addByValue = async () => { - if (!dashboard) return; - dashboard.addNewEmbeddable( - 'visualization', - { - title: 'Sample Markdown Vis', - savedVis: { - type: 'markdown', - title: '', - data: { aggs: [], searchSource: {} }, - params: { - fontSize: 12, - openLinksInNewTab: false, - markdown: '### By Value Visualization\nThis is a sample by value panel.', - }, - }, - } - ); - }; - - const disableButtons = useMemo(() => { - return !dashboard || isSaving; - }, [dashboard, isSaving]); - - return ( - <> - -

Edit and save example

-
- -

Customize the dashboard and persist the state to local storage.

-
- - - - - - - - Add visualization by value - - - - dashboard?.addFromLibrary()} isDisabled={disableButtons}> - Add visualization from library - - - - - - - - - Save to local storage - - - - - Empty dashboard and reset local storage - - - - - - - - { - const persistedInput = getPersistableInput(); - return { - getInitialInput: () => ({ - ...persistedInput, - timeRange: { from: 'now-30d', to: 'now' }, // need to set the time range for the by value vis - }), - }; - }} - ref={setdashboard} - /> - - - ); -}; diff --git a/examples/portable_dashboards_example/public/plugin.tsx b/examples/portable_dashboards_example/public/plugin.tsx index b356944393548..2974de1c028ab 100644 --- a/examples/portable_dashboards_example/public/plugin.tsx +++ b/examples/portable_dashboards_example/public/plugin.tsx @@ -7,7 +7,7 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { AppMountParameters, CoreSetup, Plugin } from '@kbn/core/public'; +import { AppMountParameters, CoreSetup, CoreStart, Plugin } from '@kbn/core/public'; import { DashboardStart } from '@kbn/dashboard-plugin/public'; import type { DataPublicPluginStart } from '@kbn/data-plugin/public'; import type { DeveloperExamplesSetup } from '@kbn/developer-examples-plugin/public'; @@ -34,9 +34,9 @@ export class PortableDashboardsExamplePlugin implements Plugin ({ + width: 48, + height: 12, + })); + } public stop() {} } diff --git a/examples/portable_dashboards_example/tsconfig.json b/examples/portable_dashboards_example/tsconfig.json index e15af91765497..19f3d4690884b 100644 --- a/examples/portable_dashboards_example/tsconfig.json +++ b/examples/portable_dashboards_example/tsconfig.json @@ -19,11 +19,11 @@ "@kbn/navigation-plugin", "@kbn/embeddable-plugin", "@kbn/data-views-plugin", - "@kbn/visualizations-plugin", "@kbn/developer-examples-plugin", "@kbn/shared-ux-page-kibana-template", "@kbn/controls-plugin", "@kbn/shared-ux-router", - "@kbn/presentation-publishing" + "@kbn/presentation-publishing", + "@kbn/react-kibana-context-render" ] } diff --git a/oas_docs/bundle.json b/oas_docs/bundle.json index f810ef1c95d8a..5fd690a2f6ceb 100644 --- a/oas_docs/bundle.json +++ b/oas_docs/bundle.json @@ -433,6 +433,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -518,6 +568,56 @@ ], "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -592,6 +692,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -659,6 +809,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -742,6 +942,56 @@ ], "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -776,6 +1026,7 @@ } }, { + "description": "An identifier for the connector.", "in": "path", "name": "id", "required": false, @@ -820,6 +1071,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -894,6 +1195,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -961,6 +1312,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -1092,6 +1493,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Delete a rule", @@ -1998,6 +2408,15 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Get rule details", @@ -3185,6 +3604,15 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "409": { + "description": "Indicates that the rule id is already in use." } }, "summary": "Create a rule", @@ -4355,6 +4783,18 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." + }, + "409": { + "description": "Indicates that the rule has already been updated by another user." } }, "summary": "Update a rule", @@ -4420,6 +4860,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Disable a rule", @@ -4467,6 +4916,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Enable a rule", @@ -4608,6 +5066,18 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." + }, + "409": { + "description": "Indicates that the rule has already been updated by another user." } }, "summary": "Update the API key for a rule", @@ -4664,6 +5134,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule or alert with the given ID does not exist." } }, "summary": "Mute an alert", @@ -4720,6 +5199,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule or alert with the given ID does not exist." } }, "summary": "Unmute an alert", @@ -5761,6 +6249,12 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." } }, "summary": "Get information about rules", diff --git a/oas_docs/bundle.serverless.json b/oas_docs/bundle.serverless.json index f810ef1c95d8a..5fd690a2f6ceb 100644 --- a/oas_docs/bundle.serverless.json +++ b/oas_docs/bundle.serverless.json @@ -433,6 +433,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -518,6 +568,56 @@ ], "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -592,6 +692,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -659,6 +809,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -742,6 +942,56 @@ ], "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -776,6 +1026,7 @@ } }, { + "description": "An identifier for the connector.", "in": "path", "name": "id", "required": false, @@ -820,6 +1071,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -894,6 +1195,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -961,6 +1312,56 @@ }, "responses": { "200": { + "content": { + "application/json; Elastic-Api-Version=2023-10-31": { + "schema": { + "additionalProperties": false, + "properties": { + "config": { + "additionalProperties": {}, + "type": "object" + }, + "connector_type_id": { + "description": "The connector type identifier.", + "type": "string" + }, + "id": { + "description": "The identifier for the connector.", + "type": "string" + }, + "is_deprecated": { + "description": "Indicates whether the connector is deprecated.", + "type": "boolean" + }, + "is_missing_secrets": { + "description": "Indicates whether the connector is missing secrets.", + "type": "boolean" + }, + "is_preconfigured": { + "description": "Indicates whether the connector is preconfigured. If true, the `config` and `is_missing_secrets` properties are omitted from the response. ", + "type": "boolean" + }, + "is_system_action": { + "description": "Indicates whether the connector is used for system actions.", + "type": "boolean" + }, + "name": { + "description": " The name of the rule.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "connector_type_id", + "is_preconfigured", + "is_deprecated", + "is_system_action" + ], + "type": "object" + } + } + }, "description": "Indicates a successful call." } }, @@ -1092,6 +1493,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Delete a rule", @@ -1998,6 +2408,15 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Get rule details", @@ -3185,6 +3604,15 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "409": { + "description": "Indicates that the rule id is already in use." } }, "summary": "Create a rule", @@ -4355,6 +4783,18 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." + }, + "409": { + "description": "Indicates that the rule has already been updated by another user." } }, "summary": "Update a rule", @@ -4420,6 +4860,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Disable a rule", @@ -4467,6 +4916,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." } }, "summary": "Enable a rule", @@ -4608,6 +5066,18 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule with the given ID does not exist." + }, + "409": { + "description": "Indicates that the rule has already been updated by another user." } }, "summary": "Update the API key for a rule", @@ -4664,6 +5134,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule or alert with the given ID does not exist." } }, "summary": "Mute an alert", @@ -4720,6 +5199,15 @@ "responses": { "204": { "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." + }, + "404": { + "description": "Indicates a rule or alert with the given ID does not exist." } }, "summary": "Unmute an alert", @@ -5761,6 +6249,12 @@ } }, "description": "Indicates a successful call." + }, + "400": { + "description": "Indicates an invalid schema or parameters." + }, + "403": { + "description": "Indicates that this call is forbidden." } }, "summary": "Get information about rules", diff --git a/package.json b/package.json index 5b9e8fac1fb31..24bfc1f5fe2cc 100644 --- a/package.json +++ b/package.json @@ -287,6 +287,12 @@ "@kbn/core-execution-context-server-internal": "link:packages/core/execution-context/core-execution-context-server-internal", "@kbn/core-fatal-errors-browser": "link:packages/core/fatal-errors/core-fatal-errors-browser", "@kbn/core-fatal-errors-browser-internal": "link:packages/core/fatal-errors/core-fatal-errors-browser-internal", + "@kbn/core-feature-flags-browser": "link:packages/core/feature-flags/core-feature-flags-browser", + "@kbn/core-feature-flags-browser-internal": "link:packages/core/feature-flags/core-feature-flags-browser-internal", + "@kbn/core-feature-flags-browser-mocks": "link:packages/core/feature-flags/core-feature-flags-browser-mocks", + "@kbn/core-feature-flags-server": "link:packages/core/feature-flags/core-feature-flags-server", + "@kbn/core-feature-flags-server-internal": "link:packages/core/feature-flags/core-feature-flags-server-internal", + "@kbn/core-feature-flags-server-mocks": "link:packages/core/feature-flags/core-feature-flags-server-mocks", "@kbn/core-history-block-plugin": "link:test/plugin_functional/plugins/core_history_block", "@kbn/core-http-browser": "link:packages/core/http/core-http-browser", "@kbn/core-http-browser-internal": "link:packages/core/http/core-http-browser-internal", @@ -505,6 +511,7 @@ "@kbn/expressions-explorer-plugin": "link:examples/expressions_explorer", "@kbn/expressions-plugin": "link:src/plugins/expressions", "@kbn/feature-controls-examples-plugin": "link:examples/feature_control_examples", + "@kbn/feature-flags-example-plugin": "link:examples/feature_flags_example", "@kbn/feature-usage-test-plugin": "link:x-pack/test/plugin_api_integration/plugins/feature_usage_test", "@kbn/features-plugin": "link:x-pack/plugins/features", "@kbn/fec-alerts-test-plugin": "link:x-pack/test/functional_execution_context/plugins/alerts", @@ -988,6 +995,7 @@ "@langchain/openai": "^0.1.3", "@langtrase/trace-attributes": "^3.0.8", "@launchdarkly/node-server-sdk": "^9.5.4", + "@launchdarkly/openfeature-node-server": "^1.0.0", "@loaders.gl/core": "^3.4.7", "@loaders.gl/json": "^3.4.7", "@loaders.gl/shapefile": "^3.4.7", @@ -996,7 +1004,10 @@ "@mapbox/mapbox-gl-rtl-text": "0.2.3", "@mapbox/mapbox-gl-supported": "2.0.1", "@mapbox/vector-tile": "1.3.1", - "@mswjs/http-middleware": "^0.10.1", + "@openfeature/core": "^1.4.0", + "@openfeature/launchdarkly-client-provider": "^0.3.0", + "@openfeature/server-sdk": "^1.15.1", + "@openfeature/web-sdk": "^1.2.3", "@opentelemetry/api": "^1.1.0", "@opentelemetry/api-metrics": "^0.31.0", "@opentelemetry/exporter-metrics-otlp-grpc": "^0.34.0", @@ -1119,7 +1130,7 @@ "jquery": "^3.5.0", "js-search": "^1.4.3", "js-sha256": "^0.9.0", - "js-yaml": "^3.14.1", + "js-yaml": "^4.1.0", "json-schema-to-ts": "^2.9.1", "json-stable-stringify": "^1.0.1", "json-stringify-pretty-compact": "1.2.0", @@ -1130,7 +1141,6 @@ "langchain": "^0.2.11", "langsmith": "^0.1.39", "launchdarkly-js-client-sdk": "^3.4.0", - "launchdarkly-node-server-sdk": "^7.0.3", "load-json-file": "^6.2.0", "lodash": "^4.17.21", "lru-cache": "^4.1.5", @@ -1174,7 +1184,7 @@ "pretty-ms": "6.0.0", "prop-types": "^15.8.1", "proxy-from-env": "1.0.0", - "puppeteer": "22.13.1", + "puppeteer": "23.3.1", "query-string": "^6.13.2", "rbush": "^3.0.1", "re-resizable": "^6.9.9", @@ -1464,6 +1474,7 @@ "@kbn/whereis-pkg-cli": "link:packages/kbn-whereis-pkg-cli", "@kbn/yarn-lock-validator": "link:packages/kbn-yarn-lock-validator", "@mapbox/vector-tile": "1.3.1", + "@mswjs/http-middleware": "^0.10.1", "@octokit/rest": "^17.11.2", "@parcel/watcher": "^2.1.0", "@playwright/test": "=1.46.0", @@ -1525,7 +1536,7 @@ "@types/enzyme": "^3.10.12", "@types/eslint": "^8.44.2", "@types/event-stream": "^4.0.5", - "@types/express": "^4.17.13", + "@types/express": "^4.17.21", "@types/extract-zip": "^1.6.2", "@types/faker": "^5.1.5", "@types/fetch-mock": "^7.3.1", @@ -1549,7 +1560,7 @@ "@types/jest": "^29.5.3", "@types/jquery": "^3.3.31", "@types/js-search": "^1.4.0", - "@types/js-yaml": "^3.11.1", + "@types/js-yaml": "^4.0.9", "@types/jsdom": "^20.0.1", "@types/json-schema": "^7", "@types/json-stable-stringify": "^1.0.32", @@ -1700,7 +1711,7 @@ "exit-hook": "^2.2.0", "expect": "^29.7.0", "expose-loader": "^0.7.5", - "express": "^4.19.2", + "express": "^4.21.0", "faker": "^5.1.0", "fetch-mock": "^7.3.9", "file-loader": "^4.2.0", @@ -1748,7 +1759,7 @@ "mochawesome-merge": "^4.3.0", "mock-fs": "^5.1.2", "ms-chromium-edge-driver": "^0.5.1", - "msw": "^2.4.2", + "msw": "^2.4.5", "multistream": "^4.1.0", "mutation-observer": "^1.0.3", "native-hdr-histogram": "^1.0.0", @@ -1799,9 +1810,9 @@ "swagger-ui-express": "^5.0.1", "table": "^6.8.1", "tape": "^5.0.1", - "terser": "^5.31.6", + "terser": "^5.32.0", "terser-webpack-plugin": "^4.2.3", - "tough-cookie": "^4.1.4", + "tough-cookie": "^5.0.0", "tree-kill": "^1.2.2", "ts-morph": "^15.1.0", "tsd": "^0.31.1", diff --git a/packages/cloud/connection_details/kibana/kibana_connection_details_provider.tsx b/packages/cloud/connection_details/kibana/kibana_connection_details_provider.tsx index 444ff70ff9128..d400f67993f8a 100644 --- a/packages/cloud/connection_details/kibana/kibana_connection_details_provider.tsx +++ b/packages/cloud/connection_details/kibana/kibana_connection_details_provider.tsx @@ -21,6 +21,7 @@ const createOpts = async (props: KibanaConnectionDetailsProviderProps) => { const { http, docLinks, analytics } = start.core; const locator = start.plugins?.share?.url?.locators.get('MANAGEMENT_APP_LOCATOR'); const manageKeysLink = await locator?.getUrl({ sectionId: 'security', appId: 'api_keys' }); + const elasticsearchConfig = await start.plugins?.cloud?.fetchElasticsearchConfig(); const result: ConnectionDetailsOpts = { ...options, navigateToUrl: start.core.application @@ -35,7 +36,7 @@ const createOpts = async (props: KibanaConnectionDetailsProviderProps) => { }, endpoints: { id: start.plugins?.cloud?.cloudId, - url: start.plugins?.cloud?.elasticsearchUrl, + url: elasticsearchConfig?.elasticsearchUrl, cloudIdLearMoreLink: docLinks?.links?.cloud?.beatsAndLogstashConfiguration, ...options?.endpoints, }, diff --git a/packages/cloud/deployment_details/services.tsx b/packages/cloud/deployment_details/services.tsx index d3ca0a340b600..73959627e98e6 100644 --- a/packages/cloud/deployment_details/services.tsx +++ b/packages/cloud/deployment_details/services.tsx @@ -6,8 +6,7 @@ * your election, the "Elastic License 2.0", the "GNU Affero General Public * License v3.0 only", or the "Server Side Public License, v 1". */ - -import React, { FC, PropsWithChildren, useContext } from 'react'; +import React, { FC, PropsWithChildren, useContext, useEffect } from 'react'; export interface DeploymentDetailsContextValue { cloudId?: string; @@ -58,7 +57,7 @@ export interface DeploymentDetailsKibanaDependencies { cloud: { isCloudEnabled: boolean; cloudId?: string; - elasticsearchUrl?: string; + fetchElasticsearchConfig: () => Promise<{ elasticsearchUrl?: string }>; }; /** DocLinksStart contract */ docLinks: { @@ -79,11 +78,19 @@ export interface DeploymentDetailsKibanaDependencies { export const DeploymentDetailsKibanaProvider: FC< PropsWithChildren > = ({ children, ...services }) => { + const [elasticsearchUrl, setElasticsearchUrl] = React.useState(''); + + useEffect(() => { + services.cloud.fetchElasticsearchConfig().then((config) => { + setElasticsearchUrl(config.elasticsearchUrl || ''); + }); + }, [services.cloud]); + const { core: { application: { navigateToUrl }, }, - cloud: { isCloudEnabled, cloudId, elasticsearchUrl }, + cloud: { isCloudEnabled, cloudId }, share: { url: { locators }, }, diff --git a/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.test.tsx b/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.test.tsx index 9ef4f740167fe..dc1ad36f01c5e 100644 --- a/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.test.tsx +++ b/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.test.tsx @@ -11,7 +11,7 @@ import { registerAnalyticsContextProviderMock } from './chrome_service.test.mock import { shallow, mount } from 'enzyme'; import React from 'react'; import * as Rx from 'rxjs'; -import { toArray } from 'rxjs'; +import { toArray, firstValueFrom } from 'rxjs'; import { injectedMetadataServiceMock } from '@kbn/core-injected-metadata-browser-mocks'; import { docLinksServiceMock } from '@kbn/core-doc-links-browser-mocks'; import { httpServiceMock } from '@kbn/core-http-browser-mocks'; @@ -556,6 +556,39 @@ describe('start', () => { `); }); }); + + describe('side nav', () => { + describe('isCollapsed$', () => { + it('should return false by default', async () => { + const { chrome, service } = await start(); + const isCollapsed = await firstValueFrom(chrome.sideNav.getIsCollapsed$()); + service.stop(); + expect(isCollapsed).toBe(false); + }); + + it('should read the localStorage value', async () => { + store.set('core.chrome.isSideNavCollapsed', 'true'); + const { chrome, service } = await start(); + const isCollapsed = await firstValueFrom(chrome.sideNav.getIsCollapsed$()); + service.stop(); + expect(isCollapsed).toBe(true); + }); + }); + + describe('setIsCollapsed', () => { + it('should update the isCollapsed$ observable', async () => { + const { chrome, service } = await start(); + const isCollapsed$ = chrome.sideNav.getIsCollapsed$(); + const isCollapsed = await firstValueFrom(isCollapsed$); + + chrome.sideNav.setIsCollapsed(!isCollapsed); + + const updatedIsCollapsed = await firstValueFrom(isCollapsed$); + service.stop(); + expect(updatedIsCollapsed).toBe(!isCollapsed); + }); + }); + }); }); describe('stop', () => { diff --git a/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.tsx b/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.tsx index 3eb846cc15dc8..4605dd02fd229 100644 --- a/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.tsx +++ b/packages/core/chrome/core-chrome-browser-internal/src/chrome_service.tsx @@ -54,6 +54,7 @@ import type { InternalChromeStart } from './types'; import { HeaderTopBanner } from './ui/header/header_top_banner'; const IS_LOCKED_KEY = 'core.chrome.isLocked'; +const IS_SIDENAV_COLLAPSED_KEY = 'core.chrome.isSideNavCollapsed'; const SNAPSHOT_REGEX = /-snapshot/i; interface ConstructorParams { @@ -86,7 +87,9 @@ export class ChromeService { private readonly docTitle = new DocTitleService(); private readonly projectNavigation: ProjectNavigationService; private mutationObserver: MutationObserver | undefined; - private readonly isSideNavCollapsed$ = new BehaviorSubject(true); + private readonly isSideNavCollapsed$ = new BehaviorSubject( + localStorage.getItem(IS_SIDENAV_COLLAPSED_KEY) === 'true' + ); private logger: Logger; private isServerless = false; @@ -360,6 +363,11 @@ export class ChromeService { projectNavigation.setProjectName(projectName); }; + const setIsSideNavCollapsed = (isCollapsed: boolean) => { + localStorage.setItem(IS_SIDENAV_COLLAPSED_KEY, JSON.stringify(isCollapsed)); + this.isSideNavCollapsed$.next(isCollapsed); + }; + if (!this.params.browserSupportsCsp && injectedMetadata.getCspConfig().warnLegacyBrowsers) { notifications.toasts.addWarning({ title: mountReactNode( @@ -431,9 +439,8 @@ export class ChromeService { docLinks={docLinks} kibanaVersion={injectedMetadata.getKibanaVersion()} prependBasePath={http.basePath.prepend} - toggleSideNav={(isCollapsed) => { - this.isSideNavCollapsed$.next(isCollapsed); - }} + isSideNavCollapsed$={this.isSideNavCollapsed$} + toggleSideNav={setIsSideNavCollapsed} > @@ -556,7 +563,10 @@ export class ChromeService { getBodyClasses$: () => bodyClasses$.pipe(takeUntil(this.stop$)), setChromeStyle, getChromeStyle$: () => chromeStyle$, - getIsSideNavCollapsed$: () => this.isSideNavCollapsed$.asObservable(), + sideNav: { + getIsCollapsed$: () => this.isSideNavCollapsed$.asObservable(), + setIsCollapsed: setIsSideNavCollapsed, + }, getActiveSolutionNavId$: () => projectNavigation.getActiveSolutionNavId$(), project: { setHome: setProjectHome, diff --git a/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.test.tsx b/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.test.tsx index 3e4bc7a8a1fe5..743cd1726e03e 100644 --- a/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.test.tsx +++ b/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.test.tsx @@ -35,6 +35,7 @@ describe('Header', () => { navControlsCenter$: Rx.of([]), navControlsRight$: Rx.of([]), customBranding$: Rx.of({}), + isSideNavCollapsed$: Rx.of(false), prependBasePath: (str) => `hello/world/${str}`, toggleSideNav: jest.fn(), }; diff --git a/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.tsx b/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.tsx index f3d92ff31638d..bf8b103709260 100644 --- a/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.tsx +++ b/packages/core/chrome/core-chrome-browser-internal/src/ui/project/header.tsx @@ -130,6 +130,7 @@ export interface Props { navControlsCenter$: Observable; navControlsRight$: Observable; prependBasePath: (url: string) => string; + isSideNavCollapsed$: Observable; toggleSideNav: (isCollapsed: boolean) => void; } @@ -248,7 +249,12 @@ export const ProjectHeader = ({ - {children} + + {children} + diff --git a/packages/core/chrome/core-chrome-browser-internal/src/ui/project/navigation.tsx b/packages/core/chrome/core-chrome-browser-internal/src/ui/project/navigation.tsx index 9daf99bbbfc23..a607d69fb0633 100644 --- a/packages/core/chrome/core-chrome-browser-internal/src/ui/project/navigation.tsx +++ b/packages/core/chrome/core-chrome-browser-internal/src/ui/project/navigation.tsx @@ -7,34 +7,28 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import React, { useEffect, useRef, FC, PropsWithChildren } from 'react'; +import React, { FC, PropsWithChildren } from 'react'; import { EuiCollapsibleNavBeta } from '@elastic/eui'; -import useLocalStorage from 'react-use/lib/useLocalStorage'; +import useObservable from 'react-use/lib/useObservable'; +import type { Observable } from 'rxjs'; -const LOCAL_STORAGE_IS_COLLAPSED_KEY = 'PROJECT_NAVIGATION_COLLAPSED' as const; +interface Props { + toggleSideNav: (isVisible: boolean) => void; + isSideNavCollapsed$: Observable; +} -export const ProjectNavigation: FC< - PropsWithChildren<{ toggleSideNav: (isVisible: boolean) => void }> -> = ({ children, toggleSideNav }) => { - const isMounted = useRef(false); - const [isCollapsed, setIsCollapsed] = useLocalStorage(LOCAL_STORAGE_IS_COLLAPSED_KEY, false); - const onCollapseToggle = (nextIsCollapsed: boolean) => { - setIsCollapsed(nextIsCollapsed); - toggleSideNav(nextIsCollapsed); - }; - - useEffect(() => { - if (!isMounted.current && isCollapsed !== undefined) { - toggleSideNav(isCollapsed); - } - isMounted.current = true; - }, [isCollapsed, toggleSideNav]); +export const ProjectNavigation: FC> = ({ + children, + isSideNavCollapsed$, + toggleSideNav, +}) => { + const isCollapsed = useObservable(isSideNavCollapsed$, false); return ( { setBadge: jest.fn(), getBreadcrumbs$: jest.fn(), setBreadcrumbs: jest.fn(), - getIsSideNavCollapsed$: jest.fn(), + sideNav: { + getIsCollapsed$: jest.fn(), + setIsCollapsed: jest.fn(), + }, getBreadcrumbsAppendExtension$: jest.fn(), setBreadcrumbsAppendExtension: jest.fn(), getGlobalHelpExtensionMenuLinks$: jest.fn(), @@ -94,7 +97,7 @@ const createStartContractMock = () => { startContract.getIsNavDrawerLocked$.mockReturnValue(new BehaviorSubject(false)); startContract.getBodyClasses$.mockReturnValue(new BehaviorSubject([])); startContract.hasHeaderBanner$.mockReturnValue(new BehaviorSubject(false)); - startContract.getIsSideNavCollapsed$.mockReturnValue(new BehaviorSubject(false)); + startContract.sideNav.getIsCollapsed$.mockReturnValue(new BehaviorSubject(false)); return startContract; }; diff --git a/packages/core/chrome/core-chrome-browser/src/contracts.ts b/packages/core/chrome/core-chrome-browser/src/contracts.ts index c326e7107aa2a..1e9ea66bc0920 100644 --- a/packages/core/chrome/core-chrome-browser/src/contracts.ts +++ b/packages/core/chrome/core-chrome-browser/src/contracts.ts @@ -173,10 +173,18 @@ export interface ChromeStart { */ getChromeStyle$(): Observable; - /** - * Get an observable of the current collapsed state of the side nav. - */ - getIsSideNavCollapsed$(): Observable; + sideNav: { + /** + * Get an observable of the current collapsed state of the side nav. + */ + getIsCollapsed$(): Observable; + + /** + * Set the collapsed state of the side nav. + * @param isCollapsed The collapsed state of the side nav. + */ + setIsCollapsed(isCollapsed: boolean): void; + }; /** * Get the id of the currently active project navigation or `null` otherwise. diff --git a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.test.ts b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.test.ts index 34a8bc07e0b5c..b7d7b40c49806 100644 --- a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.test.ts +++ b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.test.ts @@ -47,6 +47,7 @@ test('set correct defaults', () => { "maxSockets": 800, "password": undefined, "pingTimeout": "PT30S", + "publicBaseUrl": undefined, "requestHeadersWhitelist": Array [ "authorization", "es-client-authentication", diff --git a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.ts b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.ts index 46b7a02768e7a..93fb64baf46d0 100644 --- a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.ts +++ b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_config.ts @@ -359,6 +359,13 @@ export class ElasticsearchConfig implements IElasticsearchConfig { */ public readonly hosts: string[]; + /** + * Optional host that users can use to connect to your Elasticsearch cluster, + * this URL will be shown in Kibana as the Elasticsearch URL + */ + + public readonly publicBaseUrl?: string; + /** * List of Kibana client-side headers to send to Elasticsearch when request * scoped cluster client is used. If this is an empty array then *no* client-side @@ -473,6 +480,7 @@ export class ElasticsearchConfig implements IElasticsearchConfig { this.skipStartupConnectionCheck = rawConfig.skipStartupConnectionCheck; this.apisToRedactInLogs = rawConfig.apisToRedactInLogs; this.dnsCacheTtl = rawConfig.dnsCacheTtl; + this.publicBaseUrl = rawConfig.publicBaseUrl; const { alwaysPresentCertificate, verificationMode } = rawConfig.ssl; const { key, keyPassphrase, certificate, certificateAuthorities } = readKeyAndCerts(rawConfig); diff --git a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_route_handler_context.ts b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_route_handler_context.ts index b4be404f137af..ce45e5c11833c 100644 --- a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_route_handler_context.ts +++ b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_route_handler_context.ts @@ -15,7 +15,7 @@ import type { import type { InternalElasticsearchServiceStart } from './types'; /** - * The {@link UiSettingsRequestHandlerContext} implementation. + * The {@link ElasticsearchRequestHandlerContext} implementation. * @internal */ export class CoreElasticsearchRouteHandlerContext implements ElasticsearchRequestHandlerContext { diff --git a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_service.ts b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_service.ts index 5a3f34d0565f8..83eb04832121e 100644 --- a/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_service.ts +++ b/packages/core/elasticsearch/core-elasticsearch-server-internal/src/elasticsearch_service.ts @@ -135,6 +135,7 @@ export class ElasticsearchService agentStatsProvider: { getAgentsStats: agentManager.getAgentsStats.bind(agentManager), }, + publicBaseUrl: config.publicBaseUrl, }; } @@ -194,6 +195,7 @@ export class ElasticsearchService metrics: { elasticsearchWaitTime, }, + publicBaseUrl: config.publicBaseUrl, }; } diff --git a/packages/core/elasticsearch/core-elasticsearch-server/src/contracts.ts b/packages/core/elasticsearch/core-elasticsearch-server/src/contracts.ts index f0a3a62d08f18..bc712a61a535e 100644 --- a/packages/core/elasticsearch/core-elasticsearch-server/src/contracts.ts +++ b/packages/core/elasticsearch/core-elasticsearch-server/src/contracts.ts @@ -138,6 +138,12 @@ export interface ElasticsearchServiceStart { * Returns the capabilities for the default cluster. */ getCapabilities: () => ElasticsearchCapabilities; + + /** + * The public base URL (if any) that should be used by end users to access the Elasticsearch cluster. + */ + + readonly publicBaseUrl?: string; } /** diff --git a/packages/core/feature-flags/README.mdx b/packages/core/feature-flags/README.mdx new file mode 100644 index 0000000000000..d1e3583aaf2b8 --- /dev/null +++ b/packages/core/feature-flags/README.mdx @@ -0,0 +1,158 @@ +--- +id: kibFeatureFlagsService +slug: /kibana-dev-docs/tutorials/feature-flags-service +title: Feature Flags service +description: The Feature Flags service provides the necessary APIs to evaluate dynamic feature flags. +date: 2024-07-26 +tags: ['kibana', 'dev', 'contributor', 'api docs', 'a/b testing', 'feature flags', 'flags'] +--- + +# Feature Flags Service + +The Feature Flags service provides the necessary APIs to evaluate dynamic feature flags. + +The service is always enabled, however, it will return the fallback value if a feature flags provider hasn't been attached. +Kibana only registers a provider when running on Elastic Cloud Hosted/Serverless. + +For a code example, refer to the [Feature Flags Example plugin](../../../examples/feature_flags_example) + +## Registering a feature flag + +Kibana follows a _gitops_ approach when managing feature flags. To declare a feature flag, add your flags definitions in +your plugin's `server/index.ts` file: + +```typescript +// /server/index.ts +import type { FeatureFlagDefinitions } from '@kbn/core-feature-flags-server'; +import type { PluginInitializerContext } from '@kbn/core-plugins-server'; + +export const featureFlags: FeatureFlagDefinitions = [ + { + key: 'my-cool-feature', + name: 'My cool feature', + description: 'Enables the cool feature to auto-hide the navigation bar', + tags: ['my-plugin', 'my-service', 'ui'], + variationType: 'boolean', + variations: [ + { + name: 'On', + description: 'Auto-hides the bar', + value: true, + }, + { + name: 'Off', + description: 'Static always-on', + value: false, + }, + ], + }, + {...}, +]; + +export async function plugin(initializerContext: PluginInitializerContext) { + const { FeatureFlagsExamplePlugin } = await import('./plugin'); + return new FeatureFlagsExamplePlugin(initializerContext); +} +``` + +After merging your PR, the CI will create/update the flags in our third-party feature flags provider. + +### Deprecation/removal strategy + +When your code doesn't use the feature flag anymore, it is recommended to clean up the feature flags when possible. +There are a few considerations to take into account when performing this clean-up: + +1. Always deprecate first, remove after +2. When to remove? + +#### Always deprecate first, remove after + +Just because the CI syncs the state of `main` to our feature flag provider, there is a high probability that the +previous version of the code that still relied on the feature flag is still running out there. + +For that reason, the recommendation is to always deprecate before removing the flags. This will keep evaluating the flags, +according to the segmentation rules configured for the flag. + +#### When to remove? + +After deprecation, we need to consider when it's safe to remove the flag. There are different scenarios that come with +different recommendations: + +* The segmentation rules of my flag are set up to return the fallback value 100% of the time: it should be safe to +remove the flag at any time. +* My flag only made it to Serverless (it never made it to Elastic Cloud Hosted): it should be safe to remove the flag +after 2 releases have been rolled out (roughly 2-3 weeks later). This is to ensure that all Serverless projects have +been upgraded and that we won't need to rollback to the previous version. +* My flag made it to Elastic Cloud Hosted: if we want to remove the flag, we should approach the affected customers to +fix the expected values via [config overrides](#config-overrides). + +In general, the recommendation is to check our telemetry to validate the usage of our flags. + +## Evaluating feature flags + +This service provides 2 ways to evaluate your feature flags, depending on the use case: + +1. **Single evaluation**: performs the evaluation once, and doesn't react to updates. These APIs are synchronous in the +browser, and asynchronous in the server. +2. **Observed evaluation**: observes the flag for any changes so that the code can adapt. These APIs return an RxJS observable. + +Also, the APIs are typed, so you need to use the appropriate API depending on the `variationType` you defined your flag: + +| Type | Single evaluation | Observed evaluation | +|:-------:|:--------------------------------------------------------|:---------------------------------------------------------| +| Boolean | `core.featureFlags.getBooleanValue(flagName, fallback)` | `core.featureFlags.getBooleanValue$(flagName, fallback)` | +| String | `core.featureFlags.getStringValue(flagName, fallback)` | `core.featureFlags.getStringValue$(flagName, fallback)` | +| Number | `core.featureFlags.getNumberValue(flagName, fallback)` | `core.featureFlags.getNumberValue$(flagName, fallback)` | + +### Request handler context + +Additionally, to make things easier in our HTTP handlers, the _Single evaluation_ APIs are available as part of the core +context provided to the handlers: + +```typescript +async (context, request, response) => { + const { featureFlags } = await context.core; + return response.ok({ + body: { + number: await featureFlags.getNumberValue('example-number', 1), + }, + }); +} +``` + +## Extending the evaluation context + +The should have +enough information to declare the segmentation rules for your feature flags. However, if your use case requires additional +context, feel free to call the API `core.featureFlags.setContext()` from your plugin. + +At the moment, we use 2 levels of context: `kibana` and `organization` that we can use for segmentation purposes at +different levels. By default, the API appends the context to the `kibana` scope. If you need to extend the `organization` +scope, make sure to add `kind: 'organization'` to the object provided to the `setContext` API. + +## Config overrides + +To help with testing, and to provide an escape hatch in cases where the flag evaluation is not behaving as intended, +the Feature Flags Service provides a way to force the values of a feature flag without attempting to resolve it via the +provider. In the `kibana.yml`, the following config sets the overrides: + +```yaml +feature_flags.overrides: + my-feature-flag: 'my-forced-value' +``` + +> [!WARNING] +> There is no validation regarding the variations nor the type of the flags. Use these overrides with caution. + +### Dynamic config + +When running in our test environments, the overrides can be updated without restarting Kibana via the HTTP `PUT /internal/core/_settings`: + +``` +PUT /internal/core/_settings +{ + "feature_flags.overrides": { + "my-feature-flag": "my-forced-value" + } +} +``` diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/README.md b/packages/core/feature-flags/core-feature-flags-browser-internal/README.md new file mode 100644 index 0000000000000..f5696d4530483 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/README.md @@ -0,0 +1,5 @@ +# @kbn/core-feature-flags-browser-internal + +Internal implementation of the browser-side Feature Flags Service. + +It should only be imported by _Core_ packages. \ No newline at end of file diff --git a/src/plugins/console/public/application/containers/split_panel/index.ts b/packages/core/feature-flags/core-feature-flags-browser-internal/index.ts similarity index 83% rename from src/plugins/console/public/application/containers/split_panel/index.ts rename to packages/core/feature-flags/core-feature-flags-browser-internal/index.ts index 00aa2b83db6d8..e22aeeecd35fb 100644 --- a/src/plugins/console/public/application/containers/split_panel/index.ts +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/index.ts @@ -7,5 +7,4 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export { Panel } from './panel'; -export { PanelsContainer } from './panel_container'; +export { FeatureFlagsService, type FeatureFlagsSetupDeps } from './src/feature_flags_service'; diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/jest.config.js b/packages/core/feature-flags/core-feature-flags-browser-internal/jest.config.js new file mode 100644 index 0000000000000..be4a9c1b14073 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/jest.config.js @@ -0,0 +1,14 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +module.exports = { + preset: '@kbn/test', + rootDir: '../../../..', + roots: ['/packages/core/feature-flags/core-feature-flags-browser-internal'], +}; diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/kibana.jsonc b/packages/core/feature-flags/core-feature-flags-browser-internal/kibana.jsonc new file mode 100644 index 0000000000000..150509b99f519 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-browser", + "id": "@kbn/core-feature-flags-browser-internal", + "owner": "@elastic/kibana-core" +} diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/package.json b/packages/core/feature-flags/core-feature-flags-browser-internal/package.json new file mode 100644 index 0000000000000..de82d53b1c964 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/core-feature-flags-browser-internal", + "private": true, + "version": "1.0.0", + "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0" +} \ No newline at end of file diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.test.ts b/packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.test.ts new file mode 100644 index 0000000000000..596d64c7b77ae --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.test.ts @@ -0,0 +1,292 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { firstValueFrom } from 'rxjs'; +import { apm } from '@elastic/apm-rum'; +import { type Client, OpenFeature, type Provider } from '@openfeature/web-sdk'; +import { coreContextMock } from '@kbn/core-base-browser-mocks'; +import type { FeatureFlagsStart } from '@kbn/core-feature-flags-browser'; +import { injectedMetadataServiceMock } from '@kbn/core-injected-metadata-browser-mocks'; +import type { InternalInjectedMetadataSetup } from '@kbn/core-injected-metadata-browser-internal'; +import { FeatureFlagsService } from '..'; + +async function isSettledPromise(p: Promise) { + const immediateValue = {}; + const result = await Promise.race([p, immediateValue]); + return result !== immediateValue; +} + +describe('FeatureFlagsService Browser', () => { + let featureFlagsService: FeatureFlagsService; + let featureFlagsClient: Client; + let injectedMetadata: jest.Mocked; + + beforeEach(() => { + const getClientSpy = jest.spyOn(OpenFeature, 'getClient'); + featureFlagsService = new FeatureFlagsService(coreContextMock.create()); + featureFlagsClient = getClientSpy.mock.results[0].value; + injectedMetadata = injectedMetadataServiceMock.createSetupContract(); + }); + + afterEach(async () => { + await featureFlagsService.stop(); + jest.clearAllMocks(); + await OpenFeature.clearProviders(); + await OpenFeature.clearContexts(); + }); + + describe('provider handling', () => { + test('appends a provider (without awaiting)', () => { + expect.assertions(1); + const { setProvider } = featureFlagsService.setup({ injectedMetadata }); + const spy = jest.spyOn(OpenFeature, 'setProviderAndWait'); + const fakeProvider = { metadata: { name: 'fake provider' } } as Provider; + setProvider(fakeProvider); + expect(spy).toHaveBeenCalledWith(fakeProvider); + }); + + test('throws an error if called twice', () => { + const { setProvider } = featureFlagsService.setup({ injectedMetadata }); + const fakeProvider = { metadata: { name: 'fake provider' } } as Provider; + setProvider(fakeProvider); + expect(() => setProvider(fakeProvider)).toThrowErrorMatchingInlineSnapshot( + `"A provider has already been set. This API cannot be called twice."` + ); + }); + + test('awaits initialization in the start context', async () => { + const { setProvider } = featureFlagsService.setup({ injectedMetadata }); + let externalResolve: Function = () => void 0; + const spy = jest.spyOn(OpenFeature, 'setProviderAndWait').mockImplementation(async () => { + await new Promise((resolve) => { + externalResolve = resolve; + }); + }); + const fakeProvider = {} as Provider; + setProvider(fakeProvider); + expect(spy).toHaveBeenCalledWith(fakeProvider); + const startPromise = featureFlagsService.start(); + await expect(isSettledPromise(startPromise)).resolves.toBe(false); + externalResolve(); + await new Promise((resolve) => process.nextTick(resolve)); // Wait for the promise resolution to spread + await expect(isSettledPromise(startPromise)).resolves.toBe(true); + }); + + test('do not hold for too long during initialization', async () => { + const { setProvider } = featureFlagsService.setup({ injectedMetadata }); + const spy = jest.spyOn(OpenFeature, 'setProviderAndWait').mockImplementation(async () => { + await new Promise(() => {}); // never resolves + }); + const apmCaptureErrorSpy = jest.spyOn(apm, 'captureError'); + const fakeProvider = {} as Provider; + setProvider(fakeProvider); + expect(spy).toHaveBeenCalledWith(fakeProvider); + const startPromise = featureFlagsService.start(); + await expect(isSettledPromise(startPromise)).resolves.toBe(false); + await new Promise((resolve) => setTimeout(resolve, 2100)); // A bit longer than 2 seconds + await expect(isSettledPromise(startPromise)).resolves.toBe(true); + expect(apmCaptureErrorSpy).toHaveBeenCalledWith( + expect.stringContaining('The feature flags provider took too long to initialize.') + ); + }); + }); + + describe('context handling', () => { + let setContextSpy: jest.SpyInstance; + + beforeEach(() => { + setContextSpy = jest.spyOn(OpenFeature, 'setContext'); + }); + + test('appends context to the provider', async () => { + const { appendContext } = featureFlagsService.setup({ injectedMetadata }); + await appendContext({ kind: 'multi' }); + expect(setContextSpy).toHaveBeenCalledWith({ kind: 'multi' }); + }); + + test('appends context to the provider (start method)', async () => { + featureFlagsService.setup({ injectedMetadata }); + const { appendContext } = await featureFlagsService.start(); + await appendContext({ kind: 'multi' }); + expect(setContextSpy).toHaveBeenCalledWith({ kind: 'multi' }); + }); + + test('full multi context pass-through', async () => { + const { appendContext } = featureFlagsService.setup({ injectedMetadata }); + const context = { + kind: 'multi' as const, + kibana: { + key: 'kibana-1', + }, + organization: { + key: 'organization-1', + }, + }; + await appendContext(context); + expect(setContextSpy).toHaveBeenCalledWith(context); + }); + + test('appends to the existing context', async () => { + const { appendContext } = featureFlagsService.setup({ injectedMetadata }); + const initialContext = { + kind: 'multi' as const, + kibana: { + key: 'kibana-1', + }, + organization: { + key: 'organization-1', + }, + }; + await appendContext(initialContext); + expect(setContextSpy).toHaveBeenCalledWith(initialContext); + + await appendContext({ kind: 'multi', kibana: { has_data: true } }); + expect(setContextSpy).toHaveBeenCalledWith({ + ...initialContext, + kibana: { + ...initialContext.kibana, + has_data: true, + }, + }); + }); + + test('converts single-contexts to multi-context', async () => { + const { appendContext } = featureFlagsService.setup({ injectedMetadata }); + await appendContext({ kind: 'organization', key: 'organization-1' }); + expect(setContextSpy).toHaveBeenCalledWith({ + kind: 'multi', + organization: { + key: 'organization-1', + }, + }); + }); + + test('if no `kind` provided, it defaults to the kibana context', async () => { + const { appendContext } = featureFlagsService.setup({ injectedMetadata }); + await appendContext({ key: 'key-1', has_data: false }); + expect(setContextSpy).toHaveBeenCalledWith({ + kind: 'multi', + kibana: { + key: 'key-1', + has_data: false, + }, + }); + }); + }); + + describe('flag evaluation', () => { + let startContract: FeatureFlagsStart; + let apmSpy: jest.SpyInstance; + let addHandlerSpy: jest.SpyInstance; + + beforeEach(async () => { + addHandlerSpy = jest.spyOn(featureFlagsClient, 'addHandler'); + injectedMetadata.getFeatureFlags.mockReturnValue({ + overrides: { 'my-overridden-flag': true }, + }); + featureFlagsService.setup({ injectedMetadata }); + startContract = await featureFlagsService.start(); + apmSpy = jest.spyOn(apm, 'addLabels'); + }); + + // We don't need to test the client, just our APIs, so testing that it returns the fallback value should be enough. + test('get boolean flag', () => { + const value = false; + expect(startContract.getBooleanValue('my-flag', value)).toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + }); + + test('get string flag', () => { + const value = 'my-default'; + expect(startContract.getStringValue('my-flag', value)).toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + }); + + test('get number flag', () => { + const value = 42; + expect(startContract.getNumberValue('my-flag', value)).toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + }); + + test('observe a boolean flag', async () => { + const value = false; + const flag$ = startContract.getBooleanValue$('my-flag', value); + const observedValues: boolean[] = []; + flag$.subscribe((v) => observedValues.push(v)); + // Initial emission + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + expect(observedValues).toHaveLength(1); + + // Does not reevaluate and emit if the other flags are changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['another-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(1); // still 1 + + // Reevaluates and emits when the observed flag is changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['my-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(2); + }); + + test('observe a string flag', async () => { + const value = 'my-value'; + const flag$ = startContract.getStringValue$('my-flag', value); + const observedValues: string[] = []; + flag$.subscribe((v) => observedValues.push(v)); + // Initial emission + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + expect(observedValues).toHaveLength(1); + + // Does not reevaluate and emit if the other flags are changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['another-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(1); // still 1 + + // Reevaluates and emits when the observed flag is changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['my-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(2); + }); + + test('observe a number flag', async () => { + const value = 42; + const flag$ = startContract.getNumberValue$('my-flag', value); + const observedValues: number[] = []; + flag$.subscribe((v) => observedValues.push(v)); + // Initial emission + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + expect(observedValues).toHaveLength(1); + + // Does not reevaluate and emit if the other flags are changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['another-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(1); // still 1 + + // Reevaluates and emits when the observed flag is changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['my-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(2); + }); + + test('with overrides', async () => { + const getBooleanValueSpy = jest.spyOn(featureFlagsClient, 'getBooleanValue'); + expect(startContract.getBooleanValue('my-overridden-flag', false)).toEqual(true); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-overridden-flag': true }); + expect(getBooleanValueSpy).not.toHaveBeenCalled(); + + // Only to prove the spy works + expect(startContract.getBooleanValue('another-flag', false)).toEqual(false); + expect(getBooleanValueSpy).toHaveBeenCalledTimes(1); + expect(getBooleanValueSpy).toHaveBeenCalledWith('another-flag', false); + }); + }); +}); diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts b/packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts new file mode 100644 index 0000000000000..0f7e572ef5ce0 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/src/feature_flags_service.ts @@ -0,0 +1,203 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { CoreContext } from '@kbn/core-base-browser-internal'; +import type { InternalInjectedMetadataSetup } from '@kbn/core-injected-metadata-browser-internal'; +import type { Logger } from '@kbn/logging'; +import type { + EvaluationContext, + FeatureFlagsSetup, + FeatureFlagsStart, + MultiContextEvaluationContext, +} from '@kbn/core-feature-flags-browser'; +import { apm } from '@elastic/apm-rum'; +import { type Client, ClientProviderEvents, OpenFeature } from '@openfeature/web-sdk'; +import deepMerge from 'deepmerge'; +import { filter, map, startWith, Subject } from 'rxjs'; + +/** + * setup method dependencies + * @private + */ +export interface FeatureFlagsSetupDeps { + /** + * Used to read the flag overrides set up in the configuration file. + */ + injectedMetadata: InternalInjectedMetadataSetup; +} + +/** + * The browser-side Feature Flags Service + * @private + */ +export class FeatureFlagsService { + private readonly featureFlagsClient: Client; + private readonly logger: Logger; + private isProviderReadyPromise?: Promise; + private context: MultiContextEvaluationContext = { kind: 'multi' }; + private overrides: Record = {}; + + /** + * The core service's constructor + * @param core {@link CoreContext} + */ + constructor(core: CoreContext) { + this.logger = core.logger.get('feature-flags-service'); + this.featureFlagsClient = OpenFeature.getClient(); + OpenFeature.setLogger(this.logger.get('open-feature')); + } + + /** + * Setup lifecycle method + * @param deps {@link FeatureFlagsSetup} including the {@link InternalInjectedMetadataSetup} used to retrieve the feature flags. + */ + public setup(deps: FeatureFlagsSetupDeps): FeatureFlagsSetup { + const featureFlagsInjectedMetadata = deps.injectedMetadata.getFeatureFlags(); + if (featureFlagsInjectedMetadata) { + this.overrides = featureFlagsInjectedMetadata.overrides; + } + return { + setProvider: (provider) => { + if (this.isProviderReadyPromise) { + throw new Error('A provider has already been set. This API cannot be called twice.'); + } + this.isProviderReadyPromise = OpenFeature.setProviderAndWait(provider); + }, + appendContext: (contextToAppend) => this.appendContext(contextToAppend), + }; + } + + /** + * Start lifecycle method + */ + public async start(): Promise { + const featureFlagsChanged$ = new Subject(); + this.featureFlagsClient.addHandler(ClientProviderEvents.ConfigurationChanged, (event) => { + if (event?.flagsChanged) { + featureFlagsChanged$.next(event.flagsChanged); + } + }); + const observeFeatureFlag$ = (flagName: string) => + featureFlagsChanged$.pipe( + filter((flagNames) => flagNames.includes(flagName)), + startWith([flagName]) // only to emit on the first call + ); + + await this.waitForProviderInitialization(); + + return { + appendContext: (contextToAppend) => this.appendContext(contextToAppend), + getBooleanValue: (flagName: string, fallbackValue: boolean) => + this.evaluateFlag(this.featureFlagsClient.getBooleanValue, flagName, fallbackValue), + getStringValue: (flagName: string, fallbackValue: Value) => + this.evaluateFlag(this.featureFlagsClient.getStringValue, flagName, fallbackValue), + getNumberValue: (flagName: string, fallbackValue: Value) => + this.evaluateFlag(this.featureFlagsClient.getNumberValue, flagName, fallbackValue), + getBooleanValue$: (flagName, fallbackValue) => { + return observeFeatureFlag$(flagName).pipe( + map(() => + this.evaluateFlag(this.featureFlagsClient.getBooleanValue, flagName, fallbackValue) + ) + ); + }, + getStringValue$: (flagName: string, fallbackValue: Value) => { + return observeFeatureFlag$(flagName).pipe( + map(() => + this.evaluateFlag( + this.featureFlagsClient.getStringValue, + flagName, + fallbackValue + ) + ) + ); + }, + getNumberValue$: (flagName: string, fallbackValue: Value) => { + return observeFeatureFlag$(flagName).pipe( + map(() => + this.evaluateFlag( + this.featureFlagsClient.getNumberValue, + flagName, + fallbackValue + ) + ) + ); + }, + }; + } + + /** + * Stop lifecycle method + */ + public async stop() { + await OpenFeature.close(); + } + + /** + * Waits for the provider initialization with a timeout to avoid holding the page load for too long + * @private + */ + private async waitForProviderInitialization() { + // Adding a timeout here to avoid hanging the start for too long if the provider is unresponsive + let timeoutId: NodeJS.Timeout | undefined; + await Promise.race([ + this.isProviderReadyPromise, + new Promise((resolve) => { + timeoutId = setTimeout(resolve, 2 * 1000); + }).then(() => { + const msg = `The feature flags provider took too long to initialize. + Won't hold the page load any longer. + Feature flags will return the provided fallbacks until the provider is eventually initialized.`; + this.logger.warn(msg); + apm.captureError(msg); + }), + ]); + clearTimeout(timeoutId); + } + + /** + * Wrapper to evaluate flags with the common config overrides interceptions + APM and counters reporting + * @param evaluationFn The actual evaluation API + * @param flagName The name of the flag to evaluate + * @param fallbackValue The fallback value + * @private + */ + private evaluateFlag( + evaluationFn: (flagName: string, fallbackValue: T) => T, + flagName: string, + fallbackValue: T + ): T { + const value = + typeof this.overrides[flagName] !== 'undefined' + ? (this.overrides[flagName] as T) + : // We have to bind the evaluation or the client will lose its internal context + evaluationFn.bind(this.featureFlagsClient)(flagName, fallbackValue); + apm.addLabels({ [`flag_${flagName}`]: value }); + // TODO: increment usage counter + return value; + } + + /** + * Formats the provided context to fulfill the expected multi-context structure. + * @param contextToAppend The {@link EvaluationContext} to append. + * @private + */ + private async appendContext(contextToAppend: EvaluationContext): Promise { + // If no kind provided, default to the project|deployment level. + const { kind = 'kibana', ...rest } = contextToAppend; + // Format the context to fulfill the expected multi-context structure + const formattedContextToAppend: MultiContextEvaluationContext = + kind === 'multi' + ? (contextToAppend as MultiContextEvaluationContext) + : { kind: 'multi', [kind]: rest }; + + // Merge the formatted context to append to the global context, and set it in the OpenFeature client. + this.context = deepMerge(this.context, formattedContextToAppend); + await OpenFeature.setContext(this.context); + } +} diff --git a/packages/core/feature-flags/core-feature-flags-browser-internal/tsconfig.json b/packages/core/feature-flags/core-feature-flags-browser-internal/tsconfig.json new file mode 100644 index 0000000000000..3ed73d73e75a3 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-internal/tsconfig.json @@ -0,0 +1,26 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node", + "react" + ] + }, + "include": [ + "**/*.ts", + "**/*.tsx", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/core-base-browser-internal", + "@kbn/core-feature-flags-browser", + "@kbn/logging", + "@kbn/core-base-browser-mocks", + "@kbn/core-injected-metadata-browser-internal", + "@kbn/core-injected-metadata-browser-mocks", + ] +} diff --git a/packages/core/feature-flags/core-feature-flags-browser-mocks/README.md b/packages/core/feature-flags/core-feature-flags-browser-mocks/README.md new file mode 100644 index 0000000000000..db756eddf2f1a --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-mocks/README.md @@ -0,0 +1,3 @@ +# @kbn/core-feature-flags-browser-mocks + +Browser-side Jest mocks for the Feature Flags Service. diff --git a/packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts b/packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts new file mode 100644 index 0000000000000..ad8cdae6a5ef1 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-mocks/index.ts @@ -0,0 +1,58 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { FeatureFlagsSetup, FeatureFlagsStart } from '@kbn/core-feature-flags-browser'; +import type { FeatureFlagsService } from '@kbn/core-feature-flags-browser-internal'; +import type { PublicMethodsOf } from '@kbn/utility-types'; +import { of } from 'rxjs'; + +const createFeatureFlagsSetup = (): jest.Mocked => { + return { + setProvider: jest.fn(), + appendContext: jest.fn().mockImplementation(Promise.resolve), + }; +}; + +const createFeatureFlagsStart = (): jest.Mocked => { + return { + appendContext: jest.fn().mockImplementation(Promise.resolve), + getBooleanValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getNumberValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getStringValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getBooleanValue$: jest.fn().mockImplementation((_, fallback) => of(fallback)), + getStringValue$: jest.fn().mockImplementation((_, fallback) => of(fallback)), + getNumberValue$: jest.fn().mockImplementation((_, fallback) => of(fallback)), + }; +}; + +const createFeatureFlagsServiceMock = (): jest.Mocked> => { + return { + setup: jest.fn().mockImplementation(createFeatureFlagsSetup), + start: jest.fn().mockImplementation(async () => createFeatureFlagsStart()), + stop: jest.fn().mockImplementation(Promise.resolve), + }; +}; + +/** + * Mocks for the Feature Flags service (browser-side) + */ +export const coreFeatureFlagsMock = { + /** + * Mocks the entire feature flags service + */ + create: createFeatureFlagsServiceMock, + /** + * Mocks the setup contract + */ + createSetup: createFeatureFlagsSetup, + /** + * Mocks the start contract + */ + createStart: createFeatureFlagsStart, +}; diff --git a/src/plugins/console/public/application/containers/editor/legacy/index.ts b/packages/core/feature-flags/core-feature-flags-browser-mocks/jest.config.js similarity index 75% rename from src/plugins/console/public/application/containers/editor/legacy/index.ts rename to packages/core/feature-flags/core-feature-flags-browser-mocks/jest.config.js index 40e74e7b32e9e..f259faecb6046 100644 --- a/src/plugins/console/public/application/containers/editor/legacy/index.ts +++ b/packages/core/feature-flags/core-feature-flags-browser-mocks/jest.config.js @@ -7,5 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export { EditorOutput, Editor } from './console_editor'; -export { getDocumentation, autoIndent } from './console_menu_actions'; +module.exports = { + preset: '@kbn/test', + rootDir: '../../../..', + roots: ['/packages/core/feature-flags/core-feature-flags-browser-mocks'], +}; diff --git a/packages/core/feature-flags/core-feature-flags-browser-mocks/kibana.jsonc b/packages/core/feature-flags/core-feature-flags-browser-mocks/kibana.jsonc new file mode 100644 index 0000000000000..0917a098841c4 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-mocks/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-browser", + "id": "@kbn/core-feature-flags-browser-mocks", + "owner": "@elastic/kibana-core" +} diff --git a/packages/core/feature-flags/core-feature-flags-browser-mocks/package.json b/packages/core/feature-flags/core-feature-flags-browser-mocks/package.json new file mode 100644 index 0000000000000..77e9150ce7834 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-mocks/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/core-feature-flags-browser-mocks", + "private": true, + "version": "1.0.0", + "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0" +} \ No newline at end of file diff --git a/packages/core/feature-flags/core-feature-flags-browser-mocks/tsconfig.json b/packages/core/feature-flags/core-feature-flags-browser-mocks/tsconfig.json new file mode 100644 index 0000000000000..b7d1b3ca28cbb --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser-mocks/tsconfig.json @@ -0,0 +1,23 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node", + "react" + ] + }, + "include": [ + "**/*.ts", + "**/*.tsx", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/core-feature-flags-browser", + "@kbn/core-feature-flags-browser-internal", + "@kbn/utility-types", + ] +} diff --git a/packages/core/feature-flags/core-feature-flags-browser/README.md b/packages/core/feature-flags/core-feature-flags-browser/README.md new file mode 100644 index 0000000000000..5a6743adc5a09 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser/README.md @@ -0,0 +1,3 @@ +# @kbn/core-feature-flags-browser + +Browser-side type definitions for the Feature Flags Service. diff --git a/packages/core/feature-flags/core-feature-flags-browser/index.ts b/packages/core/feature-flags/core-feature-flags-browser/index.ts new file mode 100644 index 0000000000000..6c79c96f01878 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +export type { + EvaluationContext, + MultiContextEvaluationContext, + SingleContextEvaluationContext, + FeatureFlagsSetup, + FeatureFlagsStart, +} from './src/types'; diff --git a/packages/core/feature-flags/core-feature-flags-browser/kibana.jsonc b/packages/core/feature-flags/core-feature-flags-browser/kibana.jsonc new file mode 100644 index 0000000000000..56187119509b9 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-browser", + "id": "@kbn/core-feature-flags-browser", + "owner": "@elastic/kibana-core" +} diff --git a/packages/core/feature-flags/core-feature-flags-browser/package.json b/packages/core/feature-flags/core-feature-flags-browser/package.json new file mode 100644 index 0000000000000..235f52c0521f1 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/core-feature-flags-browser", + "private": true, + "version": "1.0.0", + "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0" +} \ No newline at end of file diff --git a/packages/core/feature-flags/core-feature-flags-browser/src/types.ts b/packages/core/feature-flags/core-feature-flags-browser/src/types.ts new file mode 100644 index 0000000000000..844675aab4603 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser/src/types.ts @@ -0,0 +1,165 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { Provider } from '@openfeature/web-sdk'; +import { type EvaluationContext as OpenFeatureEvaluationContext } from '@openfeature/core'; +import type { Observable } from 'rxjs'; + +/** + * The evaluation context to use when retrieving the flags. + * + * We use multi-context so that we can apply segmentation rules at different levels (`organization`/`kibana`). + * * `organization` includes any information that is common to all the projects/deployments in an organization. An example is the in_trial status. + * * The `kibana` context includes all the information that identifies a project/deployment. Examples are version, offering, and has_data. + * Kind helps us specify which sub-context should receive the new attributes. + * If no `kind` is provided, it defaults to `kibana`. + * + * @example Providing properties for both contexts + * { + * kind: 'multi', + * organization: { + * key: 1234, + * in_trial: true, + * }, + * kibana: { + * key: 12345567890, + * version: 8.15.0, + * buildHash: 'ffffffffaaaaaaaa', + * }, + * } + * + * @example Appending context to the organization sub-context + * { + * kind: 'organization', + * key: 1234, + * in_trial: true, + * } + * + * @example Appending context to the `kibana` sub-context + * { + * key: 12345567890, + * version: 8.15.0, + * buildHash: 'ffffffffaaaaaaaa', + * } + * } + * + * @public + */ +export type EvaluationContext = MultiContextEvaluationContext | SingleContextEvaluationContext; + +/** + * Multi-context format. The sub-contexts are provided in their nested properties. + * @public + */ +export type MultiContextEvaluationContext = OpenFeatureEvaluationContext & { + /** + * Static `multi` string + */ + kind: 'multi'; + /** + * The Elastic Cloud organization-specific context. + */ + organization?: OpenFeatureEvaluationContext; + /** + * The deployment/project-specific context. + */ + kibana?: OpenFeatureEvaluationContext; +}; + +/** + * Single Context format. If `kind` is not specified, it applies to the `kibana` sub-context. + */ +export type SingleContextEvaluationContext = OpenFeatureEvaluationContext & { + /** + * The sub-context that it's updated. Defaults to `kibana`. + */ + kind?: 'organization' | 'kibana'; +}; + +/** + * Setup contract of the Feature Flags Service + * @public + */ +export interface FeatureFlagsSetup { + /** + * Registers an OpenFeature provider to talk to the + * 3rd-party service that manages the Feature Flags. + * @param provider The {@link Provider | OpenFeature Provider} to handle the communication with the feature flags management system. + * @public + */ + setProvider(provider: Provider): void; + + /** + * Appends new keys to the evaluation context. + * @param contextToAppend The additional keys that should be appended/modified in the evaluation context. + * @public + */ + appendContext(contextToAppend: EvaluationContext): Promise; +} + +/** + * Setup contract of the Feature Flags Service + * @public + */ +export interface FeatureFlagsStart { + /** + * Appends new keys to the evaluation context. + * @param contextToAppend The additional keys that should be appended/modified in the evaluation context. + * @public + */ + appendContext(contextToAppend: EvaluationContext): Promise; + + /** + * Evaluates a boolean flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getBooleanValue(flagName: string, fallbackValue: boolean): boolean; + + /** + * Evaluates a string flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getStringValue(flagName: string, fallbackValue: Value): Value; + + /** + * Evaluates a number flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getNumberValue(flagName: string, fallbackValue: Value): Value; + + /** + * Returns an observable of a boolean flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getBooleanValue$(flagName: string, fallbackValue: boolean): Observable; + + /** + * Returns an observable of a string flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getStringValue$(flagName: string, fallbackValue: Value): Observable; + + /** + * Returns an observable of a number flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getNumberValue$(flagName: string, fallbackValue: Value): Observable; +} diff --git a/packages/core/feature-flags/core-feature-flags-browser/tsconfig.json b/packages/core/feature-flags/core-feature-flags-browser/tsconfig.json new file mode 100644 index 0000000000000..9fa73d55be770 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-browser/tsconfig.json @@ -0,0 +1,18 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "node", + "react" + ] + }, + "include": [ + "**/*.ts", + "**/*.tsx", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [] +} diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/README.md b/packages/core/feature-flags/core-feature-flags-server-internal/README.md new file mode 100644 index 0000000000000..288d47fdc95eb --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/README.md @@ -0,0 +1,5 @@ +# @kbn/core-feature-flags-server-internal + +Internal implementation of the server-side Feature Flags Service. + +It should only be imported by _Core_ packages. diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/index.ts b/packages/core/feature-flags/core-feature-flags-server-internal/index.ts new file mode 100644 index 0000000000000..97083327e609d --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/index.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +export { featureFlagsConfig } from './src/feature_flags_config'; +export { FeatureFlagsService, type InternalFeatureFlagsSetup } from './src/feature_flags_service'; +export { CoreFeatureFlagsRouteHandlerContext } from './src/feature_flags_request_handler_context'; diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/jest.config.js b/packages/core/feature-flags/core-feature-flags-server-internal/jest.config.js new file mode 100644 index 0000000000000..67b65d2040c54 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/jest.config.js @@ -0,0 +1,14 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +module.exports = { + preset: '@kbn/test/jest_node', + rootDir: '../../../..', + roots: ['/packages/core/feature-flags/core-feature-flags-server-internal'], +}; diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/kibana.jsonc b/packages/core/feature-flags/core-feature-flags-server-internal/kibana.jsonc new file mode 100644 index 0000000000000..60a01597c0454 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-server", + "id": "@kbn/core-feature-flags-server-internal", + "owner": "@elastic/kibana-core" +} diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/package.json b/packages/core/feature-flags/core-feature-flags-server-internal/package.json new file mode 100644 index 0000000000000..33383b043fa5c --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/core-feature-flags-server-internal", + "private": true, + "version": "1.0.0", + "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0" +} \ No newline at end of file diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_config.ts b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_config.ts new file mode 100644 index 0000000000000..fe6725456806b --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_config.ts @@ -0,0 +1,42 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { ServiceConfigDescriptor } from '@kbn/core-base-server-internal'; +import { schema } from '@kbn/config-schema'; + +/** + * The definition of the validation config schema + * @private + */ +const configSchema = schema.object({ + overrides: schema.maybe(schema.recordOf(schema.string(), schema.any())), +}); + +/** + * Type definition of the Feature Flags configuration + * @private + */ +export interface FeatureFlagsConfig { + overrides?: Record; +} + +/** + * Config descriptor for the feature flags service + * @private + */ +export const featureFlagsConfig: ServiceConfigDescriptor = { + /** + * All config is prefixed by `feature_flags` + */ + path: 'feature_flags', + /** + * The definition of the validation config schema + */ + schema: configSchema, +}; diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_request_handler_context.ts b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_request_handler_context.ts new file mode 100644 index 0000000000000..f0ac4da69b1a9 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_request_handler_context.ts @@ -0,0 +1,33 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { + FeatureFlagsRequestHandlerContext, + FeatureFlagsStart, +} from '@kbn/core-feature-flags-server'; + +/** + * The {@link FeatureFlagsRequestHandlerContext} implementation. + * @internal + */ +export class CoreFeatureFlagsRouteHandlerContext implements FeatureFlagsRequestHandlerContext { + constructor(private readonly featureFlags: FeatureFlagsStart) {} + + public getBooleanValue(flagName: string, fallback: boolean): Promise { + return this.featureFlags.getBooleanValue(flagName, fallback); + } + + public getStringValue(flagName: string, fallback: Value): Promise { + return this.featureFlags.getStringValue(flagName, fallback); + } + + public getNumberValue(flagName: string, fallback: Value): Promise { + return this.featureFlags.getNumberValue(flagName, fallback); + } +} diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.test.ts b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.test.ts new file mode 100644 index 0000000000000..7bad676b9528b --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.test.ts @@ -0,0 +1,260 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { firstValueFrom } from 'rxjs'; +import apm from 'elastic-apm-node'; +import { type Client, OpenFeature, type Provider } from '@openfeature/server-sdk'; +import { mockCoreContext } from '@kbn/core-base-server-mocks'; +import { configServiceMock } from '@kbn/config-mocks'; +import type { FeatureFlagsStart } from '@kbn/core-feature-flags-server'; +import { FeatureFlagsService } from '..'; + +describe('FeatureFlagsService Server', () => { + let featureFlagsService: FeatureFlagsService; + let featureFlagsClient: Client; + + beforeEach(() => { + const getClientSpy = jest.spyOn(OpenFeature, 'getClient'); + featureFlagsService = new FeatureFlagsService( + mockCoreContext.create({ + configService: configServiceMock.create({ + atPath: { + overrides: { + 'my-overridden-flag': true, + }, + }, + }), + }) + ); + featureFlagsClient = getClientSpy.mock.results[0].value; + }); + + afterEach(async () => { + await featureFlagsService.stop(); + jest.clearAllMocks(); + await OpenFeature.clearProviders(); + }); + + describe('provider handling', () => { + test('appends a provider (no async operation)', () => { + expect.assertions(1); + const { setProvider } = featureFlagsService.setup(); + const spy = jest.spyOn(OpenFeature, 'setProvider'); + const fakeProvider = { metadata: { name: 'fake provider' } } as Provider; + setProvider(fakeProvider); + expect(spy).toHaveBeenCalledWith(fakeProvider); + }); + + test('throws an error if called twice', () => { + const { setProvider } = featureFlagsService.setup(); + const fakeProvider = { metadata: { name: 'fake provider' } } as Provider; + setProvider(fakeProvider); + expect(() => setProvider(fakeProvider)).toThrowErrorMatchingInlineSnapshot( + `"A provider has already been set. This API cannot be called twice."` + ); + }); + }); + + describe('context handling', () => { + let setContextSpy: jest.SpyInstance; + + beforeEach(() => { + setContextSpy = jest.spyOn(OpenFeature, 'setContext'); + }); + + test('appends context to the provider', () => { + const { appendContext } = featureFlagsService.setup(); + appendContext({ kind: 'multi' }); + expect(setContextSpy).toHaveBeenCalledWith({ kind: 'multi' }); + }); + + test('appends context to the provider (start method)', () => { + featureFlagsService.setup(); + const { appendContext } = featureFlagsService.start(); + appendContext({ kind: 'multi' }); + expect(setContextSpy).toHaveBeenCalledWith({ kind: 'multi' }); + }); + + test('full multi context pass-through', () => { + const { appendContext } = featureFlagsService.setup(); + const context = { + kind: 'multi' as const, + kibana: { + key: 'kibana-1', + }, + organization: { + key: 'organization-1', + }, + }; + appendContext(context); + expect(setContextSpy).toHaveBeenCalledWith(context); + }); + + test('appends to the existing context', () => { + const { appendContext } = featureFlagsService.setup(); + const initialContext = { + kind: 'multi' as const, + kibana: { + key: 'kibana-1', + }, + organization: { + key: 'organization-1', + }, + }; + appendContext(initialContext); + expect(setContextSpy).toHaveBeenCalledWith(initialContext); + + appendContext({ kind: 'multi', kibana: { has_data: true } }); + expect(setContextSpy).toHaveBeenCalledWith({ + ...initialContext, + kibana: { + ...initialContext.kibana, + has_data: true, + }, + }); + }); + + test('converts single-contexts to multi-context', () => { + const { appendContext } = featureFlagsService.setup(); + appendContext({ kind: 'organization', key: 'organization-1' }); + expect(setContextSpy).toHaveBeenCalledWith({ + kind: 'multi', + organization: { + key: 'organization-1', + }, + }); + }); + + test('if no `kind` provided, it defaults to the kibana context', () => { + const { appendContext } = featureFlagsService.setup(); + appendContext({ key: 'key-1', has_data: false }); + expect(setContextSpy).toHaveBeenCalledWith({ + kind: 'multi', + kibana: { + key: 'key-1', + has_data: false, + }, + }); + }); + }); + + describe('flag evaluation', () => { + let startContract: FeatureFlagsStart; + let apmSpy: jest.SpyInstance; + let addHandlerSpy: jest.SpyInstance; + + beforeEach(() => { + addHandlerSpy = jest.spyOn(featureFlagsClient, 'addHandler'); + featureFlagsService.setup(); + startContract = featureFlagsService.start(); + apmSpy = jest.spyOn(apm, 'addLabels'); + }); + + // We don't need to test the client, just our APIs, so testing that it returns the fallback value should be enough. + test('get boolean flag', async () => { + const value = false; + await expect(startContract.getBooleanValue('my-flag', value)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + }); + + test('get string flag', async () => { + const value = 'my-default'; + await expect(startContract.getStringValue('my-flag', value)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + }); + + test('get number flag', async () => { + const value = 42; + await expect(startContract.getNumberValue('my-flag', value)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + }); + + test('observe a boolean flag', async () => { + const value = false; + const flag$ = startContract.getBooleanValue$('my-flag', value); + const observedValues: boolean[] = []; + flag$.subscribe((v) => observedValues.push(v)); + // Initial emission + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + expect(observedValues).toHaveLength(1); + + // Does not reevaluate and emit if the other flags are changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['another-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(1); // still 1 + + // Reevaluates and emits when the observed flag is changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['my-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(2); + }); + + test('observe a string flag', async () => { + const value = 'my-value'; + const flag$ = startContract.getStringValue$('my-flag', value); + const observedValues: string[] = []; + flag$.subscribe((v) => observedValues.push(v)); + // Initial emission + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + expect(observedValues).toHaveLength(1); + + // Does not reevaluate and emit if the other flags are changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['another-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(1); // still 1 + + // Reevaluates and emits when the observed flag is changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['my-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(2); + }); + + test('observe a number flag', async () => { + const value = 42; + const flag$ = startContract.getNumberValue$('my-flag', value); + const observedValues: number[] = []; + flag$.subscribe((v) => observedValues.push(v)); + // Initial emission + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-flag': value }); + expect(observedValues).toHaveLength(1); + + // Does not reevaluate and emit if the other flags are changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['another-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(1); // still 1 + + // Reevaluates and emits when the observed flag is changed + addHandlerSpy.mock.calls[0][1]({ flagsChanged: ['my-flag'] }); + await expect(firstValueFrom(flag$)).resolves.toEqual(value); + expect(observedValues).toHaveLength(2); + }); + + test('with overrides', async () => { + const getBooleanValueSpy = jest.spyOn(featureFlagsClient, 'getBooleanValue'); + await expect(startContract.getBooleanValue('my-overridden-flag', false)).resolves.toEqual( + true + ); + expect(apmSpy).toHaveBeenCalledWith({ 'flag_my-overridden-flag': true }); + expect(getBooleanValueSpy).not.toHaveBeenCalled(); + + // Only to prove the spy works + await expect(startContract.getBooleanValue('another-flag', false)).resolves.toEqual(false); + expect(getBooleanValueSpy).toHaveBeenCalledTimes(1); + expect(getBooleanValueSpy).toHaveBeenCalledWith('another-flag', false); + }); + }); + + test('returns overrides', () => { + const { getOverrides } = featureFlagsService.setup(); + expect(getOverrides()).toStrictEqual({ 'my-overridden-flag': true }); + }); +}); diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts new file mode 100644 index 0000000000000..7b01ebde731fe --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/src/feature_flags_service.ts @@ -0,0 +1,196 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { CoreContext } from '@kbn/core-base-server-internal'; +import type { + EvaluationContext, + FeatureFlagsSetup, + FeatureFlagsStart, + MultiContextEvaluationContext, +} from '@kbn/core-feature-flags-server'; +import type { Logger } from '@kbn/logging'; +import apm from 'elastic-apm-node'; +import { + type Client, + OpenFeature, + ServerProviderEvents, + NOOP_PROVIDER, +} from '@openfeature/server-sdk'; +import deepMerge from 'deepmerge'; +import { filter, switchMap, startWith, Subject } from 'rxjs'; +import { type FeatureFlagsConfig, featureFlagsConfig } from './feature_flags_config'; + +/** + * Core-internal contract for the setup lifecycle step. + * @private + */ +export interface InternalFeatureFlagsSetup extends FeatureFlagsSetup { + /** + * Used by the rendering service to share the overrides with the service on the browser side. + */ + getOverrides: () => Record; +} + +/** + * The server-side Feature Flags Service + * @private + */ +export class FeatureFlagsService { + private readonly featureFlagsClient: Client; + private readonly logger: Logger; + private overrides: Record = {}; + private context: MultiContextEvaluationContext = { kind: 'multi' }; + + /** + * The core service's constructor + * @param core {@link CoreContext} + */ + constructor(private readonly core: CoreContext) { + this.logger = core.logger.get('feature-flags-service'); + this.featureFlagsClient = OpenFeature.getClient(); + OpenFeature.setLogger(this.logger.get('open-feature')); + } + + /** + * Setup lifecycle method + */ + public setup(): InternalFeatureFlagsSetup { + // Register "overrides" to be changed via the dynamic config endpoint (enabled in test environments only) + this.core.configService.addDynamicConfigPaths(featureFlagsConfig.path, ['overrides']); + + this.core.configService + .atPath(featureFlagsConfig.path) + .subscribe(({ overrides = {} }) => { + this.overrides = overrides; + }); + + return { + getOverrides: () => this.overrides, + setProvider: (provider) => { + if (OpenFeature.providerMetadata !== NOOP_PROVIDER.metadata) { + throw new Error('A provider has already been set. This API cannot be called twice.'); + } + OpenFeature.setProvider(provider); + }, + appendContext: (contextToAppend) => this.appendContext(contextToAppend), + }; + } + + /** + * Start lifecycle method + */ + public start(): FeatureFlagsStart { + const featureFlagsChanged$ = new Subject(); + this.featureFlagsClient.addHandler(ServerProviderEvents.ConfigurationChanged, (event) => { + if (event?.flagsChanged) { + featureFlagsChanged$.next(event.flagsChanged); + } + }); + const observeFeatureFlag$ = (flagName: string) => + featureFlagsChanged$.pipe( + filter((flagNames) => flagNames.includes(flagName)), + startWith([flagName]) // only to emit on the first call + ); + + return { + appendContext: (contextToAppend) => this.appendContext(contextToAppend), + getBooleanValue: async (flagName, fallbackValue) => + this.evaluateFlag(this.featureFlagsClient.getBooleanValue, flagName, fallbackValue), + getStringValue: async (flagName: string, fallbackValue: Value) => + await this.evaluateFlag( + this.featureFlagsClient.getStringValue, + flagName, + fallbackValue + ), + getNumberValue: async (flagName: string, fallbackValue: Value) => + await this.evaluateFlag( + this.featureFlagsClient.getNumberValue, + flagName, + fallbackValue + ), + getBooleanValue$: (flagName, fallbackValue) => { + return observeFeatureFlag$(flagName).pipe( + switchMap(() => + this.evaluateFlag(this.featureFlagsClient.getBooleanValue, flagName, fallbackValue) + ) + ); + }, + getStringValue$: (flagName: string, fallbackValue: Value) => { + return observeFeatureFlag$(flagName).pipe( + switchMap(() => + this.evaluateFlag( + this.featureFlagsClient.getStringValue, + flagName, + fallbackValue + ) + ) + ); + }, + getNumberValue$: (flagName: string, fallbackValue: Value) => { + return observeFeatureFlag$(flagName).pipe( + switchMap(() => + this.evaluateFlag( + this.featureFlagsClient.getNumberValue, + flagName, + fallbackValue + ) + ) + ); + }, + }; + } + + /** + * Stop lifecycle method + */ + public async stop() { + await OpenFeature.close(); + } + + /** + * Wrapper to evaluate flags with the common config overrides interceptions + APM and counters reporting + * @param evaluationFn The actual evaluation API + * @param flagName The name of the flag to evaluate + * @param fallbackValue The fallback value + * @private + */ + private async evaluateFlag( + evaluationFn: (flagName: string, fallbackValue: T) => Promise, + flagName: string, + fallbackValue: T + ): Promise { + const value = + typeof this.overrides[flagName] !== 'undefined' + ? (this.overrides[flagName] as T) + : // We have to bind the evaluation or the client will lose its internal context + await evaluationFn.bind(this.featureFlagsClient)(flagName, fallbackValue); + apm.addLabels({ [`flag_${flagName}`]: value }); + // TODO: increment usage counter + return value; + } + + /** + * Formats the provided context to fulfill the expected multi-context structure. + * @param contextToAppend The {@link EvaluationContext} to append. + * @private + */ + private appendContext(contextToAppend: EvaluationContext): void { + // If no kind provided, default to the project|deployment level. + const { kind = 'kibana', ...rest } = contextToAppend; + // Format the context to fulfill the expected multi-context structure + const formattedContextToAppend: MultiContextEvaluationContext = + kind === 'multi' + ? (contextToAppend as MultiContextEvaluationContext) + : { kind: 'multi', [kind]: rest }; + + // Merge the formatted context to append to the global context, and set it in the OpenFeature client. + this.context = deepMerge(this.context, formattedContextToAppend); + OpenFeature.setContext(this.context); + } +} diff --git a/packages/core/feature-flags/core-feature-flags-server-internal/tsconfig.json b/packages/core/feature-flags/core-feature-flags-server-internal/tsconfig.json new file mode 100644 index 0000000000000..72a97ef56eb4f --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-internal/tsconfig.json @@ -0,0 +1,24 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node" + ] + }, + "include": [ + "**/*.ts", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/core-base-server-internal", + "@kbn/core-feature-flags-server", + "@kbn/logging", + "@kbn/core-base-server-mocks", + "@kbn/config-schema", + "@kbn/config-mocks", + ] +} diff --git a/packages/core/feature-flags/core-feature-flags-server-mocks/README.md b/packages/core/feature-flags/core-feature-flags-server-mocks/README.md new file mode 100644 index 0000000000000..caf2c4a13f8fb --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-mocks/README.md @@ -0,0 +1,3 @@ +# @kbn/core-feature-flags-server-mocks + +Server-side Jest mocks for the Feature Flags Service. diff --git a/packages/core/feature-flags/core-feature-flags-server-mocks/index.ts b/packages/core/feature-flags/core-feature-flags-server-mocks/index.ts new file mode 100644 index 0000000000000..182f6dbc21102 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-mocks/index.ts @@ -0,0 +1,88 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { PublicMethodsOf } from '@kbn/utility-types'; +import type { + FeatureFlagsRequestHandlerContext, + FeatureFlagsSetup, + FeatureFlagsStart, +} from '@kbn/core-feature-flags-server'; +import type { + FeatureFlagsService, + InternalFeatureFlagsSetup, +} from '@kbn/core-feature-flags-server-internal'; +import { of } from 'rxjs'; + +const createFeatureFlagsInternalSetup = (): jest.Mocked => { + return { + ...createFeatureFlagsSetup(), + getOverrides: jest.fn().mockReturnValue({}), + }; +}; + +const createFeatureFlagsSetup = (): jest.Mocked => { + return { + setProvider: jest.fn(), + appendContext: jest.fn(), + }; +}; + +const createFeatureFlagsStart = (): jest.Mocked => { + return { + appendContext: jest.fn(), + getBooleanValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getNumberValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getStringValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getBooleanValue$: jest.fn().mockImplementation((_, fallback) => of(fallback)), + getStringValue$: jest.fn().mockImplementation((_, fallback) => of(fallback)), + getNumberValue$: jest.fn().mockImplementation((_, fallback) => of(fallback)), + }; +}; + +const createRequestHandlerContext = (): jest.Mocked => { + return { + getBooleanValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getNumberValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + getStringValue: jest.fn().mockImplementation(async (_, fallback) => fallback), + }; +}; + +const createFeatureFlagsServiceMock = (): jest.Mocked> => { + return { + setup: jest.fn().mockImplementation(createFeatureFlagsInternalSetup), + start: jest.fn().mockImplementation(createFeatureFlagsStart), + stop: jest.fn().mockImplementation(Promise.resolve), + }; +}; + +/** + * Mocks for the Feature Flags service (browser-side) + */ +export const coreFeatureFlagsMock = { + /** + * Mocks the entire feature flags service + */ + create: createFeatureFlagsServiceMock, + /** + * Mocks the core-internal setup contract + */ + createInternalSetup: createFeatureFlagsInternalSetup, + /** + * Mocks the setup contract + */ + createSetup: createFeatureFlagsSetup, + /** + * Mocks the start contract + */ + createStart: createFeatureFlagsStart, + /** + * Mocks the request handler context contract + */ + createRequestHandlerContext, +}; diff --git a/packages/core/feature-flags/core-feature-flags-server-mocks/jest.config.js b/packages/core/feature-flags/core-feature-flags-server-mocks/jest.config.js new file mode 100644 index 0000000000000..bc50c37548c95 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-mocks/jest.config.js @@ -0,0 +1,14 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +module.exports = { + preset: '@kbn/test/jest_node', + rootDir: '../../../..', + roots: ['/packages/core/feature-flags/core-feature-flags-server-mocks'], +}; diff --git a/packages/core/feature-flags/core-feature-flags-server-mocks/kibana.jsonc b/packages/core/feature-flags/core-feature-flags-server-mocks/kibana.jsonc new file mode 100644 index 0000000000000..69b03f0badbdc --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-mocks/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-server", + "id": "@kbn/core-feature-flags-server-mocks", + "owner": "@elastic/kibana-core" +} diff --git a/packages/core/feature-flags/core-feature-flags-server-mocks/package.json b/packages/core/feature-flags/core-feature-flags-server-mocks/package.json new file mode 100644 index 0000000000000..f009e55f76a8e --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-mocks/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/core-feature-flags-server-mocks", + "private": true, + "version": "1.0.0", + "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0" +} \ No newline at end of file diff --git a/packages/core/feature-flags/core-feature-flags-server-mocks/tsconfig.json b/packages/core/feature-flags/core-feature-flags-server-mocks/tsconfig.json new file mode 100644 index 0000000000000..c672eb28c83a9 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server-mocks/tsconfig.json @@ -0,0 +1,21 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node" + ] + }, + "include": [ + "**/*.ts", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/utility-types", + "@kbn/core-feature-flags-server", + "@kbn/core-feature-flags-server-internal", + ] +} diff --git a/packages/core/feature-flags/core-feature-flags-server/README.md b/packages/core/feature-flags/core-feature-flags-server/README.md new file mode 100644 index 0000000000000..86b6fc210d0d4 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/README.md @@ -0,0 +1,3 @@ +# @kbn/core-feature-flags-server + +Server-side type definitions for the Feature Flags Service. diff --git a/packages/core/feature-flags/core-feature-flags-server/index.ts b/packages/core/feature-flags/core-feature-flags-server/index.ts new file mode 100644 index 0000000000000..7538b68686cd9 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/index.ts @@ -0,0 +1,18 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +export type { + EvaluationContext, + MultiContextEvaluationContext, + SingleContextEvaluationContext, + FeatureFlagsSetup, + FeatureFlagsStart, +} from './src/contracts'; +export type { FeatureFlagDefinition, FeatureFlagDefinitions } from './src/feature_flag_definition'; +export type { FeatureFlagsRequestHandlerContext } from './src/request_handler_context'; diff --git a/packages/core/feature-flags/core-feature-flags-server/kibana.jsonc b/packages/core/feature-flags/core-feature-flags-server/kibana.jsonc new file mode 100644 index 0000000000000..dc896ed83b97b --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-server", + "id": "@kbn/core-feature-flags-server", + "owner": "@elastic/kibana-core" +} diff --git a/packages/core/feature-flags/core-feature-flags-server/package.json b/packages/core/feature-flags/core-feature-flags-server/package.json new file mode 100644 index 0000000000000..d1f18a98a3840 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/core-feature-flags-server", + "private": true, + "version": "1.0.0", + "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0" +} \ No newline at end of file diff --git a/packages/core/feature-flags/core-feature-flags-server/src/contracts.ts b/packages/core/feature-flags/core-feature-flags-server/src/contracts.ts new file mode 100644 index 0000000000000..34fc3a3a73383 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/src/contracts.ts @@ -0,0 +1,165 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { Provider } from '@openfeature/server-sdk'; +import { type EvaluationContext as OpenFeatureEvaluationContext } from '@openfeature/core'; +import type { Observable } from 'rxjs'; + +/** + * The evaluation context to use when retrieving the flags. + * + * We use multi-context so that we can apply segmentation rules at different levels (`organization`/`kibana`). + * * `organization` includes any information that is common to all the projects/deployments in an organization. An example is the in_trial status. + * * The `kibana` context includes all the information that identifies a project/deployment. Examples are version, offering, and has_data. + * Kind helps us specify which sub-context should receive the new attributes. + * If no `kind` is provided, it defaults to `kibana`. + * + * @example Providing properties for both contexts + * { + * kind: 'multi', + * organization: { + * key: 1234, + * in_trial: true, + * }, + * kibana: { + * key: 12345567890, + * version: 8.15.0, + * buildHash: 'ffffffffaaaaaaaa', + * }, + * } + * + * @example Appending context to the organization sub-context + * { + * kind: 'organization', + * key: 1234, + * in_trial: true, + * } + * + * @example Appending context to the `kibana` sub-context + * { + * key: 12345567890, + * version: 8.15.0, + * buildHash: 'ffffffffaaaaaaaa', + * } + * } + * + * @public + */ +export type EvaluationContext = MultiContextEvaluationContext | SingleContextEvaluationContext; + +/** + * Multi-context format. The sub-contexts are provided in their nested properties. + * @public + */ +export type MultiContextEvaluationContext = OpenFeatureEvaluationContext & { + /** + * Static `multi` string + */ + kind: 'multi'; + /** + * The Elastic Cloud organization-specific context. + */ + organization?: OpenFeatureEvaluationContext; + /** + * The deployment/project-specific context. + */ + kibana?: OpenFeatureEvaluationContext; +}; + +/** + * Single Context format. If `kind` is not specified, it applies to the `kibana` sub-context. + */ +export type SingleContextEvaluationContext = OpenFeatureEvaluationContext & { + /** + * The sub-context that it's updated. Defaults to `kibana`. + */ + kind?: 'organization' | 'kibana'; +}; + +/** + * Setup contract of the Feature Flags Service + * @public + */ +export interface FeatureFlagsSetup { + /** + * Registers an OpenFeature provider to talk to the + * 3rd-party service that manages the Feature Flags. + * @param provider The {@link Provider | OpenFeature Provider} to handle the communication with the feature flags management system. + * @public + */ + setProvider(provider: Provider): void; + + /** + * Appends new keys to the evaluation context. + * @param contextToAppend The additional keys that should be appended/modified in the evaluation context. + * @public + */ + appendContext(contextToAppend: EvaluationContext): void; +} + +/** + * Setup contract of the Feature Flags Service + * @public + */ +export interface FeatureFlagsStart { + /** + * Appends new keys to the evaluation context. + * @param contextToAppend The additional keys that should be appended/modified in the evaluation context. + * @public + */ + appendContext(contextToAppend: EvaluationContext): void; + + /** + * Evaluates a boolean flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getBooleanValue(flagName: string, fallbackValue: boolean): Promise; + + /** + * Evaluates a string flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getStringValue(flagName: string, fallbackValue: Value): Promise; + + /** + * Evaluates a number flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getNumberValue(flagName: string, fallbackValue: Value): Promise; + + /** + * Returns an observable of a boolean flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getBooleanValue$(flagName: string, fallbackValue: boolean): Observable; + + /** + * Returns an observable of a string flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getStringValue$(flagName: string, fallbackValue: Value): Observable; + + /** + * Returns an observable of a number flag + * @param flagName The flag ID to evaluate + * @param fallbackValue If the flag cannot be evaluated for whatever reason, the fallback value is provided. + * @public + */ + getNumberValue$(flagName: string, fallbackValue: Value): Observable; +} diff --git a/packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts b/packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts new file mode 100644 index 0000000000000..3ea761484fc2a --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/src/feature_flag_definition.ts @@ -0,0 +1,60 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +/** + * List of {@link FeatureFlagDefinition} + */ +export type FeatureFlagDefinitions = Array< + | FeatureFlagDefinition<'boolean'> + | FeatureFlagDefinition<'string'> + | FeatureFlagDefinition<'number'> +>; + +/** + * Definition of a feature flag + */ +export interface FeatureFlagDefinition { + /** + * The ID of the feature flag. Used to reference it when evaluating the flag. + */ + key: string; + /** + * Human friendly name. + */ + name: string; + /** + * Description of the purpose of the feature flag. + */ + description?: string; + /** + * Tags to apply to the feature flag for easier categorizing. It may include the plugin, the solution, the team. + */ + tags: string[]; + /** + * The type of the values returned by the feature flag ("string", "boolean", or "number"). + */ + variationType: ValueType; + /** + * List of variations of the feature flags. + */ + variations: Array<{ + /** + * Human friendly name of the variation. + */ + name: string; + /** + * Description of the variation. + */ + description?: string; + /** + * The value of the variation. + */ + value: ValueType extends 'string' ? string : ValueType extends 'boolean' ? boolean : number; + }>; +} diff --git a/packages/core/feature-flags/core-feature-flags-server/src/request_handler_context.ts b/packages/core/feature-flags/core-feature-flags-server/src/request_handler_context.ts new file mode 100644 index 0000000000000..25f521e18f1c9 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/src/request_handler_context.ts @@ -0,0 +1,18 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { FeatureFlagsStart } from '..'; + +/** + * The HTTP request handler context for evaluating feature flags + */ +export type FeatureFlagsRequestHandlerContext = Pick< + FeatureFlagsStart, + 'getBooleanValue' | 'getStringValue' | 'getNumberValue' +>; diff --git a/packages/core/feature-flags/core-feature-flags-server/tsconfig.json b/packages/core/feature-flags/core-feature-flags-server/tsconfig.json new file mode 100644 index 0000000000000..f5bb1b00512e4 --- /dev/null +++ b/packages/core/feature-flags/core-feature-flags-server/tsconfig.json @@ -0,0 +1,16 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "node" + ] + }, + "include": [ + "**/*.ts", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [] +} diff --git a/packages/core/http/core-http-request-handler-context-server-internal/src/core_route_handler_context.ts b/packages/core/http/core-http-request-handler-context-server-internal/src/core_route_handler_context.ts index 2e1e3b790b55a..376eb5a2bd24f 100644 --- a/packages/core/http/core-http-request-handler-context-server-internal/src/core_route_handler_context.ts +++ b/packages/core/http/core-http-request-handler-context-server-internal/src/core_route_handler_context.ts @@ -33,12 +33,15 @@ import { CoreUserProfileRouteHandlerContext, type InternalUserProfileServiceStart, } from '@kbn/core-user-profile-server-internal'; +import { CoreFeatureFlagsRouteHandlerContext } from '@kbn/core-feature-flags-server-internal'; +import type { FeatureFlagsStart } from '@kbn/core-feature-flags-server'; /** * Subset of `InternalCoreStart` used by {@link CoreRouteHandlerContext} * @internal */ export interface CoreRouteHandlerContextParams { + featureFlags: FeatureFlagsStart; elasticsearch: InternalElasticsearchServiceStart; savedObjects: InternalSavedObjectsServiceStart; uiSettings: InternalUiSettingsServiceStart; @@ -53,6 +56,7 @@ export interface CoreRouteHandlerContextParams { * @internal */ export class CoreRouteHandlerContext implements CoreRequestHandlerContext { + #featureFlags?: CoreFeatureFlagsRouteHandlerContext; #elasticsearch?: CoreElasticsearchRouteHandlerContext; #savedObjects?: CoreSavedObjectsRouteHandlerContext; #uiSettings?: CoreUiSettingsRouteHandlerContext; @@ -65,6 +69,13 @@ export class CoreRouteHandlerContext implements CoreRequestHandlerContext { private readonly request: KibanaRequest ) {} + public get featureFlags() { + if (!this.#featureFlags) { + this.#featureFlags = new CoreFeatureFlagsRouteHandlerContext(this.coreStart.featureFlags); + } + return this.#featureFlags; + } + public get elasticsearch() { if (!this.#elasticsearch) { this.#elasticsearch = new CoreElasticsearchRouteHandlerContext( diff --git a/packages/core/http/core-http-request-handler-context-server-internal/src/test_helpers/core_route_handler_context_params.mock.ts b/packages/core/http/core-http-request-handler-context-server-internal/src/test_helpers/core_route_handler_context_params.mock.ts index 1839f51a68c62..01b3c7aee4656 100644 --- a/packages/core/http/core-http-request-handler-context-server-internal/src/test_helpers/core_route_handler_context_params.mock.ts +++ b/packages/core/http/core-http-request-handler-context-server-internal/src/test_helpers/core_route_handler_context_params.mock.ts @@ -7,6 +7,7 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; import { elasticsearchServiceMock } from '@kbn/core-elasticsearch-server-mocks'; import { savedObjectsServiceMock } from '@kbn/core-saved-objects-server-mocks'; import { uiSettingsServiceMock } from '@kbn/core-ui-settings-server-mocks'; @@ -16,6 +17,7 @@ import { userProfileServiceMock } from '@kbn/core-user-profile-server-mocks'; export const createCoreRouteHandlerContextParamsMock = () => { return { + featureFlags: coreFeatureFlagsMock.createStart(), elasticsearch: elasticsearchServiceMock.createInternalStart(), savedObjects: savedObjectsServiceMock.createInternalStartContract(), uiSettings: uiSettingsServiceMock.createStartContract(), diff --git a/packages/core/http/core-http-request-handler-context-server-internal/tsconfig.json b/packages/core/http/core-http-request-handler-context-server-internal/tsconfig.json index 9e5ab96901e86..99c86608d99de 100644 --- a/packages/core/http/core-http-request-handler-context-server-internal/tsconfig.json +++ b/packages/core/http/core-http-request-handler-context-server-internal/tsconfig.json @@ -27,6 +27,9 @@ "@kbn/core-security-server-mocks", "@kbn/core-user-profile-server-internal", "@kbn/core-user-profile-server-mocks", + "@kbn/core-feature-flags-server-internal", + "@kbn/core-feature-flags-server", + "@kbn/core-feature-flags-server-mocks", ], "exclude": [ "target/**/*", diff --git a/packages/core/http/core-http-request-handler-context-server/src/preboot_request_handler_context.ts b/packages/core/http/core-http-request-handler-context-server/src/preboot_request_handler_context.ts index 8f2755403e1d8..294adf380d8e1 100644 --- a/packages/core/http/core-http-request-handler-context-server/src/preboot_request_handler_context.ts +++ b/packages/core/http/core-http-request-handler-context-server/src/preboot_request_handler_context.ts @@ -11,22 +11,34 @@ import type { RequestHandlerContextBase } from '@kbn/core-http-server'; import type { IUiSettingsClient } from '@kbn/core-ui-settings-server'; /** + * `uiSettings` http request context provider during the preboot phase. * @public */ export interface PrebootUiSettingsRequestHandlerContext { + /** + * The {@link IUiSettingsClient | UI Settings client}. + */ client: IUiSettingsClient; } /** + * The `core` context provided to route handler during the preboot phase. * @public */ export interface PrebootCoreRequestHandlerContext { + /** + * {@link PrebootUiSettingsRequestHandlerContext} + */ uiSettings: PrebootUiSettingsRequestHandlerContext; } /** + * Base context passed to a route handler during the preboot phase, containing the `core` context part. * @public */ export interface PrebootRequestHandlerContext extends RequestHandlerContextBase { + /** + * Promise that resolves the {@link PrebootCoreRequestHandlerContext} + */ core: Promise; } diff --git a/packages/core/http/core-http-request-handler-context-server/src/request_handler_context.ts b/packages/core/http/core-http-request-handler-context-server/src/request_handler_context.ts index 0dc5655c820fa..1d77e033b8e62 100644 --- a/packages/core/http/core-http-request-handler-context-server/src/request_handler_context.ts +++ b/packages/core/http/core-http-request-handler-context-server/src/request_handler_context.ts @@ -14,6 +14,7 @@ import type { DeprecationsRequestHandlerContext } from '@kbn/core-deprecations-s import type { UiSettingsRequestHandlerContext } from '@kbn/core-ui-settings-server'; import type { SecurityRequestHandlerContext } from '@kbn/core-security-server'; import type { UserProfileRequestHandlerContext } from '@kbn/core-user-profile-server'; +import type { FeatureFlagsRequestHandlerContext } from '@kbn/core-feature-flags-server'; /** * The `core` context provided to route handler. @@ -30,11 +31,33 @@ import type { UserProfileRequestHandlerContext } from '@kbn/core-user-profile-se * @public */ export interface CoreRequestHandlerContext { + /** + * {@link SavedObjectsRequestHandlerContext} + */ savedObjects: SavedObjectsRequestHandlerContext; + /** + * {@link ElasticsearchRequestHandlerContext} + */ elasticsearch: ElasticsearchRequestHandlerContext; + /** + * {@link FeatureFlagsRequestHandlerContext} + */ + featureFlags: FeatureFlagsRequestHandlerContext; + /** + * {@link UiSettingsRequestHandlerContext} + */ uiSettings: UiSettingsRequestHandlerContext; + /** + * {@link DeprecationsRequestHandlerContext} + */ deprecations: DeprecationsRequestHandlerContext; + /** + * {@link SecurityRequestHandlerContext} + */ security: SecurityRequestHandlerContext; + /** + * {@link UserProfileRequestHandlerContext} + */ userProfile: UserProfileRequestHandlerContext; } @@ -44,6 +67,9 @@ export interface CoreRequestHandlerContext { * @public */ export interface RequestHandlerContext extends RequestHandlerContextBase { + /** + * Promise that resolves the {@link CoreRequestHandlerContext} + */ core: Promise; } diff --git a/packages/core/http/core-http-request-handler-context-server/tsconfig.json b/packages/core/http/core-http-request-handler-context-server/tsconfig.json index 4606770c753d7..905a13801f223 100644 --- a/packages/core/http/core-http-request-handler-context-server/tsconfig.json +++ b/packages/core/http/core-http-request-handler-context-server/tsconfig.json @@ -17,7 +17,8 @@ "@kbn/core-deprecations-server", "@kbn/core-ui-settings-server", "@kbn/core-security-server", - "@kbn/core-user-profile-server" + "@kbn/core-user-profile-server", + "@kbn/core-feature-flags-server" ], "exclude": [ "target/**/*", diff --git a/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.test.ts b/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.test.ts index dd1e768a64709..dd315b38fe3c2 100644 --- a/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.test.ts +++ b/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.test.ts @@ -9,6 +9,7 @@ import type { DiscoveredPlugin } from '@kbn/core-base-common'; import { InjectedMetadataService } from './injected_metadata_service'; +import type { InjectedMetadataParams } from '..'; describe('setup.getElasticsearchInfo()', () => { it('returns elasticsearch info from injectedMetadata', () => { @@ -160,3 +161,29 @@ describe('setup.getLegacyMetadata()', () => { }).toThrowError(); }); }); + +describe('setup.getFeatureFlags()', () => { + it('returns injectedMetadata.featureFlags', () => { + const injectedMetadata = new InjectedMetadataService({ + injectedMetadata: { + featureFlags: { + overrides: { + 'my-overridden-flag': 1234, + }, + }, + }, + } as unknown as InjectedMetadataParams); + + const contract = injectedMetadata.setup(); + expect(contract.getFeatureFlags()).toStrictEqual({ overrides: { 'my-overridden-flag': 1234 } }); + }); + + it('returns empty injectedMetadata.featureFlags', () => { + const injectedMetadata = new InjectedMetadataService({ + injectedMetadata: {}, + } as unknown as InjectedMetadataParams); + + const contract = injectedMetadata.setup(); + expect(contract.getFeatureFlags()).toBeUndefined(); + }); +}); diff --git a/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.ts b/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.ts index 624c213ce11bc..b9594b9f042e3 100644 --- a/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.ts +++ b/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/injected_metadata_service.ts @@ -95,6 +95,10 @@ export class InjectedMetadataService { getCustomBranding: () => { return this.state.customBranding; }, + + getFeatureFlags: () => { + return this.state.featureFlags; + }, }; } } diff --git a/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/types.ts b/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/types.ts index f8c730414746d..244b99da0c207 100644 --- a/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/types.ts +++ b/packages/core/injected-metadata/core-injected-metadata-browser-internal/src/types.ts @@ -58,6 +58,11 @@ export interface InternalInjectedMetadataSetup { }; }; getCustomBranding: () => CustomBranding; + getFeatureFlags: () => + | { + overrides: Record; + } + | undefined; } /** @internal */ diff --git a/packages/core/injected-metadata/core-injected-metadata-browser-mocks/src/injected_metadata_service.mock.ts b/packages/core/injected-metadata/core-injected-metadata-browser-mocks/src/injected_metadata_service.mock.ts index 9ee48eda09210..804134cabd4b9 100644 --- a/packages/core/injected-metadata/core-injected-metadata-browser-mocks/src/injected_metadata_service.mock.ts +++ b/packages/core/injected-metadata/core-injected-metadata-browser-mocks/src/injected_metadata_service.mock.ts @@ -30,6 +30,7 @@ const createSetupContractMock = () => { getPlugins: jest.fn(), getKibanaBuildNumber: jest.fn(), getCustomBranding: jest.fn(), + getFeatureFlags: jest.fn(), }; setupContract.getBasePath.mockReturnValue('/base-path'); setupContract.getServerBasePath.mockReturnValue('/server-base-path'); diff --git a/packages/core/injected-metadata/core-injected-metadata-common-internal/src/types.ts b/packages/core/injected-metadata/core-injected-metadata-common-internal/src/types.ts index 498e1ff0f15e9..1ee75dbfc0d5d 100644 --- a/packages/core/injected-metadata/core-injected-metadata-common-internal/src/types.ts +++ b/packages/core/injected-metadata/core-injected-metadata-common-internal/src/types.ts @@ -63,6 +63,9 @@ export interface InjectedMetadata { mode: EnvironmentMode; packageInfo: PackageInfo; }; + featureFlags?: { + overrides: Record; + }; anonymousStatusPage: boolean; i18n: { translationsUrl: string; diff --git a/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_setup.ts b/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_setup.ts index 9730936cedb93..07695d37bea69 100644 --- a/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_setup.ts +++ b/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_setup.ts @@ -13,6 +13,7 @@ import type { InternalInjectedMetadataSetup } from '@kbn/core-injected-metadata- import type { InternalHttpSetup } from '@kbn/core-http-browser-internal'; import type { InternalSecurityServiceSetup } from '@kbn/core-security-browser-internal'; import type { InternalUserProfileServiceSetup } from '@kbn/core-user-profile-browser-internal'; +import type { FeatureFlagsSetup } from '@kbn/core-feature-flags-browser'; /** @internal */ export interface InternalCoreSetup @@ -21,6 +22,7 @@ export interface InternalCoreSetup 'application' | 'plugins' | 'getStartServices' | 'http' | 'security' | 'userProfile' > { application: InternalApplicationSetup; + featureFlags: FeatureFlagsSetup; injectedMetadata: InternalInjectedMetadataSetup; http: InternalHttpSetup; security: InternalSecurityServiceSetup; diff --git a/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_start.ts b/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_start.ts index 0571ca18955b1..f422275f53019 100644 --- a/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_start.ts +++ b/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_start.ts @@ -13,11 +13,13 @@ import type { InternalInjectedMetadataStart } from '@kbn/core-injected-metadata- import type { InternalHttpStart } from '@kbn/core-http-browser-internal'; import type { InternalSecurityServiceStart } from '@kbn/core-security-browser-internal'; import type { InternalUserProfileServiceStart } from '@kbn/core-user-profile-browser-internal'; +import type { FeatureFlagsStart } from '@kbn/core-feature-flags-browser'; /** @internal */ export interface InternalCoreStart extends Omit { application: InternalApplicationStart; + featureFlags: FeatureFlagsStart; injectedMetadata: InternalInjectedMetadataStart; http: InternalHttpStart; security: InternalSecurityServiceStart; diff --git a/packages/core/lifecycle/core-lifecycle-browser-internal/tsconfig.json b/packages/core/lifecycle/core-lifecycle-browser-internal/tsconfig.json index 4fd531018418d..84c55c0e87b90 100644 --- a/packages/core/lifecycle/core-lifecycle-browser-internal/tsconfig.json +++ b/packages/core/lifecycle/core-lifecycle-browser-internal/tsconfig.json @@ -17,7 +17,8 @@ "@kbn/core-injected-metadata-browser-internal", "@kbn/core-http-browser-internal", "@kbn/core-security-browser-internal", - "@kbn/core-user-profile-browser-internal" + "@kbn/core-user-profile-browser-internal", + "@kbn/core-feature-flags-browser" ], "exclude": [ "target/**/*", diff --git a/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_setup.mock.ts b/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_setup.mock.ts index 1a3f6e22ff39a..9937286104efe 100644 --- a/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_setup.mock.ts +++ b/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_setup.mock.ts @@ -21,6 +21,7 @@ import { customBrandingServiceMock } from '@kbn/core-custom-branding-browser-moc import { securityServiceMock } from '@kbn/core-security-browser-mocks'; import { userProfileServiceMock } from '@kbn/core-user-profile-browser-mocks'; import { createCoreStartMock } from './core_start.mock'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-browser-mocks'; export function createCoreSetupMock({ basePath = '', @@ -38,6 +39,7 @@ export function createCoreSetupMock({ docLinks: docLinksServiceMock.createSetupContract(), executionContext: executionContextServiceMock.createSetupContract(), fatalErrors: fatalErrorsServiceMock.createSetupContract(), + featureFlags: coreFeatureFlagsMock.createSetup(), getStartServices: jest.fn, any, any]>, []>(() => Promise.resolve([createCoreStartMock({ basePath }), pluginStartDeps, pluginStartContract]) ), diff --git a/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_start.mock.ts b/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_start.mock.ts index 71f5dd0db3958..f6f5aa5493f73 100644 --- a/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_start.mock.ts +++ b/packages/core/lifecycle/core-lifecycle-browser-mocks/src/core_start.mock.ts @@ -24,6 +24,7 @@ import { chromeServiceMock } from '@kbn/core-chrome-browser-mocks'; import { customBrandingServiceMock } from '@kbn/core-custom-branding-browser-mocks'; import { securityServiceMock } from '@kbn/core-security-browser-mocks'; import { userProfileServiceMock } from '@kbn/core-user-profile-browser-mocks'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-browser-mocks'; export function createCoreStartMock({ basePath = '' } = {}) { const mock = { @@ -33,6 +34,7 @@ export function createCoreStartMock({ basePath = '' } = {}) { customBranding: customBrandingServiceMock.createStartContract(), docLinks: docLinksServiceMock.createStartContract(), executionContext: executionContextServiceMock.createStartContract(), + featureFlags: coreFeatureFlagsMock.createStart(), http: httpServiceMock.createStartContract({ basePath }), i18n: i18nServiceMock.createStartContract(), notifications: notificationServiceMock.createStartContract(), diff --git a/packages/core/lifecycle/core-lifecycle-browser-mocks/tsconfig.json b/packages/core/lifecycle/core-lifecycle-browser-mocks/tsconfig.json index b6df8220f8603..cc1f0ed785dbc 100644 --- a/packages/core/lifecycle/core-lifecycle-browser-mocks/tsconfig.json +++ b/packages/core/lifecycle/core-lifecycle-browser-mocks/tsconfig.json @@ -28,7 +28,8 @@ "@kbn/core-chrome-browser-mocks", "@kbn/core-custom-branding-browser-mocks", "@kbn/core-security-browser-mocks", - "@kbn/core-user-profile-browser-mocks" + "@kbn/core-user-profile-browser-mocks", + "@kbn/core-feature-flags-browser-mocks" ], "exclude": [ "target/**/*", diff --git a/packages/core/lifecycle/core-lifecycle-browser/src/core_setup.ts b/packages/core/lifecycle/core-lifecycle-browser/src/core_setup.ts index a989bdda60426..bef46aa4b84c1 100644 --- a/packages/core/lifecycle/core-lifecycle-browser/src/core_setup.ts +++ b/packages/core/lifecycle/core-lifecycle-browser/src/core_setup.ts @@ -10,6 +10,7 @@ import type { ThemeServiceSetup } from '@kbn/core-theme-browser'; import type { AnalyticsServiceSetup } from '@kbn/core-analytics-browser'; import type { ExecutionContextSetup } from '@kbn/core-execution-context-browser'; +import type { FeatureFlagsSetup } from '@kbn/core-feature-flags-browser'; import type { HttpSetup } from '@kbn/core-http-browser'; import type { FatalErrorsSetup } from '@kbn/core-fatal-errors-browser'; import type { IUiSettingsClient, SettingsStart } from '@kbn/core-ui-settings-browser'; @@ -44,6 +45,8 @@ export interface CoreSetup & { elasticsearch: ReturnType; @@ -61,6 +62,7 @@ export function createCoreSetupMock({ userSettings: userSettingsServiceMock.createSetupContract(), docLinks: docLinksServiceMock.createSetupContract(), elasticsearch: elasticsearchServiceMock.createSetup(), + featureFlags: coreFeatureFlagsMock.createSetup(), http: httpMock, i18n: i18nServiceMock.createSetupContract(), savedObjects: savedObjectsServiceMock.createInternalSetupContract(), diff --git a/packages/core/lifecycle/core-lifecycle-server-mocks/src/core_start.mock.ts b/packages/core/lifecycle/core-lifecycle-server-mocks/src/core_start.mock.ts index 8bbdb322bb14a..d4b341bcf2f54 100644 --- a/packages/core/lifecycle/core-lifecycle-server-mocks/src/core_start.mock.ts +++ b/packages/core/lifecycle/core-lifecycle-server-mocks/src/core_start.mock.ts @@ -22,6 +22,7 @@ import { coreUsageDataServiceMock } from '@kbn/core-usage-data-server-mocks'; import { customBrandingServiceMock } from '@kbn/core-custom-branding-server-mocks'; import { securityServiceMock } from '@kbn/core-security-server-mocks'; import { userProfileServiceMock } from '@kbn/core-user-profile-server-mocks'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; export function createCoreStartMock() { const mock: MockedKeys = { @@ -29,6 +30,7 @@ export function createCoreStartMock() { capabilities: capabilitiesServiceMock.createStartContract(), docLinks: docLinksServiceMock.createStartContract(), elasticsearch: elasticsearchServiceMock.createStart(), + featureFlags: coreFeatureFlagsMock.createStart(), http: httpServiceMock.createStartContract(), metrics: metricsServiceMock.createStartContract(), savedObjects: savedObjectsServiceMock.createStartContract(), diff --git a/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_setup.mock.ts b/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_setup.mock.ts index 4919fa0c65eb5..4e6ca5b75059f 100644 --- a/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_setup.mock.ts +++ b/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_setup.mock.ts @@ -29,6 +29,7 @@ import { customBrandingServiceMock } from '@kbn/core-custom-branding-server-mock import { userSettingsServiceMock } from '@kbn/core-user-settings-server-mocks'; import { securityServiceMock } from '@kbn/core-security-server-mocks'; import { userProfileServiceMock } from '@kbn/core-user-profile-server-mocks'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; export function createInternalCoreSetupMock() { const setupDeps = { @@ -37,6 +38,7 @@ export function createInternalCoreSetupMock() { context: contextServiceMock.createSetupContract(), docLinks: docLinksServiceMock.createSetupContract(), elasticsearch: elasticsearchServiceMock.createInternalSetup(), + featureFlags: coreFeatureFlagsMock.createInternalSetup(), http: httpServiceMock.createInternalSetupContract(), savedObjects: savedObjectsServiceMock.createInternalSetupContract(), status: statusServiceMock.createInternalSetupContract(), diff --git a/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_start.mock.ts b/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_start.mock.ts index 4e0d63f654516..248a9712057f4 100644 --- a/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_start.mock.ts +++ b/packages/core/lifecycle/core-lifecycle-server-mocks/src/internal_core_start.mock.ts @@ -21,6 +21,7 @@ import { coreUsageDataServiceMock } from '@kbn/core-usage-data-server-mocks'; import { customBrandingServiceMock } from '@kbn/core-custom-branding-server-mocks'; import { securityServiceMock } from '@kbn/core-security-server-mocks'; import { userProfileServiceMock } from '@kbn/core-user-profile-server-mocks'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; export function createInternalCoreStartMock() { const startDeps = { @@ -28,6 +29,7 @@ export function createInternalCoreStartMock() { capabilities: capabilitiesServiceMock.createStartContract(), docLinks: docLinksServiceMock.createStartContract(), elasticsearch: elasticsearchServiceMock.createInternalStart(), + featureFlags: coreFeatureFlagsMock.createStart(), http: httpServiceMock.createInternalStartContract(), metrics: metricsServiceMock.createInternalStartContract(), savedObjects: savedObjectsServiceMock.createInternalStartContract(), diff --git a/packages/core/lifecycle/core-lifecycle-server-mocks/tsconfig.json b/packages/core/lifecycle/core-lifecycle-server-mocks/tsconfig.json index bacda3278557b..89ec5b0e1b7ba 100644 --- a/packages/core/lifecycle/core-lifecycle-server-mocks/tsconfig.json +++ b/packages/core/lifecycle/core-lifecycle-server-mocks/tsconfig.json @@ -37,6 +37,7 @@ "@kbn/core-user-settings-server-mocks", "@kbn/core-security-server-mocks", "@kbn/core-user-profile-server-mocks", + "@kbn/core-feature-flags-server-mocks", ], "exclude": [ "target/**/*", diff --git a/packages/core/lifecycle/core-lifecycle-server/src/core_setup.ts b/packages/core/lifecycle/core-lifecycle-server/src/core_setup.ts index 63f56f22cc145..59616a5d65ecd 100644 --- a/packages/core/lifecycle/core-lifecycle-server/src/core_setup.ts +++ b/packages/core/lifecycle/core-lifecycle-server/src/core_setup.ts @@ -13,6 +13,7 @@ import type { DeprecationsServiceSetup } from '@kbn/core-deprecations-server'; import type { DocLinksServiceSetup } from '@kbn/core-doc-links-server'; import type { ElasticsearchServiceSetup } from '@kbn/core-elasticsearch-server'; import type { ExecutionContextSetup } from '@kbn/core-execution-context-server'; +import type { FeatureFlagsSetup } from '@kbn/core-feature-flags-server'; import type { RequestHandlerContext } from '@kbn/core-http-request-handler-context-server'; import type { HttpResources } from '@kbn/core-http-resources-server'; import type { HttpServiceSetup } from '@kbn/core-http-server'; @@ -52,6 +53,8 @@ export interface CoreSetup & { /** {@link HttpResources} */ diff --git a/packages/core/lifecycle/core-lifecycle-server/src/core_start.ts b/packages/core/lifecycle/core-lifecycle-server/src/core_start.ts index ae6135c55800f..13d871df8b759 100644 --- a/packages/core/lifecycle/core-lifecycle-server/src/core_start.ts +++ b/packages/core/lifecycle/core-lifecycle-server/src/core_start.ts @@ -12,6 +12,7 @@ import type { CapabilitiesStart } from '@kbn/core-capabilities-server'; import type { DocLinksServiceStart } from '@kbn/core-doc-links-server'; import type { ElasticsearchServiceStart } from '@kbn/core-elasticsearch-server'; import type { ExecutionContextStart } from '@kbn/core-execution-context-server'; +import type { FeatureFlagsStart } from '@kbn/core-feature-flags-server'; import type { HttpServiceStart } from '@kbn/core-http-server'; import type { MetricsServiceStart } from '@kbn/core-metrics-server'; import type { SavedObjectsServiceStart } from '@kbn/core-saved-objects-server'; @@ -40,6 +41,8 @@ export interface CoreStart { elasticsearch: ElasticsearchServiceStart; /** {@link ExecutionContextStart} */ executionContext: ExecutionContextStart; + /** {@link FeatureFlagsStart} */ + featureFlags: FeatureFlagsStart; /** {@link HttpServiceStart} */ http: HttpServiceStart; /** {@link MetricsServiceStart} */ diff --git a/packages/core/lifecycle/core-lifecycle-server/tsconfig.json b/packages/core/lifecycle/core-lifecycle-server/tsconfig.json index ed35724914dec..c8b95eed1e6d7 100644 --- a/packages/core/lifecycle/core-lifecycle-server/tsconfig.json +++ b/packages/core/lifecycle/core-lifecycle-server/tsconfig.json @@ -32,7 +32,8 @@ "@kbn/core-user-settings-server", "@kbn/core-plugins-contracts-server", "@kbn/core-security-server", - "@kbn/core-user-profile-server" + "@kbn/core-user-profile-server", + "@kbn/core-feature-flags-server" ], "exclude": [ "target/**/*", diff --git a/packages/core/plugins/core-plugins-browser-internal/src/plugin_context.ts b/packages/core/plugins/core-plugins-browser-internal/src/plugin_context.ts index ad242905f7751..b78e5cec0b276 100644 --- a/packages/core/plugins/core-plugins-browser-internal/src/plugin_context.ts +++ b/packages/core/plugins/core-plugins-browser-internal/src/plugin_context.ts @@ -82,6 +82,7 @@ export function createPluginSetupContext< }, customBranding: deps.customBranding, fatalErrors: deps.fatalErrors, + featureFlags: deps.featureFlags, executionContext: deps.executionContext, http: { ...deps.http, @@ -147,6 +148,7 @@ export function createPluginStartContext< customBranding: deps.customBranding, docLinks: deps.docLinks, executionContext: deps.executionContext, + featureFlags: deps.featureFlags, http: { ...deps.http, staticAssets: { diff --git a/packages/core/plugins/core-plugins-server-internal/src/plugin_context.ts b/packages/core/plugins/core-plugins-server-internal/src/plugin_context.ts index 76306751427cf..2fcdf384cb897 100644 --- a/packages/core/plugins/core-plugins-server-internal/src/plugin_context.ts +++ b/packages/core/plugins/core-plugins-server-internal/src/plugin_context.ts @@ -212,12 +212,17 @@ export function createPluginSetupContext({ docLinks: deps.docLinks, elasticsearch: { legacy: deps.elasticsearch.legacy, + publicBaseUrl: deps.elasticsearch.publicBaseUrl, setUnauthorizedErrorHandler: deps.elasticsearch.setUnauthorizedErrorHandler, }, executionContext: { withContext: deps.executionContext.withContext, getAsLabels: deps.executionContext.getAsLabels, }, + featureFlags: { + setProvider: deps.featureFlags.setProvider, + appendContext: deps.featureFlags.appendContext, + }, http: { createCookieSessionStorageFactory: deps.http.createCookieSessionStorageFactory, registerRouteHandlerContext: < @@ -332,6 +337,15 @@ export function createPluginStartContext({ getCapabilities: deps.elasticsearch.getCapabilities, }, executionContext: deps.executionContext, + featureFlags: { + appendContext: deps.featureFlags.appendContext, + getBooleanValue: deps.featureFlags.getBooleanValue, + getStringValue: deps.featureFlags.getStringValue, + getNumberValue: deps.featureFlags.getNumberValue, + getBooleanValue$: deps.featureFlags.getBooleanValue$, + getStringValue$: deps.featureFlags.getStringValue$, + getNumberValue$: deps.featureFlags.getNumberValue$, + }, http: { auth: deps.http.auth, basePath: deps.http.basePath, diff --git a/packages/core/rendering/core-rendering-server-internal/src/__snapshots__/rendering_service.test.ts.snap b/packages/core/rendering/core-rendering-server-internal/src/__snapshots__/rendering_service.test.ts.snap index e92e760b400e5..c858b6a8470d2 100644 --- a/packages/core/rendering/core-rendering-server-internal/src/__snapshots__/rendering_service.test.ts.snap +++ b/packages/core/rendering/core-rendering-server-internal/src/__snapshots__/rendering_service.test.ts.snap @@ -39,6 +39,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -121,6 +124,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -199,6 +205,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -281,6 +290,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -359,6 +371,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -437,6 +452,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -519,6 +537,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -597,6 +618,90 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, + "i18n": Object { + "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", + }, + "legacyMetadata": Object { + "globalUiSettings": Object { + "defaults": Object {}, + "user": Object {}, + }, + "uiSettings": Object { + "defaults": Object { + "registered": Object { + "name": "title", + }, + }, + "user": Object {}, + }, + }, + "logging": Any, + "publicBaseUrl": "http://myhost.com/mock-server-basepath", + "serverBasePath": "/mock-server-basepath", + "theme": Object { + "darkMode": "theme:darkMode", + "stylesheetPaths": Object { + "dark": Array [ + "/style-1.css", + "/style-2.css", + ], + "default": Array [ + "/style-1.css", + "/style-2.css", + ], + }, + "version": "v8", + }, + "uiPlugins": Array [], + "version": Any, +} +`; + +exports[`RenderingService preboot() render() renders feature flags overrides 1`] = ` +Object { + "anonymousStatusPage": false, + "apmConfig": Object { + "stubApmConfig": true, + }, + "assetsHrefBase": "http://foo.bar:1773", + "basePath": "/mock-server-basepath", + "branch": Any, + "buildNumber": Any, + "clusterInfo": Object {}, + "csp": Object { + "warnLegacyBrowsers": true, + }, + "customBranding": Object {}, + "env": Object { + "mode": Object { + "dev": Any, + "name": Any, + "prod": Any, + }, + "packageInfo": Object { + "branch": Any, + "buildDate": "2023-05-15T23:12:09.000Z", + "buildFlavor": Any, + "buildNum": Any, + "buildSha": Any, + "buildShaShort": "XXXXXX", + "dist": Any, + "version": Any, + }, + }, + "externalUrl": Object { + "policy": Array [ + Object { + "allow": true, + }, + ], + }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -680,6 +785,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -762,6 +870,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -845,6 +956,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -932,6 +1046,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -1010,6 +1127,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -1093,6 +1213,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -1180,6 +1303,9 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, @@ -1263,6 +1389,97 @@ Object { }, ], }, + "featureFlags": Object { + "overrides": Object {}, + }, + "i18n": Object { + "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", + }, + "legacyMetadata": Object { + "globalUiSettings": Object { + "defaults": Object {}, + "user": Object {}, + }, + "uiSettings": Object { + "defaults": Object { + "registered": Object { + "name": "title", + }, + }, + "user": Object {}, + }, + }, + "logging": Any, + "publicBaseUrl": "http://myhost.com/mock-server-basepath", + "serverBasePath": "/mock-server-basepath", + "theme": Object { + "darkMode": "theme:darkMode", + "stylesheetPaths": Object { + "dark": Array [ + "/style-1.css", + "/style-2.css", + ], + "default": Array [ + "/style-1.css", + "/style-2.css", + ], + }, + "version": "v8", + }, + "uiPlugins": Array [], + "version": Any, +} +`; + +exports[`RenderingService setup() render() renders feature flags overrides 1`] = ` +Object { + "anonymousStatusPage": false, + "apmConfig": Object { + "stubApmConfig": true, + }, + "assetsHrefBase": "/mock-server-basepath", + "basePath": "/mock-server-basepath", + "branch": Any, + "buildNumber": Any, + "clusterInfo": Object { + "cluster_build_flavor": "default", + "cluster_name": "cluster-name", + "cluster_uuid": "cluster-uuid", + "cluster_version": "8.0.0", + }, + "csp": Object { + "warnLegacyBrowsers": true, + }, + "customBranding": Object {}, + "env": Object { + "mode": Object { + "dev": Any, + "name": Any, + "prod": Any, + }, + "packageInfo": Object { + "branch": Any, + "buildDate": "2023-05-15T23:12:09.000Z", + "buildFlavor": Any, + "buildNum": Any, + "buildSha": Any, + "buildShaShort": "XXXXXX", + "dist": Any, + "version": Any, + }, + }, + "externalUrl": Object { + "policy": Array [ + Object { + "allow": true, + }, + ], + }, + "featureFlags": Object { + "overrides": Object { + "my-overridden-flag": 1234, + }, + }, "i18n": Object { "translationsUrl": "/mock-server-basepath/translations/MOCK_HASH/en.json", }, diff --git a/packages/core/rendering/core-rendering-server-internal/src/rendering_service.test.ts b/packages/core/rendering/core-rendering-server-internal/src/rendering_service.test.ts index 1a746e1dbd784..b22697a494788 100644 --- a/packages/core/rendering/core-rendering-server-internal/src/rendering_service.test.ts +++ b/packages/core/rendering/core-rendering-server-internal/src/rendering_service.test.ts @@ -82,6 +82,10 @@ function renderTestCases( }); }); + afterEach(() => { + mockRenderingSetupDeps.featureFlags.getOverrides.mockReset(); + }); + it('renders "core" page', async () => { const [render] = await getRender(); const content = await render(createKibanaRequest(), uiSettings); @@ -245,6 +249,19 @@ function renderTestCases( expect(data).toMatchSnapshot(INJECTED_METADATA); }); + it('renders feature flags overrides', async () => { + mockRenderingSetupDeps.featureFlags.getOverrides.mockReturnValueOnce({ + 'my-overridden-flag': 1234, + }); + const [render] = await getRender(); + const content = await render(createKibanaRequest(), uiSettings, { + isAnonymousPage: false, + }); + const dom = load(content); + const data = JSON.parse(dom('kbn-injected-metadata').attr('data') ?? '""'); + expect(data).toMatchSnapshot(INJECTED_METADATA); + }); + it('renders "core" with logging config injected', async () => { const loggingConfig = { root: { diff --git a/packages/core/rendering/core-rendering-server-internal/src/rendering_service.tsx b/packages/core/rendering/core-rendering-server-internal/src/rendering_service.tsx index 25a10be54f5bd..a696328475853 100644 --- a/packages/core/rendering/core-rendering-server-internal/src/rendering_service.tsx +++ b/packages/core/rendering/core-rendering-server-internal/src/rendering_service.tsx @@ -51,6 +51,7 @@ type RenderOptions = | (RenderingPrebootDeps & { status?: never; elasticsearch?: never; + featureFlags?: never; customBranding?: never; userSettings?: never; }); @@ -85,6 +86,7 @@ export class RenderingService { public async setup({ elasticsearch, + featureFlags, http, status, uiPlugins, @@ -106,6 +108,7 @@ export class RenderingService { return { render: this.render.bind(this, { elasticsearch, + featureFlags, http, uiPlugins, status, @@ -125,8 +128,16 @@ export class RenderingService { }, { isAnonymousPage = false, includeExposedConfigKeys }: IRenderOptions = {} ) { - const { elasticsearch, http, uiPlugins, status, customBranding, userSettings, i18n } = - renderOptions; + const { + elasticsearch, + featureFlags, + http, + uiPlugins, + status, + customBranding, + userSettings, + i18n, + } = renderOptions; const env = { mode: this.coreContext.env.mode, @@ -251,6 +262,9 @@ export class RenderingService { assetsHrefBase: staticAssetsHrefBase, logging: loggingConfig, env, + featureFlags: { + overrides: featureFlags?.getOverrides() || {}, + }, clusterInfo, apmConfig, anonymousStatusPage: status?.isStatusPageAnonymous() ?? false, diff --git a/packages/core/rendering/core-rendering-server-internal/src/test_helpers/params.ts b/packages/core/rendering/core-rendering-server-internal/src/test_helpers/params.ts index b8a3f1fe0c35b..735358f5aa92f 100644 --- a/packages/core/rendering/core-rendering-server-internal/src/test_helpers/params.ts +++ b/packages/core/rendering/core-rendering-server-internal/src/test_helpers/params.ts @@ -14,6 +14,7 @@ import { statusServiceMock } from '@kbn/core-status-server-mocks'; import { customBrandingServiceMock } from '@kbn/core-custom-branding-server-mocks'; import { userSettingsServiceMock } from '@kbn/core-user-settings-server-mocks'; import { i18nServiceMock } from '@kbn/core-i18n-server-mocks'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; const context = mockCoreContext.create(); const httpPreboot = httpServiceMock.createInternalPrebootContract(); @@ -39,6 +40,7 @@ export const mockRenderingPrebootDeps = { }; export const mockRenderingSetupDeps = { elasticsearch, + featureFlags: coreFeatureFlagsMock.createInternalSetup(), http: httpSetup, uiPlugins: createUiPlugins(), customBranding, diff --git a/packages/core/rendering/core-rendering-server-internal/src/types.ts b/packages/core/rendering/core-rendering-server-internal/src/types.ts index 57fee5e26cf48..1897ffdc08eb3 100644 --- a/packages/core/rendering/core-rendering-server-internal/src/types.ts +++ b/packages/core/rendering/core-rendering-server-internal/src/types.ts @@ -24,6 +24,7 @@ import type { CustomBranding } from '@kbn/core-custom-branding-common'; import type { InternalUserSettingsServiceSetup } from '@kbn/core-user-settings-server-internal'; import type { I18nServiceSetup } from '@kbn/core-i18n-server'; import type { InternalI18nServicePreboot } from '@kbn/core-i18n-server-internal'; +import type { InternalFeatureFlagsSetup } from '@kbn/core-feature-flags-server-internal'; /** @internal */ export interface RenderingMetadata { @@ -49,6 +50,7 @@ export interface RenderingPrebootDeps { /** @internal */ export interface RenderingSetupDeps { elasticsearch: InternalElasticsearchServiceSetup; + featureFlags: InternalFeatureFlagsSetup; http: InternalHttpServiceSetup; status: InternalStatusServiceSetup; uiPlugins: UiPlugins; diff --git a/packages/core/rendering/core-rendering-server-internal/tsconfig.json b/packages/core/rendering/core-rendering-server-internal/tsconfig.json index 2689069f79d79..28a22d3d51ca9 100644 --- a/packages/core/rendering/core-rendering-server-internal/tsconfig.json +++ b/packages/core/rendering/core-rendering-server-internal/tsconfig.json @@ -45,6 +45,8 @@ "@kbn/core-i18n-server-internal", "@kbn/core-i18n-server-mocks", "@kbn/apm-config-loader", + "@kbn/core-feature-flags-server-internal", + "@kbn/core-feature-flags-server-mocks", ], "exclude": [ "target/**/*", diff --git a/packages/core/root/core-root-browser-internal/src/core_system.ts b/packages/core/root/core-root-browser-internal/src/core_system.ts index 8428333b96686..44e25b257e32c 100644 --- a/packages/core/root/core-root-browser-internal/src/core_system.ts +++ b/packages/core/root/core-root-browser-internal/src/core_system.ts @@ -22,6 +22,7 @@ import { I18nService } from '@kbn/core-i18n-browser-internal'; import { ExecutionContextService } from '@kbn/core-execution-context-browser-internal'; import type { FatalErrorsSetup } from '@kbn/core-fatal-errors-browser'; import { FatalErrorsService } from '@kbn/core-fatal-errors-browser-internal'; +import { FeatureFlagsService } from '@kbn/core-feature-flags-browser-internal'; import { HttpService } from '@kbn/core-http-browser-internal'; import { SettingsService, UiSettingsService } from '@kbn/core-ui-settings-browser-internal'; import { DeprecationsService } from '@kbn/core-deprecations-browser-internal'; @@ -85,6 +86,7 @@ export class CoreSystem { private readonly loggingSystem: BrowserLoggingSystem; private readonly analytics: AnalyticsService; private readonly fatalErrors: FatalErrorsService; + private readonly featureFlags: FeatureFlagsService; private readonly injectedMetadata: InjectedMetadataService; private readonly notifications: NotificationsService; private readonly http: HttpService; @@ -132,6 +134,7 @@ export class CoreSystem { // Stop Core before rendering any fatal errors into the DOM this.stop(); }); + this.featureFlags = new FeatureFlagsService(this.coreContext); this.security = new SecurityService(this.coreContext); this.userProfile = new UserProfileService(this.coreContext); this.theme = new ThemeService(); @@ -251,11 +254,13 @@ export class CoreSystem { const application = this.application.setup({ http, analytics }); this.coreApp.setup({ application, http, injectedMetadata, notifications }); + const featureFlags = this.featureFlags.setup({ injectedMetadata }); const core: InternalCoreSetup = { analytics, application, fatalErrors: this.fatalErrorsSetup, + featureFlags, http, injectedMetadata, notifications, @@ -357,12 +362,15 @@ export class CoreSystem { theme, }); + const featureFlags = await this.featureFlags.start(); + const core: InternalCoreStart = { analytics, application, chrome, docLinks, executionContext, + featureFlags, http, theme, savedObjects, @@ -439,6 +447,7 @@ export class CoreSystem { this.deprecations.stop(); this.theme.stop(); this.analytics.stop(); + this.featureFlags.stop(); this.security.stop(); this.userProfile.stop(); this.rootDomElement.textContent = ''; diff --git a/packages/core/root/core-root-browser-internal/tsconfig.json b/packages/core/root/core-root-browser-internal/tsconfig.json index e576ecf8cf920..a44a523d05744 100644 --- a/packages/core/root/core-root-browser-internal/tsconfig.json +++ b/packages/core/root/core-root-browser-internal/tsconfig.json @@ -67,6 +67,7 @@ "@kbn/core-user-profile-browser-mocks", "@kbn/core-user-profile-browser-internal", "@kbn/core-injected-metadata-common-internal", + "@kbn/core-feature-flags-browser-internal", ], "exclude": [ "target/**/*", diff --git a/packages/core/root/core-root-server-internal/src/register_service_config.ts b/packages/core/root/core-root-server-internal/src/register_service_config.ts index 3b131d721b4e8..ae38eba4c9ddc 100644 --- a/packages/core/root/core-root-server-internal/src/register_service_config.ts +++ b/packages/core/root/core-root-server-internal/src/register_service_config.ts @@ -33,6 +33,7 @@ import { config as deprecationConfig } from '@kbn/core-deprecations-server-inter import { statusConfig } from '@kbn/core-status-server-internal'; import { uiSettingsConfig } from '@kbn/core-ui-settings-server-internal'; import { config as pluginsConfig } from '@kbn/core-plugins-server-internal'; +import { featureFlagsConfig } from '@kbn/core-feature-flags-server-internal'; import { elasticApmConfig } from './root/elastic_config'; import { serverlessConfig } from './root/serverless_config'; import { coreConfig } from './core_config'; @@ -48,6 +49,7 @@ export function registerServiceConfig(configService: ConfigService) { coreAppConfig, elasticApmConfig, executionContextConfig, + featureFlagsConfig, externalUrlConfig, httpConfig, i18nConfig, diff --git a/packages/core/root/core-root-server-internal/src/server.ts b/packages/core/root/core-root-server-internal/src/server.ts index 64cf2c936e3be..447db192c3048 100644 --- a/packages/core/root/core-root-server-internal/src/server.ts +++ b/packages/core/root/core-root-server-internal/src/server.ts @@ -20,6 +20,7 @@ import { NodeService } from '@kbn/core-node-server-internal'; import { AnalyticsService } from '@kbn/core-analytics-server-internal'; import { EnvironmentService } from '@kbn/core-environment-server-internal'; import { ExecutionContextService } from '@kbn/core-execution-context-server-internal'; +import { FeatureFlagsService } from '@kbn/core-feature-flags-server-internal'; import { PrebootService } from '@kbn/core-preboot-server-internal'; import { ContextService } from '@kbn/core-http-context-server-internal'; import { HttpService } from '@kbn/core-http-server-internal'; @@ -69,6 +70,7 @@ export class Server { private readonly capabilities: CapabilitiesService; private readonly context: ContextService; private readonly elasticsearch: ElasticsearchService; + private readonly featureFlags: FeatureFlagsService; private readonly http: HttpService; private readonly rendering: RenderingService; private readonly log: Logger; @@ -118,6 +120,7 @@ export class Server { const core = { coreId, configService: this.configService, env, logger: this.logger }; this.analytics = new AnalyticsService(core); this.context = new ContextService(core); + this.featureFlags = new FeatureFlagsService(core); this.http = new HttpService(core); this.rendering = new RenderingService(core); this.plugins = new PluginsService(core); @@ -325,9 +328,11 @@ export class Server { const customBrandingSetup = this.customBranding.setup(); const userSettingsServiceSetup = this.userSettingsService.setup(); + const featureFlagsSetup = this.featureFlags.setup(); const renderingSetup = await this.rendering.setup({ elasticsearch: elasticsearchServiceSetup, + featureFlags: featureFlagsSetup, http: httpSetup, status: statusSetup, uiPlugins, @@ -352,6 +357,7 @@ export class Server { elasticsearch: elasticsearchServiceSetup, environment: environmentSetup, executionContext: executionContextSetup, + featureFlags: featureFlagsSetup, http: httpSetup, i18n: i18nServiceSetup, savedObjects: savedObjectsSetup, @@ -432,6 +438,8 @@ export class Server { exposedConfigsToUsage: this.plugins.getExposedPluginConfigsToUsage(), }); + const featureFlagsStart = this.featureFlags.start(); + this.status.start(); this.coreStart = { @@ -441,6 +449,7 @@ export class Server { docLinks: docLinkStart, elasticsearch: elasticsearchStart, executionContext: executionContextStart, + featureFlags: featureFlagsStart, http: httpStart, metrics: metricsStart, savedObjects: savedObjectsStart, @@ -484,6 +493,7 @@ export class Server { await this.status.stop(); await this.logging.stop(); await this.customBranding.stop(); + await this.featureFlags.stop(); this.node.stop(); this.deprecations.stop(); this.security.stop(); diff --git a/packages/core/root/core-root-server-internal/tsconfig.json b/packages/core/root/core-root-server-internal/tsconfig.json index 528e1aacc0a93..843a701db807b 100644 --- a/packages/core/root/core-root-server-internal/tsconfig.json +++ b/packages/core/root/core-root-server-internal/tsconfig.json @@ -76,6 +76,7 @@ "@kbn/core-usage-data-server-mocks", "@kbn/core-user-profile-server-mocks", "@kbn/core-user-profile-server-internal", + "@kbn/core-feature-flags-server-internal", ], "exclude": [ "target/**/*", diff --git a/packages/kbn-apm-config-loader/src/utils/read_config.ts b/packages/kbn-apm-config-loader/src/utils/read_config.ts index f1aaf77951c65..a240197b47628 100644 --- a/packages/kbn-apm-config-loader/src/utils/read_config.ts +++ b/packages/kbn-apm-config-loader/src/utils/read_config.ts @@ -8,7 +8,7 @@ */ import { readFileSync } from 'fs'; -import { safeLoad } from 'js-yaml'; +import { load } from 'js-yaml'; import { set } from '@kbn/safer-lodash-set'; import { ensureDeepObject } from '@kbn/std'; @@ -16,7 +16,7 @@ import { isPlainObject } from 'lodash'; const readYaml = (path: string) => { try { - return safeLoad(readFileSync(path, 'utf8')); + return load(readFileSync(path, 'utf8')); } catch (e) { /* tslint:disable:no-empty */ } diff --git a/packages/kbn-apm-synthtrace/src/scenarios/many_otel_services.ts b/packages/kbn-apm-synthtrace/src/scenarios/many_otel_services.ts new file mode 100644 index 0000000000000..70825e7bf4338 --- /dev/null +++ b/packages/kbn-apm-synthtrace/src/scenarios/many_otel_services.ts @@ -0,0 +1,102 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { ApmFields, apm, Instance } from '@kbn/apm-synthtrace-client'; +import { flatten, random, times } from 'lodash'; +import { Scenario } from '../cli/scenario'; +import { getSynthtraceEnvironment } from '../lib/utils/get_synthtrace_environment'; +import { withClient } from '../lib/utils/with_client'; +import { getRandomNameForIndex } from './helpers/random_names'; + +const ENVIRONMENT = getSynthtraceEnvironment(__filename); + +const scenario: Scenario = async ({ logger, scenarioOpts = { services: 2000 } }) => { + const numServices = scenarioOpts.services; + const transactionName = 'GET /order/{id}'; + const languages = [ + 'go', + 'dotnet', + 'java', + 'python', + 'nodejs', + 'php', + 'webjs', + 'swift', + 'android', + ]; + const agentVersions: Record = { + go: ['2.1.0', '2.0.0', '1.15.0', '1.14.0', '1.13.1'], + dotnet: ['1.18.0', '1.17.0', '1.16.1', '1.16.0', '1.15.0'], + java: ['1.34.1', '1.34.0', '1.33.0', '1.32.0', '1.32.0'], + python: ['6.12.0', '6.11.0', '6.10.2', '6.10.1', '6.10.0'], + nodejs: ['1.34.1', '1.34.0', '1.33.0', '1.32.0', '1.32.0'], + php: ['1.34.1', '1.34.0', '1.33.0', '1.32.0', '1.32.0'], + webjs: ['6.12.0', '6.11.0', '6.10.2', '6.10.1', '6.10.0'], + swift: ['1.18.0', '1.17.0', '1.16.1', '1.16.0', '1.15.0'], + android: ['6.12.0', '6.11.0', '6.10.2', '6.10.1', '6.10.0'], + }; + + return { + generate: ({ range, clients: { apmEsClient } }) => { + const instances = flatten( + times(numServices).map((index) => { + const language = languages[index % languages.length]; + const agentLanguageVersions = agentVersions[language]; + const agentVersion = agentLanguageVersions[index % agentLanguageVersions.length]; + + const numOfInstances = (index % 3) + 1; + return times(numOfInstances).map((instanceIndex) => + apm + .service({ + name: `${getRandomNameForIndex(index)}-${language}-${index}`, + environment: ENVIRONMENT, + agentName: + index % 2 ? `opentelemetry/${language}/elastic` : `otlp/${language}/elastic`, + }) + .instance(`instance-${index}-${instanceIndex}`) + .defaults({ 'agent.version': agentVersion, 'service.language.name': language }) + ); + }) + ); + + const instanceSpans = (instance: Instance) => { + const hasHighDuration = Math.random() > 0.5; + const throughput = random(1, 10); + + return range.ratePerMinute(throughput).generator((timestamp) => { + const parentDuration = hasHighDuration ? random(1000, 5000) : random(100, 1000); + const generateError = random(1, 4) % 3 === 0; + const span = instance + .transaction({ transactionName }) + .timestamp(timestamp) + .duration(parentDuration); + + return !generateError + ? span.success() + : span.failure().errors( + instance + .error({ + message: `No handler for ${transactionName}`, + type: 'No handler', + culprit: 'request', + }) + .timestamp(timestamp + 50) + ); + }); + }; + + return withClient( + apmEsClient, + logger.perf('generating_apm_events', () => instances.map(instanceSpans)) + ); + }, + }; +}; + +export default scenario; diff --git a/packages/kbn-config/src/raw/read_config.ts b/packages/kbn-config/src/raw/read_config.ts index 9d002a5181f56..4330d99160abe 100644 --- a/packages/kbn-config/src/raw/read_config.ts +++ b/packages/kbn-config/src/raw/read_config.ts @@ -8,13 +8,13 @@ */ import { readFileSync } from 'fs'; -import { safeLoad } from 'js-yaml'; +import { load } from 'js-yaml'; import { set } from '@kbn/safer-lodash-set'; import { isPlainObject } from 'lodash'; import { ensureValidObjectPath } from '@kbn/std'; import { splitKey, getUnsplittableKey, replaceEnvVarRefs } from './utils'; -const readYaml = (path: string) => safeLoad(readFileSync(path, 'utf8')); +const readYaml = (path: string) => load(readFileSync(path, 'utf8')); interface YamlEntry { path: string[]; @@ -76,7 +76,7 @@ export const getConfigFromFiles = (configFiles: readonly string[]) => { for (const configFile of configFiles) { const yaml = readYaml(configFile); - if (yaml !== null) { + if (yaml) { yamlEntries.push(...listEntries(yaml)); } } diff --git a/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.test.ts b/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.test.ts index 3018605cb2c32..f0045b5a5a2e8 100644 --- a/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.test.ts +++ b/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.test.ts @@ -25,6 +25,16 @@ const examples = { 'opentelemetry/python': 'python', 'opentelemetry/ruby': 'ruby', 'opentelemetry/rust': 'rust', + 'opentelemetry/cpp/elastic': 'cpp', // Tests for additional arguments on OpenTelemetry agents + 'opentelemetry/dotnet/elastic': 'dotnet', + 'opentelemetry/erlang/elastic': 'erlang', + 'opentelemetry/go/elastic': 'go', + 'opentelemetry/nodejs/elastic': 'nodejs', + 'opentelemetry/php/elastic': 'php', + 'opentelemetry/python/elastic': 'python', + 'opentelemetry/ruby/elastic': 'ruby', + 'opentelemetry/rust/elastic': 'rust', + opentelemetry: 'opentelemetry', otlp: 'opentelemetry', php: 'php', python: 'python', diff --git a/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.ts b/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.ts index 2e12d2d98aff0..8353495ac168c 100644 --- a/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.ts +++ b/packages/kbn-custom-icons/src/components/agent_icon/get_agent_icon.ts @@ -12,6 +12,7 @@ import { isIosAgentName, isJavaAgentName, isRumAgentName, + hasOpenTelemetryPrefix, OpenTelemetryAgentName, OPEN_TELEMETRY_AGENT_NAMES, } from '@kbn/elastic-agent-utils'; @@ -66,6 +67,15 @@ const darkAgentIcons: { [key: string]: string } = { rust: darkRustIcon, }; +const sanitizeAgentName = (agentName: string) => { + if (hasOpenTelemetryPrefix(agentName)) { + // for OpenTelemetry only split the agent name by `/` and take the second part, format is `(opentelemetry|otlp)/{agentName}/{details}` + return agentName.split('/')[1]; + } + + return agentName; +}; + // This only needs to be exported for testing purposes, since we stub the SVG // import values in test. export function getAgentIconKey(agentName: string) { @@ -90,11 +100,10 @@ export function getAgentIconKey(agentName: string) { return 'android'; } - // Remove "opentelemetry/" prefix - const agentNameWithoutPrefix = lowercasedAgentName.replace(/^opentelemetry\//, ''); + const cleanAgentName = sanitizeAgentName(lowercasedAgentName); - if (Object.keys(agentIcons).includes(agentNameWithoutPrefix)) { - return agentNameWithoutPrefix; + if (Object.keys(agentIcons).includes(cleanAgentName)) { + return cleanAgentName; } // OpenTelemetry-only agents diff --git a/packages/kbn-discover-utils/src/__mocks__/index.ts b/packages/kbn-discover-utils/src/__mocks__/index.ts index 148c9a6323140..9aa3005478051 100644 --- a/packages/kbn-discover-utils/src/__mocks__/index.ts +++ b/packages/kbn-discover-utils/src/__mocks__/index.ts @@ -10,3 +10,4 @@ export * from './data_view'; export * from './es_hits'; export * from './additional_field_groups'; +export * from './logs_context_service'; diff --git a/src/plugins/controls/common/control_group/control_group_constants.ts b/packages/kbn-discover-utils/src/__mocks__/logs_context_service.ts similarity index 67% rename from src/plugins/controls/common/control_group/control_group_constants.ts rename to packages/kbn-discover-utils/src/__mocks__/logs_context_service.ts index 38580e7520fa0..86655b2275b64 100644 --- a/src/plugins/controls/common/control_group/control_group_constants.ts +++ b/packages/kbn-discover-utils/src/__mocks__/logs_context_service.ts @@ -7,8 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { ControlStyle, ControlWidth } from '../types'; +import { DEFAULT_ALLOWED_LOGS_BASE_PATTERNS_REGEXP, getLogsContextService } from '../data_types'; -export const DEFAULT_CONTROL_WIDTH: ControlWidth = 'medium'; -export const DEFAULT_CONTROL_GROW: boolean = true; -export const DEFAULT_CONTROL_STYLE: ControlStyle = 'oneLine'; +export const createLogsContextServiceMock = () => { + return getLogsContextService([DEFAULT_ALLOWED_LOGS_BASE_PATTERNS_REGEXP]); +}; diff --git a/packages/kbn-discover-utils/src/data_types/logs/logs_context_service.ts b/packages/kbn-discover-utils/src/data_types/logs/logs_context_service.ts index da858ce310e4e..7af3a723e7b14 100644 --- a/packages/kbn-discover-utils/src/data_types/logs/logs_context_service.ts +++ b/packages/kbn-discover-utils/src/data_types/logs/logs_context_service.ts @@ -8,15 +8,14 @@ */ import { createRegExpPatternFrom, testPatternAgainstAllowedList } from '@kbn/data-view-utils'; +import type { LogsDataAccessPluginStart } from '@kbn/logs-data-access-plugin/public'; export interface LogsContextService { isLogsIndexPattern(indexPattern: unknown): boolean; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface export interface LogsContextServiceDeps { - // We will probably soon add uiSettings as a dependency - // to consume user configured indices + logsDataAccessPlugin?: LogsDataAccessPluginStart; } export const DEFAULT_ALLOWED_LOGS_BASE_PATTERNS = [ @@ -28,15 +27,36 @@ export const DEFAULT_ALLOWED_LOGS_BASE_PATTERNS = [ 'winlogbeat', ]; -export const createLogsContextService = (_deps: LogsContextServiceDeps = {}) => { - // This is initially an hard-coded set of well-known base patterns, - // we can extend this allowed list with any setting coming from uiSettings - const ALLOWED_LOGS_DATA_SOURCES = [createRegExpPatternFrom(DEFAULT_ALLOWED_LOGS_BASE_PATTERNS)]; +export const DEFAULT_ALLOWED_LOGS_BASE_PATTERNS_REGEXP = createRegExpPatternFrom( + DEFAULT_ALLOWED_LOGS_BASE_PATTERNS +); +export const createLogsContextService = async ({ + logsDataAccessPlugin, +}: LogsContextServiceDeps) => { + let logSources: string[] | undefined; + + if (logsDataAccessPlugin) { + const logSourcesService = logsDataAccessPlugin.services.logSourcesService; + logSources = (await logSourcesService.getLogSources()) + .map((logSource) => logSource.indexPattern) + .join(',') // TODO: Will be replaced by helper in: https://github.com/elastic/kibana/pull/192003 + .split(','); + } + + const ALLOWED_LOGS_DATA_SOURCES = [ + DEFAULT_ALLOWED_LOGS_BASE_PATTERNS_REGEXP, + ...(logSources ? logSources : []), + ]; + + return getLogsContextService(ALLOWED_LOGS_DATA_SOURCES); +}; + +export const getLogsContextService = (allowedDataSources: Array) => { const isLogsIndexPattern = (indexPattern: unknown) => { return ( typeof indexPattern === 'string' && - testPatternAgainstAllowedList(ALLOWED_LOGS_DATA_SOURCES)(indexPattern) + testPatternAgainstAllowedList(allowedDataSources)(indexPattern) ); }; diff --git a/packages/kbn-discover-utils/tsconfig.json b/packages/kbn-discover-utils/tsconfig.json index ef9ccaa7ab9b7..724051e5863c4 100644 --- a/packages/kbn-discover-utils/tsconfig.json +++ b/packages/kbn-discover-utils/tsconfig.json @@ -26,6 +26,7 @@ "@kbn/i18n", "@kbn/core-ui-settings-browser", "@kbn/ui-theme", - "@kbn/expressions-plugin" + "@kbn/expressions-plugin", + "@kbn/logs-data-access-plugin" ] } diff --git a/packages/kbn-doc-links/src/get_doc_links.ts b/packages/kbn-doc-links/src/get_doc_links.ts index 3ad5d271bde47..78ccec5d48efe 100644 --- a/packages/kbn-doc-links/src/get_doc_links.ts +++ b/packages/kbn-doc-links/src/get_doc_links.ts @@ -90,7 +90,7 @@ export const getDocLinks = ({ kibanaBranch, buildFlavor }: GetDocLinkOptions): D }, console: { guide: `${KIBANA_DOCS}console-kibana.html`, - serverlessGuide: `${SERVERLESS_ELASTICSEARCH_DOCS}dev-tools-console`, + serverlessGuide: `${SERVERLESS_DOCS}devtools/run-api-requests-in-the-console`, }, dashboard: { guide: `${KIBANA_DOCS}dashboard.html`, @@ -436,7 +436,7 @@ export const getDocLinks = ({ kibanaBranch, buildFlavor }: GetDocLinkOptions): D migrationApiDeprecation: `${ELASTICSEARCH_DOCS}migration-api-deprecation.html`, nodeRoles: `${ELASTICSEARCH_DOCS}modules-node.html#node-roles`, releaseHighlights: `${ELASTICSEARCH_DOCS}release-highlights.html`, - latestReleaseHighlights: `${ELASTIC_WEBSITE_URL}guide/en/elastic-stack/current/elastic-stack-highlights.html`, + latestReleaseHighlights: `${ELASTIC_WEBSITE_URL}guide/en/starting-with-the-elasticsearch-platform-and-its-solutions/current/new.html`, remoteClusters: `${ELASTICSEARCH_DOCS}remote-clusters.html`, remoteClustersProxy: `${ELASTICSEARCH_DOCS}remote-clusters.html#proxy-mode`, remoteClusersProxySettings: `${ELASTICSEARCH_DOCS}remote-clusters-settings.html#remote-cluster-proxy-settings`, diff --git a/packages/kbn-docs-utils/src/mdx/get_all_doc_file_ids.ts b/packages/kbn-docs-utils/src/mdx/get_all_doc_file_ids.ts index 79ced0bde3bed..60b693dcd93b5 100644 --- a/packages/kbn-docs-utils/src/mdx/get_all_doc_file_ids.ts +++ b/packages/kbn-docs-utils/src/mdx/get_all_doc_file_ids.ts @@ -38,7 +38,7 @@ export async function getAllDocFileIds(outputDir: string) { let fm; try { - fm = Yaml.safeLoad(fmYaml.slice(0, fmEnd.index)); + fm = Yaml.load(fmYaml.slice(0, fmEnd.index)); if (typeof fm !== 'object' || fm === null) { throw new Error('expected yaml to produce an object'); } diff --git a/packages/kbn-docs-utils/tsconfig.json b/packages/kbn-docs-utils/tsconfig.json index 9116acc8dcbc5..bdb89aa9ddc87 100644 --- a/packages/kbn-docs-utils/tsconfig.json +++ b/packages/kbn-docs-utils/tsconfig.json @@ -9,6 +9,7 @@ }, "include": [ "**/*.ts", + "../../typings/**/*" ], "exclude": [ "**/__fixtures__/**", diff --git a/packages/kbn-dom-drag-drop/src/sass/draggable.scss b/packages/kbn-dom-drag-drop/src/sass/draggable.scss index c50bdfcb1ba92..80e3b5e5dde91 100644 --- a/packages/kbn-dom-drag-drop/src/sass/draggable.scss +++ b/packages/kbn-dom-drag-drop/src/sass/draggable.scss @@ -33,9 +33,10 @@ &:focus, &:focus-within { - @include euiFocusRing; pointer-events: none; z-index: $domDragDropZLevel2; + + @include euiFocusRing; } } diff --git a/packages/kbn-elastic-agent-utils/index.ts b/packages/kbn-elastic-agent-utils/index.ts index e4e4bf0fb9c07..d76095a44a0d3 100644 --- a/packages/kbn-elastic-agent-utils/index.ts +++ b/packages/kbn-elastic-agent-utils/index.ts @@ -9,6 +9,7 @@ export { isOpenTelemetryAgentName, + hasOpenTelemetryPrefix, isJavaAgentName, isRumAgentName, isMobileAgentName, diff --git a/packages/kbn-elastic-agent-utils/src/agent_guards.test.ts b/packages/kbn-elastic-agent-utils/src/agent_guards.test.ts index bd88d8dbbe7cd..655addbe73c35 100644 --- a/packages/kbn-elastic-agent-utils/src/agent_guards.test.ts +++ b/packages/kbn-elastic-agent-utils/src/agent_guards.test.ts @@ -8,6 +8,7 @@ */ import { + hasOpenTelemetryPrefix, isAndroidAgentName, isAWSLambdaAgentName, isAzureFunctionsAgentName, @@ -22,23 +23,42 @@ import { } from './agent_guards'; describe('Agents guards', () => { + it('hasOpenTelemetryPrefix should guard if the passed agent has an OpenTelemetry prefix.', () => { + expect(hasOpenTelemetryPrefix('otlp')).toBe(false); + expect(hasOpenTelemetryPrefix('otlp/nodejs')).toBe(true); + expect(hasOpenTelemetryPrefix('otlp/nodejs/elastic')).toBe(true); + expect(hasOpenTelemetryPrefix('opentelemetry')).toBe(false); + expect(hasOpenTelemetryPrefix('opentelemetry/nodejs')).toBe(true); + expect(hasOpenTelemetryPrefix('opentelemetry/nodejs/elastic')).toBe(true); + expect(hasOpenTelemetryPrefix('not-an-agent')).toBe(false); + }); + it('isOpenTelemetryAgentName should guard if the passed agent is an OpenTelemetry one.', () => { expect(isOpenTelemetryAgentName('otlp')).toBe(true); - expect(isOpenTelemetryAgentName('opentelemetry/java')).toBe(true); - expect(isOpenTelemetryAgentName('opentelemetry/java/opentelemetry-java-instrumentation')).toBe( - true - ); + expect(isOpenTelemetryAgentName('otlp/nodejs')).toBe(true); + expect(isOpenTelemetryAgentName('otlp/nodejs/elastic')).toBe(true); + expect(isOpenTelemetryAgentName('opentelemetry')).toBe(true); + expect(isOpenTelemetryAgentName('opentelemetry/nodejs')).toBe(true); + expect(isOpenTelemetryAgentName('opentelemetry/nodejs/elastic')).toBe(true); expect(isOpenTelemetryAgentName('not-an-agent')).toBe(false); }); it('isJavaAgentName should guard if the passed agent is an Java one.', () => { expect(isJavaAgentName('java')).toBe(true); + expect(isJavaAgentName('otlp/java')).toBe(true); + expect(isJavaAgentName('otlp/java/opentelemetry-java-instrumentation')).toBe(true); expect(isJavaAgentName('opentelemetry/java')).toBe(true); expect(isJavaAgentName('opentelemetry/java/opentelemetry-java-instrumentation')).toBe(true); expect(isJavaAgentName('not-an-agent')).toBe(false); }); it('isRumAgentName should guard if the passed agent is an Rum one.', () => { + expect(isRumAgentName('otlp/webjs')).toBe(true); + expect(isRumAgentName('otlp/webjs/elastic')).toBe(true); + expect(isRumAgentName('otlp/fail')).toBe(false); + expect(isRumAgentName('opentelemetry/webjs')).toBe(true); + expect(isRumAgentName('opentelemetry/webjs/elastic')).toBe(true); + expect(isRumAgentName('opentelemetry/fail')).toBe(false); expect(isRumAgentName('rum-js')).toBe(true); expect(isRumAgentName('not-an-agent')).toBe(false); }); @@ -57,11 +77,23 @@ describe('Agents guards', () => { }); it('isIosAgentName should guard if the passed agent is an Ios one.', () => { + expect(isIosAgentName('otlp/swift/elastic')).toBe(true); + expect(isIosAgentName('otlp/swift')).toBe(true); + expect(isIosAgentName('otlp/fail')).toBe(false); + expect(isIosAgentName('opentelemetry/swift/elastic')).toBe(true); + expect(isIosAgentName('opentelemetry/swift')).toBe(true); + expect(isIosAgentName('opentelemetry/fail')).toBe(false); expect(isIosAgentName('ios/swift')).toBe(true); expect(isIosAgentName('not-an-agent')).toBe(false); }); it('isAndroidAgentName should guard if the passed agent is an Android one.', () => { + expect(isAndroidAgentName('otlp/android/elastic')).toBe(true); + expect(isAndroidAgentName('otlp/android')).toBe(true); + expect(isAndroidAgentName('otlp/fail')).toBe(false); + expect(isAndroidAgentName('opentelemetry/android/elastic')).toBe(true); + expect(isAndroidAgentName('opentelemetry/android')).toBe(true); + expect(isAndroidAgentName('opentelemetry/fail')).toBe(false); expect(isAndroidAgentName('android/java')).toBe(true); expect(isAndroidAgentName('not-an-agent')).toBe(false); }); diff --git a/packages/kbn-elastic-agent-utils/src/agent_guards.ts b/packages/kbn-elastic-agent-utils/src/agent_guards.ts index 4e50f15917b24..8402582f8d9a3 100644 --- a/packages/kbn-elastic-agent-utils/src/agent_guards.ts +++ b/packages/kbn-elastic-agent-utils/src/agent_guards.ts @@ -7,31 +7,52 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { JAVA_AGENT_NAMES, OPEN_TELEMETRY_AGENT_NAMES, RUM_AGENT_NAMES } from './agent_names'; +import { + ANDROID_AGENT_NAMES, + IOS_AGENT_NAMES, + JAVA_AGENT_NAMES, + OPEN_TELEMETRY_AGENT_NAMES, + RUM_AGENT_NAMES, +} from './agent_names'; import type { + AndroidAgentName, + IOSAgentName, JavaAgentName, OpenTelemetryAgentName, RumAgentName, ServerlessType, } from './agent_names'; +export function hasOpenTelemetryPrefix(agentName?: string, language: string = '') { + if (!agentName) { + return false; + } + + return ( + agentName.startsWith(`opentelemetry/${language}`) || agentName.startsWith(`otlp/${language}`) + ); +} + export function isOpenTelemetryAgentName(agentName: string): agentName is OpenTelemetryAgentName { return ( - agentName?.startsWith('opentelemetry/') || + hasOpenTelemetryPrefix(agentName) || OPEN_TELEMETRY_AGENT_NAMES.includes(agentName as OpenTelemetryAgentName) ); } export function isJavaAgentName(agentName?: string): agentName is JavaAgentName { return ( - agentName?.startsWith('opentelemetry/java') || + hasOpenTelemetryPrefix(agentName, 'java') || JAVA_AGENT_NAMES.includes(agentName! as JavaAgentName) ); } export function isRumAgentName(agentName?: string): agentName is RumAgentName { - return RUM_AGENT_NAMES.includes(agentName! as RumAgentName); + return ( + hasOpenTelemetryPrefix(agentName, 'webjs') || + RUM_AGENT_NAMES.includes(agentName! as RumAgentName) + ); } export function isMobileAgentName(agentName?: string) { @@ -43,12 +64,21 @@ export function isRumOrMobileAgentName(agentName?: string) { } export function isIosAgentName(agentName?: string) { - return agentName?.toLowerCase() === 'ios/swift'; + const lowercasedAgentName = agentName && agentName.toLowerCase(); + + return ( + hasOpenTelemetryPrefix(lowercasedAgentName, 'swift') || + IOS_AGENT_NAMES.includes(lowercasedAgentName! as IOSAgentName) + ); } export function isAndroidAgentName(agentName?: string) { - const lowercased = agentName && agentName.toLowerCase(); - return lowercased === 'android/java'; + const lowercasedAgentName = agentName && agentName.toLowerCase(); + + return ( + hasOpenTelemetryPrefix(lowercasedAgentName, 'android') || + ANDROID_AGENT_NAMES.includes(lowercasedAgentName! as AndroidAgentName) + ); } export function isJRubyAgentName(agentName?: string, runtimeName?: string) { diff --git a/packages/kbn-elastic-agent-utils/src/agent_names.ts b/packages/kbn-elastic-agent-utils/src/agent_names.ts index a7553c61587f8..0405da9cf2193 100644 --- a/packages/kbn-elastic-agent-utils/src/agent_names.ts +++ b/packages/kbn-elastic-agent-utils/src/agent_names.ts @@ -39,6 +39,7 @@ export const ELASTIC_AGENT_NAMES: ElasticAgentName[] = [ export type OpenTelemetryAgentName = | 'otlp' + | 'opentelemetry' | 'opentelemetry/cpp' | 'opentelemetry/dotnet' | 'opentelemetry/erlang' @@ -51,9 +52,23 @@ export type OpenTelemetryAgentName = | 'opentelemetry/rust' | 'opentelemetry/swift' | 'opentelemetry/android' - | 'opentelemetry/webjs'; + | 'opentelemetry/webjs' + | 'otlp/cpp' + | 'otlp/dotnet' + | 'otlp/erlang' + | 'otlp/go' + | 'otlp/java' + | 'otlp/nodejs' + | 'otlp/php' + | 'otlp/python' + | 'otlp/ruby' + | 'otlp/rust' + | 'otlp/swift' + | 'otlp/android' + | 'otlp/webjs'; export const OPEN_TELEMETRY_AGENT_NAMES: OpenTelemetryAgentName[] = [ 'otlp', + 'opentelemetry', 'opentelemetry/cpp', 'opentelemetry/dotnet', 'opentelemetry/erlang', @@ -67,21 +82,57 @@ export const OPEN_TELEMETRY_AGENT_NAMES: OpenTelemetryAgentName[] = [ 'opentelemetry/swift', 'opentelemetry/android', 'opentelemetry/webjs', + 'otlp/cpp', + 'otlp/dotnet', + 'otlp/erlang', + 'otlp/go', + 'otlp/java', + 'otlp/nodejs', + 'otlp/php', + 'otlp/python', + 'otlp/ruby', + 'otlp/rust', + 'otlp/swift', + 'otlp/android', + 'otlp/webjs', ]; -export type JavaAgentName = 'java' | 'opentelemetry/java'; -export const JAVA_AGENT_NAMES: JavaAgentName[] = ['java', 'opentelemetry/java']; +export type JavaAgentName = 'java' | 'opentelemetry/java' | 'otlp/java'; +export const JAVA_AGENT_NAMES: JavaAgentName[] = ['java', 'opentelemetry/java', 'otlp/java']; -export type RumAgentName = 'js-base' | 'rum-js' | 'opentelemetry/webjs'; -export const RUM_AGENT_NAMES: RumAgentName[] = ['js-base', 'rum-js', 'opentelemetry/webjs']; +export type RumAgentName = 'js-base' | 'rum-js' | 'opentelemetry/webjs' | 'otlp/webjs'; +export const RUM_AGENT_NAMES: RumAgentName[] = [ + 'js-base', + 'rum-js', + 'opentelemetry/webjs', + 'otlp/webjs', +]; + +export type AndroidAgentName = 'android/java' | 'opentelemetry/android' | 'otlp/android'; +export const ANDROID_AGENT_NAMES: AndroidAgentName[] = [ + 'android/java', + 'opentelemetry/android', + 'otlp/android', +]; + +export type IOSAgentName = 'ios/swift' | 'opentelemetry/swift' | 'otlp/swift'; +export const IOS_AGENT_NAMES: IOSAgentName[] = ['ios/swift', 'opentelemetry/swift', 'otlp/swift']; export type ServerlessType = 'aws.lambda' | 'azure.functions'; export const SERVERLESS_TYPE: ServerlessType[] = ['aws.lambda', 'azure.functions']; -export type AgentName = ElasticAgentName | OpenTelemetryAgentName | JavaAgentName | RumAgentName; +export type AgentName = + | ElasticAgentName + | OpenTelemetryAgentName + | JavaAgentName + | RumAgentName + | AndroidAgentName + | IOSAgentName; export const AGENT_NAMES: AgentName[] = [ ...ELASTIC_AGENT_NAMES, ...OPEN_TELEMETRY_AGENT_NAMES, ...JAVA_AGENT_NAMES, ...RUM_AGENT_NAMES, + ...ANDROID_AGENT_NAMES, + ...IOS_AGENT_NAMES, ]; diff --git a/packages/kbn-es/src/utils/read_roles_from_resource.ts b/packages/kbn-es/src/utils/read_roles_from_resource.ts index dea880d38144f..f42b38894ff25 100644 --- a/packages/kbn-es/src/utils/read_roles_from_resource.ts +++ b/packages/kbn-es/src/utils/read_roles_from_resource.ts @@ -9,7 +9,7 @@ import fs from 'fs'; import { extname } from 'path'; -import { safeLoad as loadYaml } from 'js-yaml'; +import { load as loadYaml } from 'js-yaml'; export const readRolesFromResource = (resourcePath: string) => { if (!fs.existsSync(resourcePath) || extname(resourcePath) !== '.yml') { diff --git a/packages/kbn-eslint-config/.eslintrc.js b/packages/kbn-eslint-config/.eslintrc.js index de3bb8e313ccc..a68dc6ecd949e 100644 --- a/packages/kbn-eslint-config/.eslintrc.js +++ b/packages/kbn-eslint-config/.eslintrc.js @@ -314,7 +314,6 @@ module.exports = { '@kbn/eslint/no_constructor_args_in_property_initializers': 'error', '@kbn/eslint/no_this_in_property_initializers': 'error', '@kbn/eslint/no_unsafe_console': 'error', - '@kbn/eslint/no_unsafe_js_yaml': 'error', '@kbn/imports/no_unresolvable_imports': 'error', '@kbn/imports/uniform_imports': 'error', '@kbn/imports/no_unused_imports': 'error', diff --git a/packages/kbn-esql-ast/src/__tests__/ast_parser.sort.test.ts b/packages/kbn-esql-ast/src/__tests__/ast_parser.sort.test.ts index c57a75644bcec..bb5e6aeb1e6b4 100644 --- a/packages/kbn-esql-ast/src/__tests__/ast_parser.sort.test.ts +++ b/packages/kbn-esql-ast/src/__tests__/ast_parser.sort.test.ts @@ -11,11 +11,49 @@ import { getAstAndSyntaxErrors as parse } from '../ast_parser'; describe('SORT', () => { describe('correctly formatted', () => { - // Un-skip one https://github.com/elastic/kibana/issues/189491 fixed. - it.skip('example from documentation', () => { + it('sorting order without modifiers', () => { + const text = `FROM employees | SORT height`; + const { ast, errors } = parse(text); + + expect(errors.length).toBe(0); + expect(ast).toMatchObject([ + {}, + { + type: 'command', + name: 'sort', + args: [ + { + type: 'column', + name: 'height', + }, + ], + }, + ]); + }); + + it('sort expression is a function call', () => { + const text = `from a_index | sort values(textField)`; + const { ast, errors } = parse(text); + + expect(errors.length).toBe(0); + expect(ast).toMatchObject([ + {}, + { + type: 'command', + name: 'sort', + args: [ + { + type: 'function', + name: 'values', + }, + ], + }, + ]); + }); + + it('with order modifier "DESC"', () => { const text = ` FROM employees - | KEEP first_name, last_name, height | SORT height DESC `; const { ast, errors } = parse(text); @@ -23,22 +61,57 @@ describe('SORT', () => { expect(errors.length).toBe(0); expect(ast).toMatchObject([ {}, + { + type: 'command', + name: 'sort', + args: [ + { + type: 'order', + order: 'DESC', + nulls: '', + args: [ + { + type: 'column', + name: 'height', + }, + ], + }, + ], + }, + ]); + }); + + it('with nulls modifier "NULLS LAST"', () => { + const text = ` + FROM employees + | SORT height NULLS LAST + `; + const { ast, errors } = parse(text); + + expect(errors.length).toBe(0); + expect(ast).toMatchObject([ {}, { type: 'command', name: 'sort', args: [ { - type: 'column', - name: 'height', + type: 'order', + order: '', + nulls: 'NULLS LAST', + args: [ + { + type: 'column', + name: 'height', + }, + ], }, ], }, ]); }); - // Un-skip once https://github.com/elastic/kibana/issues/189491 fixed. - it.skip('can parse various sorting columns with options', () => { + it('can parse various sorting columns with options', () => { const text = 'FROM a | SORT a, b ASC, c DESC, d NULLS FIRST, e NULLS LAST, f ASC NULLS FIRST, g DESC NULLS LAST'; const { ast, errors } = parse(text); @@ -55,28 +128,58 @@ describe('SORT', () => { name: 'a', }, { - type: 'column', - name: 'b', + order: 'ASC', + nulls: '', + args: [ + { + name: 'b', + }, + ], }, { - type: 'column', - name: 'c', + order: 'DESC', + nulls: '', + args: [ + { + name: 'c', + }, + ], }, { - type: 'column', - name: 'd', + order: '', + nulls: 'NULLS FIRST', + args: [ + { + name: 'd', + }, + ], }, { - type: 'column', - name: 'e', + order: '', + nulls: 'NULLS LAST', + args: [ + { + name: 'e', + }, + ], }, { - type: 'column', - name: 'f', + order: 'ASC', + nulls: 'NULLS FIRST', + args: [ + { + name: 'f', + }, + ], }, { - type: 'column', - name: 'g', + order: 'DESC', + nulls: 'NULLS LAST', + args: [ + { + name: 'g', + }, + ], }, ], }, diff --git a/packages/kbn-esql-ast/src/antlr_error_listener.ts b/packages/kbn-esql-ast/src/antlr_error_listener.ts index e685dfe3473ba..5bd02b3b74eb9 100644 --- a/packages/kbn-esql-ast/src/antlr_error_listener.ts +++ b/packages/kbn-esql-ast/src/antlr_error_listener.ts @@ -12,7 +12,7 @@ import { ErrorListener } from 'antlr4'; import type { EditorError } from './types'; import { getPosition } from './ast_position_utils'; -const REPLACE_DEV = /,*\s*DEV_\w+\s*/g; +const REPLACE_DEV = /,{0,1}(? { protected errors: EditorError[] = []; diff --git a/packages/kbn-esql-ast/src/ast_factory.ts b/packages/kbn-esql-ast/src/ast_factory.ts index 44b8c03aa1e7f..f5c3ca7a3b621 100644 --- a/packages/kbn-esql-ast/src/ast_factory.ts +++ b/packages/kbn-esql-ast/src/ast_factory.ts @@ -53,7 +53,7 @@ import { visitDissect, visitGrok, collectBooleanExpression, - visitOrderExpression, + visitOrderExpressions, getPolicyName, getMatchField, getEnrichClauses, @@ -238,7 +238,7 @@ export class AstListener implements ESQLParserListener { exitSortCommand(ctx: SortCommandContext) { const command = createCommand('sort', ctx); this.ast.push(command); - command.args.push(...visitOrderExpression(ctx.orderExpression_list())); + command.args.push(...visitOrderExpressions(ctx.orderExpression_list())); } /** diff --git a/packages/kbn-esql-ast/src/ast_helpers.ts b/packages/kbn-esql-ast/src/ast_helpers.ts index 76f576f1ec019..7d4a94fde19a8 100644 --- a/packages/kbn-esql-ast/src/ast_helpers.ts +++ b/packages/kbn-esql-ast/src/ast_helpers.ts @@ -42,6 +42,7 @@ import type { ESQLNumericLiteralType, FunctionSubtype, ESQLNumericLiteral, + ESQLOrderExpression, } from './types'; import { parseIdentifier } from './parser/helpers'; @@ -222,6 +223,26 @@ export function createFunction( return node; } +export const createOrderExpression = ( + ctx: ParserRuleContext, + arg: ESQLAstItem, + order: ESQLOrderExpression['order'], + nulls: ESQLOrderExpression['nulls'] +) => { + const node: ESQLOrderExpression = { + type: 'order', + name: '', + order, + nulls, + args: [arg], + text: ctx.getText(), + location: getPosition(ctx.start, ctx.stop), + incomplete: Boolean(ctx.exception), + }; + + return node; +}; + function walkFunctionStructure( args: ESQLAstItem[], initialLocation: ESQLLocation, diff --git a/packages/kbn-esql-ast/src/ast_walker.ts b/packages/kbn-esql-ast/src/ast_walker.ts index 3599f2f5fabec..d57c4d1c64ae4 100644 --- a/packages/kbn-esql-ast/src/ast_walker.ts +++ b/packages/kbn-esql-ast/src/ast_walker.ts @@ -84,6 +84,7 @@ import { textExistsAndIsValid, createInlineCast, createUnknownItem, + createOrderExpression, } from './ast_helpers'; import { getPosition } from './ast_position_utils'; import { @@ -97,6 +98,7 @@ import { ESQLUnnamedParamLiteral, ESQLPositionalParamLiteral, ESQLNamedParamLiteral, + ESQLOrderExpression, } from './types'; export function collectAllSourceIdentifiers(ctx: FromCommandContext): ESQLAstItem[] { @@ -608,34 +610,43 @@ export function visitByOption( return [option]; } -export function visitOrderExpression(ctx: OrderExpressionContext[]) { - const ast: ESQLAstItem[] = []; - for (const orderCtx of ctx) { - const expression = collectBooleanExpression(orderCtx.booleanExpression()); - if (orderCtx._ordering) { - const terminalNode = - orderCtx.getToken(esql_parser.ASC, 0) || orderCtx.getToken(esql_parser.DESC, 0); - const literal = createLiteral('string', terminalNode); - if (literal) { - expression.push(literal); - } - } - if (orderCtx.NULLS()) { - expression.push(createLiteral('string', orderCtx.NULLS()!)!); - if (orderCtx._nullOrdering && orderCtx._nullOrdering.text !== '') { - const innerTerminalNode = - orderCtx.getToken(esql_parser.FIRST, 0) || orderCtx.getToken(esql_parser.LAST, 0); - const literal = createLiteral('string', innerTerminalNode); - if (literal) { - expression.push(literal); - } - } - } +const visitOrderExpression = (ctx: OrderExpressionContext): ESQLOrderExpression | ESQLAstItem => { + const arg = collectBooleanExpression(ctx.booleanExpression())[0]; - if (expression.length) { - ast.push(...expression); - } + let order: ESQLOrderExpression['order'] = ''; + let nulls: ESQLOrderExpression['nulls'] = ''; + + const ordering = ctx._ordering?.text?.toUpperCase(); + + if (ordering) order = ordering as ESQLOrderExpression['order']; + + const nullOrdering = ctx._nullOrdering?.text?.toUpperCase(); + + switch (nullOrdering) { + case 'LAST': + nulls = 'NULLS LAST'; + break; + case 'FIRST': + nulls = 'NULLS FIRST'; + break; } + + if (!order && !nulls) { + return arg; + } + + return createOrderExpression(ctx, arg, order, nulls); +}; + +export function visitOrderExpressions( + ctx: OrderExpressionContext[] +): Array { + const ast: Array = []; + + for (const orderCtx of ctx) { + ast.push(visitOrderExpression(orderCtx)); + } + return ast; } diff --git a/packages/kbn-esql-ast/src/pretty_print/__tests__/basic_pretty_printer.test.ts b/packages/kbn-esql-ast/src/pretty_print/__tests__/basic_pretty_printer.test.ts index 3b4734da9d45f..caf8c55dba3e0 100644 --- a/packages/kbn-esql-ast/src/pretty_print/__tests__/basic_pretty_printer.test.ts +++ b/packages/kbn-esql-ast/src/pretty_print/__tests__/basic_pretty_printer.test.ts @@ -50,18 +50,22 @@ describe('single line query', () => { expect(text).toBe('FROM a | SORT b'); }); - /** @todo Enable once order expressions are supported. */ - test.skip('order expression with ASC modifier', () => { + test('order expression with ASC modifier', () => { const { text } = reprint('FROM a | SORT b ASC'); expect(text).toBe('FROM a | SORT b ASC'); }); - /** @todo Enable once order expressions are supported. */ - test.skip('order expression with ASC and NULLS FIRST modifier', () => { - const { text } = reprint('FROM a | SORT b ASC NULLS FIRST'); + test('order expression with NULLS LAST modifier', () => { + const { text } = reprint('FROM a | SORT b NULLS LAST'); - expect(text).toBe('FROM a | SORT b ASC NULLS FIRST'); + expect(text).toBe('FROM a | SORT b NULLS LAST'); + }); + + test('order expression with DESC and NULLS FIRST modifier', () => { + const { text } = reprint('FROM a | SORT b DESC NULLS FIRST'); + + expect(text).toBe('FROM a | SORT b DESC NULLS FIRST'); }); }); diff --git a/packages/kbn-esql-ast/src/pretty_print/__tests__/fixtures.ts b/packages/kbn-esql-ast/src/pretty_print/__tests__/fixtures.ts index 43325fba10809..5e2113bbfb623 100644 --- a/packages/kbn-esql-ast/src/pretty_print/__tests__/fixtures.ts +++ b/packages/kbn-esql-ast/src/pretty_print/__tests__/fixtures.ts @@ -10,7 +10,7 @@ export const query1 = ` from kibana_sample_data_logs | EVAL timestamp=DATE_TRUNC(3 hour, @timestamp), status = CASE( to_integer(response.keyword) >= 200 and to_integer(response.keyword) < 400, "HTTP 2xx and 3xx", to_integer(response.keyword) >= 400 and to_integer(response.keyword) < 500, "HTTP 4xx", "HTTP 5xx") -| stats results = count(*) by \`Over time\` = BUCKET(timestamp, 50, ?t_start, ?t_end), status +| stats results = count(*) by \`Over time\` = BUCKET(timestamp, 50, ?_tstart, ?_tend), status `; export const query2 = ` diff --git a/packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts b/packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts index 6c190dcd3c5d9..1aa3d492c7583 100644 --- a/packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts +++ b/packages/kbn-esql-ast/src/pretty_print/basic_pretty_printer.ts @@ -133,7 +133,7 @@ export class BasicPrettyPrinter { : word.toUpperCase(); } - protected readonly visitor = new Visitor() + protected readonly visitor: Visitor = new Visitor() .on('visitExpression', (ctx) => { return ''; }) @@ -229,6 +229,21 @@ export class BasicPrettyPrinter { return `${ctx.visitArgument(0)} ${this.keyword('AS')} ${ctx.visitArgument(1)}`; }) + .on('visitOrderExpression', (ctx) => { + const node = ctx.node; + let text = ctx.visitArgument(0); + + if (node.order) { + text += ` ${node.order}`; + } + + if (node.nulls) { + text += ` ${node.nulls}`; + } + + return text; + }) + .on('visitCommandOption', (ctx) => { const opts = this.opts; const option = opts.lowercaseOptions ? ctx.node.name : ctx.node.name.toUpperCase(); @@ -281,14 +296,14 @@ export class BasicPrettyPrinter { }); public print(query: ESQLAstQueryNode) { - return this.visitor.visitQuery(query); + return this.visitor.visitQuery(query, undefined); } public printCommand(command: ESQLAstCommand) { - return this.visitor.visitCommand(command); + return this.visitor.visitCommand(command, undefined); } public printExpression(expression: ESQLAstExpressionNode) { - return this.visitor.visitExpression(expression); + return this.visitor.visitExpression(expression, undefined); } } diff --git a/packages/kbn-esql-ast/src/types.ts b/packages/kbn-esql-ast/src/types.ts index da42ec24bd69b..e98057258ee61 100644 --- a/packages/kbn-esql-ast/src/types.ts +++ b/packages/kbn-esql-ast/src/types.ts @@ -26,6 +26,7 @@ export type ESQLSingleAstItem = | ESQLLiteral // "literal expression" | ESQLCommandMode | ESQLInlineCast // "inline cast expression" + | ESQLOrderExpression | ESQLUnknownItem; export type ESQLAstField = ESQLFunction | ESQLColumn; @@ -135,11 +136,26 @@ export interface ESQLUnaryExpression extends ESQLFunction<'unary-expression'> { args: [ESQLAstItem]; } -export interface ESQLPostfixUnaryExpression extends ESQLFunction<'postfix-unary-expression'> { +export interface ESQLPostfixUnaryExpression + extends ESQLFunction<'postfix-unary-expression', Name> { subtype: 'postfix-unary-expression'; args: [ESQLAstItem]; } +/** + * Represents an order expression used in SORT commands. + * + * ``` + * ... | SORT field ASC NULLS FIRST + * ``` + */ +export interface ESQLOrderExpression extends ESQLAstBaseItem { + type: 'order'; + order: '' | 'ASC' | 'DESC'; + nulls: '' | 'NULLS FIRST' | 'NULLS LAST'; + args: [field: ESQLAstItem]; +} + export interface ESQLBinaryExpression extends ESQLFunction<'binary-expression', BinaryExpressionOperator> { subtype: 'binary-expression'; diff --git a/packages/kbn-esql-ast/src/visitor/contexts.ts b/packages/kbn-esql-ast/src/visitor/contexts.ts index 2cedf0d6ba8a3..c646b7f446227 100644 --- a/packages/kbn-esql-ast/src/visitor/contexts.ts +++ b/packages/kbn-esql-ast/src/visitor/contexts.ts @@ -26,6 +26,7 @@ import type { ESQLIntegerLiteral, ESQLList, ESQLLiteral, + ESQLOrderExpression, ESQLSingleAstItem, ESQLSource, ESQLTimeInterval, @@ -543,3 +544,8 @@ export class RenameExpressionVisitorContext< Methods extends VisitorMethods = VisitorMethods, Data extends SharedData = SharedData > extends VisitorContext {} + +export class OrderExpressionVisitorContext< + Methods extends VisitorMethods = VisitorMethods, + Data extends SharedData = SharedData +> extends VisitorContext {} diff --git a/packages/kbn-esql-ast/src/visitor/global_visitor_context.ts b/packages/kbn-esql-ast/src/visitor/global_visitor_context.ts index 8260776cca2f5..793803bc48f54 100644 --- a/packages/kbn-esql-ast/src/visitor/global_visitor_context.ts +++ b/packages/kbn-esql-ast/src/visitor/global_visitor_context.ts @@ -16,6 +16,7 @@ import type { ESQLInlineCast, ESQLList, ESQLLiteral, + ESQLOrderExpression, ESQLSource, ESQLTimeInterval, } from '../types'; @@ -400,6 +401,10 @@ export class GlobalVisitorContext< if (!this.methods.visitInlineCastExpression) break; return this.visitInlineCastExpression(parent, expressionNode, input as any); } + case 'order': { + if (!this.methods.visitOrderExpression) break; + return this.visitOrderExpression(parent, expressionNode, input as any); + } case 'option': { switch (expressionNode.name) { case 'as': { @@ -487,4 +492,13 @@ export class GlobalVisitorContext< const context = new contexts.RenameExpressionVisitorContext(this, node, parent); return this.visitWithSpecificContext('visitRenameExpression', context, input); } + + public visitOrderExpression( + parent: contexts.VisitorContext | null, + node: ESQLOrderExpression, + input: types.VisitorInput + ): types.VisitorOutput { + const context = new contexts.OrderExpressionVisitorContext(this, node, parent); + return this.visitWithSpecificContext('visitOrderExpression', context, input); + } } diff --git a/packages/kbn-esql-ast/src/visitor/types.ts b/packages/kbn-esql-ast/src/visitor/types.ts index 28259fb1cbaf4..c5b18a727bc3c 100644 --- a/packages/kbn-esql-ast/src/visitor/types.ts +++ b/packages/kbn-esql-ast/src/visitor/types.ts @@ -61,7 +61,8 @@ export type ExpressionVisitorInput = AnyToVoid< VisitorInput & VisitorInput & VisitorInput & - VisitorInput + VisitorInput & + VisitorInput >; /** @@ -76,7 +77,8 @@ export type ExpressionVisitorOutput = | VisitorOutput | VisitorOutput | VisitorOutput - | VisitorOutput; + | VisitorOutput + | VisitorOutput; /** * Input that satisfies any command visitor input constraints. @@ -203,6 +205,7 @@ export interface VisitorMethods< any, any >; + visitOrderExpression?: Visitor, any, any>; } /** diff --git a/packages/kbn-esql-ast/src/walker/walker.test.ts b/packages/kbn-esql-ast/src/walker/walker.test.ts index b51dcde38c3a5..eeae2ea142348 100644 --- a/packages/kbn-esql-ast/src/walker/walker.test.ts +++ b/packages/kbn-esql-ast/src/walker/walker.test.ts @@ -793,7 +793,7 @@ describe('Walker.params()', () => { test('can collect all params from grouping functions', () => { const query = - 'ROW x=1, time=2024-07-10 | stats z = avg(x) by bucket(time, 20, ?t_start,?t_end)'; + 'ROW x=1, time=2024-07-10 | stats z = avg(x) by bucket(time, 20, ?_tstart,?_tend)'; const { ast } = getAstAndSyntaxErrors(query); const params = Walker.params(ast); @@ -802,13 +802,13 @@ describe('Walker.params()', () => { type: 'literal', literalType: 'param', paramType: 'named', - value: 't_start', + value: '_tstart', }, { type: 'literal', literalType: 'param', paramType: 'named', - value: 't_end', + value: '_tend', }, ]); }); diff --git a/packages/kbn-esql-utils/src/utils/append_to_query.ts b/packages/kbn-esql-utils/src/utils/append_to_query.ts index 76f317d55aa5d..f4161be073a8d 100644 --- a/packages/kbn-esql-utils/src/utils/append_to_query.ts +++ b/packages/kbn-esql-utils/src/utils/append_to_query.ts @@ -36,7 +36,7 @@ export function appendWhereClauseToESQLQuery( default: operator = '=='; } - let filterValue = typeof value === 'string' ? `"${value.replace(/"/g, '\\"')}"` : value; + let filterValue = typeof value === 'string' ? `"${value.replace(/\"/g, '\\"')}"` : value; // Adding the backticks here are they are needed for special char fields let fieldName = `\`${field}\``; diff --git a/packages/kbn-esql-utils/src/utils/get_initial_esql_query.test.ts b/packages/kbn-esql-utils/src/utils/get_initial_esql_query.test.ts index a431a3c4ccf46..033849e8e3f6a 100644 --- a/packages/kbn-esql-utils/src/utils/get_initial_esql_query.test.ts +++ b/packages/kbn-esql-utils/src/utils/get_initial_esql_query.test.ts @@ -98,7 +98,7 @@ describe('getInitialESQLQuery', () => { ] as DataView['fields']; const dataView = getDataView('logs*', fields, '@custom_timestamp'); expect(getInitialESQLQuery(dataView)).toBe( - 'FROM logs* | WHERE @custom_timestamp >= ?t_start AND @custom_timestamp <= ?t_end | LIMIT 10' + 'FROM logs* | WHERE @custom_timestamp >= ?_tstart AND @custom_timestamp <= ?_tend | LIMIT 10' ); }); }); diff --git a/packages/kbn-esql-utils/src/utils/get_initial_esql_query.ts b/packages/kbn-esql-utils/src/utils/get_initial_esql_query.ts index b59358a857eda..d1feec759f36a 100644 --- a/packages/kbn-esql-utils/src/utils/get_initial_esql_query.ts +++ b/packages/kbn-esql-utils/src/utils/get_initial_esql_query.ts @@ -20,7 +20,7 @@ export function getInitialESQLQuery(dataView: DataView): string { const timeFieldName = dataView?.timeFieldName; const filterByTimeParams = !hasAtTimestampField && timeFieldName - ? ` | WHERE ${timeFieldName} >= ?t_start AND ${timeFieldName} <= ?t_end` + ? ` | WHERE ${timeFieldName} >= ?_tstart AND ${timeFieldName} <= ?_tend` : ''; return `FROM ${dataView.getIndexPattern()}${filterByTimeParams} | LIMIT 10`; } diff --git a/packages/kbn-esql-utils/src/utils/query_parsing_helpers.test.ts b/packages/kbn-esql-utils/src/utils/query_parsing_helpers.test.ts index 47096f3421d76..5479d6982e46a 100644 --- a/packages/kbn-esql-utils/src/utils/query_parsing_helpers.test.ts +++ b/packages/kbn-esql-utils/src/utils/query_parsing_helpers.test.ts @@ -154,12 +154,12 @@ describe('esql query helpers', () => { }); it('should return the time field if there is at least one time param', () => { - expect(getTimeFieldFromESQLQuery('from a | eval b = 1 | where time >= ?t_start')).toBe( + expect(getTimeFieldFromESQLQuery('from a | eval b = 1 | where time >= ?_tstart')).toBe( 'time' ); }); - it('should return undefined if there is one named param but is not ?t_start or ?t_end', () => { + it('should return undefined if there is one named param but is not ?_tstart or ?_tend', () => { expect( getTimeFieldFromESQLQuery('from a | eval b = 1 | where time >= ?late') ).toBeUndefined(); @@ -167,14 +167,14 @@ describe('esql query helpers', () => { it('should return undefined if there is one named param but is used without a time field', () => { expect( - getTimeFieldFromESQLQuery('from a | eval b = DATE_TRUNC(1 day, ?t_start)') + getTimeFieldFromESQLQuery('from a | eval b = DATE_TRUNC(1 day, ?_tstart)') ).toBeUndefined(); }); it('should return the time field if there is at least one time param in the bucket function', () => { expect( getTimeFieldFromESQLQuery( - 'from a | stats meow = avg(bytes) by bucket(event.timefield, 200, ?t_start, ?t_end)' + 'from a | stats meow = avg(bytes) by bucket(event.timefield, 200, ?_tstart, ?_tend)' ) ).toBe('event.timefield'); }); diff --git a/packages/kbn-esql-utils/src/utils/query_parsing_helpers.ts b/packages/kbn-esql-utils/src/utils/query_parsing_helpers.ts index 53ce6e06bb536..d61d8ea0329cc 100644 --- a/packages/kbn-esql-utils/src/utils/query_parsing_helpers.ts +++ b/packages/kbn-esql-utils/src/utils/query_parsing_helpers.ts @@ -77,7 +77,7 @@ export function removeDropCommandsFromESQLQuery(esql?: string): string { } /** - * When the ?t_start and ?t_end params are used, we want to retrieve the timefield from the query. + * When the ?_tstart and ?_tend params are used, we want to retrieve the timefield from the query. * @param esql:string * @returns string */ @@ -91,7 +91,7 @@ export const getTimeFieldFromESQLQuery = (esql: string) => { const params = Walker.params(ast); const timeNamedParam = params.find( - (param) => param.value === 't_start' || param.value === 't_end' + (param) => param.value === '_tstart' || param.value === '_tend' ); if (!timeNamedParam || !functions.length) { return undefined; diff --git a/packages/kbn-esql-utils/src/utils/run_query.test.ts b/packages/kbn-esql-utils/src/utils/run_query.test.ts index 18089f422483f..8618d078f5e06 100644 --- a/packages/kbn-esql-utils/src/utils/run_query.test.ts +++ b/packages/kbn-esql-utils/src/utils/run_query.test.ts @@ -19,26 +19,26 @@ describe('getStartEndParams', () => { it('should return an array with the start param if exists at the query', () => { const time = { from: 'Jul 5, 2024 @ 08:03:56.849', to: 'Jul 5, 2024 @ 10:03:56.849' }; - const query = 'FROM foo | where time > ?t_start'; + const query = 'FROM foo | where time > ?_tstart'; const params = getStartEndParams(query, time); expect(params).toHaveLength(1); - expect(params[0]).toHaveProperty('t_start'); + expect(params[0]).toHaveProperty('_tstart'); }); it('should return an array with the end param if exists at the query', () => { const time = { from: 'Jul 5, 2024 @ 08:03:56.849', to: 'Jul 5, 2024 @ 10:03:56.849' }; - const query = 'FROM foo | where time < ?t_end'; + const query = 'FROM foo | where time < ?_tend'; const params = getStartEndParams(query, time); expect(params).toHaveLength(1); - expect(params[0]).toHaveProperty('t_end'); + expect(params[0]).toHaveProperty('_tend'); }); it('should return an array with the end and start params if exist at the query', () => { const time = { from: 'Jul 5, 2024 @ 08:03:56.849', to: 'Jul 5, 2024 @ 10:03:56.849' }; - const query = 'FROM foo | where time < ?t_end amd time > ?t_start'; + const query = 'FROM foo | where time < ?_tend amd time > ?_tstart'; const params = getStartEndParams(query, time); expect(params).toHaveLength(2); - expect(params[0]).toHaveProperty('t_start'); - expect(params[1]).toHaveProperty('t_end'); + expect(params[0]).toHaveProperty('_tstart'); + expect(params[1]).toHaveProperty('_tend'); }); }); diff --git a/packages/kbn-esql-utils/src/utils/run_query.ts b/packages/kbn-esql-utils/src/utils/run_query.ts index 0d016a7f22f92..b9b09336a7c20 100644 --- a/packages/kbn-esql-utils/src/utils/run_query.ts +++ b/packages/kbn-esql-utils/src/utils/run_query.ts @@ -16,11 +16,11 @@ import { esFieldTypeToKibanaFieldType } from '@kbn/field-types'; import type { ESQLColumn, ESQLSearchResponse, ESQLSearchParams } from '@kbn/es-types'; import { lastValueFrom } from 'rxjs'; -export const hasStartEndParams = (query: string) => /\?t_start|\?t_end/i.test(query); +export const hasStartEndParams = (query: string) => /\?_tstart|\?_tend/i.test(query); export const getStartEndParams = (query: string, time?: TimeRange) => { - const startNamedParams = /\?t_start/i.test(query); - const endNamedParams = /\?t_end/i.test(query); + const startNamedParams = /\?_tstart/i.test(query); + const endNamedParams = /\?_tend/i.test(query); if (time && (startNamedParams || endNamedParams)) { const timeParams = { start: startNamedParams ? dateMath.parse(time.from)?.toISOString() : undefined, @@ -28,10 +28,10 @@ export const getStartEndParams = (query: string, time?: TimeRange) => { }; const namedParams = []; if (timeParams?.start) { - namedParams.push({ t_start: timeParams.start }); + namedParams.push({ _tstart: timeParams.start }); } if (timeParams?.end) { - namedParams.push({ t_end: timeParams.end }); + namedParams.push({ _tend: timeParams.end }); } return namedParams; } diff --git a/packages/kbn-esql-validation-autocomplete/package.json b/packages/kbn-esql-validation-autocomplete/package.json index 3cd5ec84f5d7a..074a4f04f6dac 100644 --- a/packages/kbn-esql-validation-autocomplete/package.json +++ b/packages/kbn-esql-validation-autocomplete/package.json @@ -6,8 +6,8 @@ "sideEffects": false, "scripts": { "make:defs": "ts-node --transpileOnly ./scripts/generate_function_definitions.ts", - "postmake:defs": "yarn run lint:fix", - "lint:fix": "cd ../.. && node ./scripts/eslint --fix ./packages/kbn-esql-validation-autocomplete/src/**/*.ts", + "postmake:defs": "yarn run lint:fix:generated", + "lint:fix:generated": "cd ../.. && node ./scripts/eslint --fix ./packages/kbn-esql-validation-autocomplete/src/definitions/generated", "test:validation": "cd ../.. && yarn test:jest ./packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts" } } diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.sort.test.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.sort.test.ts new file mode 100644 index 0000000000000..924790ed470f5 --- /dev/null +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.sort.test.ts @@ -0,0 +1,106 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { setup, getFieldNamesByType } from './helpers'; + +describe('autocomplete.suggest', () => { + describe('SORT ( [ ASC / DESC ] [ NULLS FIST / NULLS LAST ] )+', () => { + describe('SORT ...', () => { + test('suggests command on first character', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions( + 'from a | sort /', + [...getFieldNamesByType('any')].map((field) => `${field} `) + ); + await assertSuggestions( + 'from a | sort column, /', + [...getFieldNamesByType('any')].map((field) => `${field} `) + ); + }); + }); + + describe('... [ ASC / DESC ] ...', () => { + test('suggests all modifiers on first space', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField /', [ + 'ASC ', + 'DESC ', + 'NULLS FIRST ', + 'NULLS LAST ', + ',', + '| ', + ]); + }); + + test('when user starts to type ASC modifier', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField A/', ['ASC ']); + }); + + test('when user starts to type DESC modifier', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField d/', ['DESC ']); + await assertSuggestions('from a | sort stringField des/', ['DESC ']); + await assertSuggestions('from a | sort stringField DES/', ['DESC ']); + }); + }); + + describe('... [ NULLS FIST / NULLS LAST ]', () => { + test('suggests command on first character', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField ASC /', [ + 'NULLS FIRST ', + 'NULLS LAST ', + ',', + '| ', + ]); + }); + + test('when user starts to type NULLS modifiers', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField N/', ['NULLS FIRST ', 'NULLS LAST ']); + await assertSuggestions('from a | sort stringField null/', ['NULLS FIRST ', 'NULLS LAST ']); + await assertSuggestions('from a | sort stringField nulls/', [ + 'NULLS FIRST ', + 'NULLS LAST ', + ]); + await assertSuggestions('from a | sort stringField nulls /', [ + 'NULLS FIRST ', + 'NULLS LAST ', + ]); + }); + + test('when user types NULLS FIRST', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField NULLS F/', ['NULLS FIRST ']); + await assertSuggestions('from a | sort stringField NULLS FI/', ['NULLS FIRST ']); + }); + + test('when user types NULLS LAST', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField NULLS L/', ['NULLS LAST ']); + await assertSuggestions('from a | sort stringField NULLS LAS/', ['NULLS LAST ']); + }); + + test('after nulls are entered, suggests comma or pipe', async () => { + const { assertSuggestions } = await setup(); + + await assertSuggestions('from a | sort stringField NULLS LAST /', [',', '| ']); + }); + }); + }); +}); diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.stats.test.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.stats.test.ts index 452a3b2754644..6b2f5fea0cc8d 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.stats.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.command.stats.test.ts @@ -292,14 +292,14 @@ describe('autocomplete.suggest', () => { }); test('on space within bucket()', async () => { const { assertSuggestions } = await setup(); - await assertSuggestions('from a | stats avg(b) by BUCKET(/, 50, ?t_start, ?t_end)', [ + await assertSuggestions('from a | stats avg(b) by BUCKET(/, 50, ?_tstart, ?_tend)', [ // Note there's no space or comma in the suggested field names ...getFieldNamesByType(['date', ...ESQL_COMMON_NUMERIC_TYPES]), ...getFunctionSignaturesByReturnType('eval', ['date', ...ESQL_COMMON_NUMERIC_TYPES], { scalar: true, }), ]); - await assertSuggestions('from a | stats avg(b) by BUCKET( / , 50, ?t_start, ?t_end)', [ + await assertSuggestions('from a | stats avg(b) by BUCKET( / , 50, ?_tstart, ?_tend)', [ // Note there's no space or comma in the suggested field names ...getFieldNamesByType(['date', ...ESQL_COMMON_NUMERIC_TYPES]), ...getFunctionSignaturesByReturnType('eval', ['date', ...ESQL_COMMON_NUMERIC_TYPES], { @@ -308,7 +308,7 @@ describe('autocomplete.suggest', () => { ]); await assertSuggestions( - 'from a | stats avg(b) by BUCKET(dateField, /50, ?t_start, ?t_end)', + 'from a | stats avg(b) by BUCKET(dateField, /50, ?_tstart, ?_tend)', [ ...getLiteralsByType('time_literal'), ...getFunctionSignaturesByReturnType('eval', ['integer', 'date_period'], { diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.suggest.eval.test.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.suggest.eval.test.ts index c07b065b23ce8..cc04ccb407e6e 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.suggest.eval.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/__tests__/autocomplete.suggest.eval.test.ts @@ -559,7 +559,7 @@ describe('autocomplete.suggest', () => { test('case', async () => { const { assertSuggestions } = await setup(); const comparisonOperators = ['==', '!=', '>', '<', '>=', '<='] - .map((op) => `${op} `) + .map((op) => `${op}`) .concat(','); // case( / ) suggest any field/eval function in this position as first argument @@ -626,7 +626,6 @@ describe('autocomplete.suggest', () => { // Notice no extra space after field name ...getFieldNamesByType('any').map((field) => `${field}`), ...getFunctionSignaturesByReturnType('eval', 'any', { scalar: true }, undefined, []), - 'var0 = ', ]); // case( field > 0, >) suggests fields like normal diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.test.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.test.ts index a58a55f124c4e..2a8c8e53fcab7 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.test.ts @@ -330,22 +330,6 @@ describe('autocomplete', () => { testSuggestions('from a | dissect keywordField/', []); }); - describe('sort', () => { - testSuggestions('from a | sort /', [ - ...getFieldNamesByType('any').map((name) => `${name} `), - ...getFunctionSignaturesByReturnType('sort', 'any', { scalar: true }), - ]); - testSuggestions('from a | sort keywordField /', ['ASC ', 'DESC ', ',', '| ']); - testSuggestions('from a | sort keywordField desc /', [ - 'NULLS FIRST ', - 'NULLS LAST ', - ',', - '| ', - ]); - // @TODO: improve here - // testSuggestions('from a | sort keywordField desc ', ['first', 'last']); - }); - describe('limit', () => { testSuggestions('from a | limit /', ['10 ', '100 ', '1000 ']); testSuggestions('from a | limit 4 /', ['| ']); @@ -672,23 +656,6 @@ describe('autocomplete', () => { // RENAME field AS var0 testSuggestions('FROM index1 | RENAME field AS v/', ['var0']); - // SORT field - testSuggestions('FROM index1 | SORT f/', [ - ...getFunctionSignaturesByReturnType('sort', 'any', { scalar: true }), - ...getFieldNamesByType('any').map((field) => `${field} `), - ]); - - // SORT field order - testSuggestions('FROM index1 | SORT keywordField a/', ['ASC ', 'DESC ', ',', '| ']); - - // SORT field order nulls - testSuggestions('FROM index1 | SORT keywordField ASC n/', [ - 'NULLS FIRST ', - 'NULLS LAST ', - ',', - '| ', - ]); - // STATS argument testSuggestions('FROM index1 | STATS f/', [ 'var0 = ', @@ -1015,27 +982,6 @@ describe('autocomplete', () => { // LIMIT number testSuggestions('FROM a | LIMIT /', ['10 ', '100 ', '1000 '].map(attachTriggerCommand)); - // SORT field - testSuggestions( - 'FROM a | SORT /', - [ - ...getFieldNamesByType('any').map((field) => `${field} `), - ...getFunctionSignaturesByReturnType('sort', 'any', { scalar: true }), - ].map(attachTriggerCommand) - ); - - // SORT field order - testSuggestions('FROM a | SORT field /', [ - ',', - ...['ASC ', 'DESC ', '| '].map(attachTriggerCommand), - ]); - - // SORT field order nulls - testSuggestions('FROM a | SORT field ASC /', [ - ',', - ...['NULLS FIRST ', 'NULLS LAST ', '| '].map(attachTriggerCommand), - ]); - // STATS argument testSuggestions( 'FROM a | STATS /', @@ -1266,22 +1212,6 @@ describe('autocomplete', () => { '>= $0', 'IN $0', ]); - testSuggestions('FROM a | SORT doubleField IS NOT N/', [ - { text: 'IS NOT NULL', rangeToReplace: { start: 27, end: 34 } }, - 'IS NULL', - '% $0', - '* $0', - '+ $0', - '- $0', - '/ $0', - '!= $0', - '< $0', - '<= $0', - '== $0', - '> $0', - '>= $0', - 'IN $0', - ]); describe('dot-separated field names', () => { testSuggestions( 'FROM a | KEEP field.nam/', diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts index a1be88b0b1436..a6ee324fd2621 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts @@ -102,6 +102,7 @@ import { removeQuoteForSuggestedSources, getValidSignaturesAndTypesToSuggestNext, } from './helper'; +import { getSortPos } from './commands/sort/helper'; import { FunctionParameter, FunctionReturnType, @@ -111,6 +112,7 @@ import { } from '../definitions/types'; import { metadataOption } from '../definitions/options'; import { comparisonFunctions } from '../definitions/builtin'; +import { countBracketsUnclosed } from '../shared/helpers'; type GetFieldsByTypeFn = ( type: string | string[], @@ -192,6 +194,10 @@ export async function suggest( } if (astContext.type === 'expression') { + if (astContext.command.name === 'sort') { + return await suggestForSortCmd(innerText, getFieldsByType); + } + // suggest next possible argument, or option // otherwise a variable return getExpressionSuggestionsByType( @@ -554,8 +560,11 @@ async function getExpressionSuggestionsByType( const fieldsMap: Map = await (argDef ? getFieldsMap() : new Map()); const anyVariables = collectVariables(commands, fieldsMap, innerText); + const previousWord = findPreviousWord(innerText); // enrich with assignment has some special rules who are handled somewhere else - const canHaveAssignments = ['eval', 'stats', 'row'].includes(command.name); + const canHaveAssignments = + ['eval', 'stats', 'row'].includes(command.name) && + !comparisonFunctions.map((fn) => fn.name).includes(previousWord); const references = { fields: fieldsMap, variables: anyVariables }; @@ -1422,10 +1431,9 @@ async function getFunctionArgsSuggestions( suggestions.push( ...comparisonFunctions.map(({ name, description }) => ({ label: name, - text: name + ' ', + text: name, kind: 'Function' as ItemKind, detail: description, - command: TRIGGER_SUGGESTION_COMMAND, })) ); } @@ -1786,10 +1794,13 @@ async function getOptionArgsSuggestions( openSuggestions: true, })) ); + // Checks if cursor is still within function () + // by checking if the marker editor/cursor is within an unclosed parenthesis + const canHaveAssignment = countBracketsUnclosed('(', innerText) === 0; if (option.name === 'by') { // Add quick snippet for for stats ... by bucket(<>) - if (command.name === 'stats') { + if (command.name === 'stats' && canHaveAssignment) { suggestions.push({ label: i18n.translate( 'kbn-esql-validation-autocomplete.esql.autocomplete.addDateHistogram', @@ -1820,12 +1831,13 @@ async function getOptionArgsSuggestions( { functions: true, fields: false, - } + }, + { ignoreFn: canHaveAssignment ? [] : ['bucket', 'case'] } )) ); } - if (command.name === 'stats' && isNewExpression) { + if (command.name === 'stats' && isNewExpression && canHaveAssignment) { suggestions.push(buildNewVarDefinition(findNewVariable(anyVariables))); } } @@ -1833,3 +1845,100 @@ async function getOptionArgsSuggestions( } return suggestions; } + +const sortModifierSuggestions = { + ASC: { + label: 'ASC', + text: 'ASC ', + detail: '', + kind: 'Keyword', + sortText: '1-ASC', + command: TRIGGER_SUGGESTION_COMMAND, + } as SuggestionRawDefinition, + DESC: { + label: 'DESC', + text: 'DESC ', + detail: '', + kind: 'Keyword', + sortText: '1-DESC', + command: TRIGGER_SUGGESTION_COMMAND, + } as SuggestionRawDefinition, + NULLS_FIRST: { + label: 'NULLS FIRST', + text: 'NULLS FIRST ', + detail: '', + kind: 'Keyword', + sortText: '2-NULLS FIRST', + command: TRIGGER_SUGGESTION_COMMAND, + } as SuggestionRawDefinition, + NULLS_LAST: { + label: 'NULLS LAST', + text: 'NULLS LAST ', + detail: '', + kind: 'Keyword', + sortText: '2-NULLS LAST', + command: TRIGGER_SUGGESTION_COMMAND, + } as SuggestionRawDefinition, +}; + +export const suggestForSortCmd = async (innerText: string, getFieldsByType: GetFieldsByTypeFn) => { + const { pos, order, nulls } = getSortPos(innerText); + + switch (pos) { + case 'space2': { + return [ + sortModifierSuggestions.ASC, + sortModifierSuggestions.DESC, + sortModifierSuggestions.NULLS_FIRST, + sortModifierSuggestions.NULLS_LAST, + ...getFinalSuggestions({ + comma: true, + }), + ]; + } + case 'order': { + const suggestions: SuggestionRawDefinition[] = []; + for (const modifier of Object.values(sortModifierSuggestions)) { + if (modifier.label.startsWith(order)) { + suggestions.push(modifier); + } + } + return suggestions; + } + case 'space3': { + return [ + sortModifierSuggestions.NULLS_FIRST, + sortModifierSuggestions.NULLS_LAST, + ...getFinalSuggestions({ + comma: true, + }), + ]; + } + case 'nulls': { + const end = innerText.length + 1; + const start = end - nulls.length; + const suggestions: SuggestionRawDefinition[] = []; + for (const modifier of Object.values(sortModifierSuggestions)) { + if (modifier.label.startsWith(nulls)) { + suggestions.push({ + ...modifier, + rangeToReplace: { + start, + end, + }, + }); + } + } + return suggestions; + } + case 'space4': { + return [ + ...getFinalSuggestions({ + comma: true, + }), + ]; + } + } + + return (await getFieldsByType('any', [], { advanceCursor: true })) as SuggestionRawDefinition[]; +}; diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/commands/sort/helper.test.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/commands/sort/helper.test.ts new file mode 100644 index 0000000000000..82059b6b7765c --- /dev/null +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/commands/sort/helper.test.ts @@ -0,0 +1,55 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { getSortPos } from './helper'; + +test('returns correct position on complete modifier matches', () => { + expect(getSortPos('from a | ').pos).toBe('none'); + expect(getSortPos('from a | s').pos).toBe('pre-start'); + expect(getSortPos('from a | so').pos).toBe('pre-start'); + expect(getSortPos('from a | sor').pos).toBe('pre-start'); + expect(getSortPos('from a | sort').pos).toBe('start'); + expect(getSortPos('from a | sort ').pos).toBe('space1'); + expect(getSortPos('from a | sort col').pos).toBe('column'); + expect(getSortPos('from a | sort col ').pos).toBe('space2'); + expect(getSortPos('from a | sort col ASC').pos).toBe('order'); + expect(getSortPos('from a | sort col DESC ').pos).toBe('space3'); + expect(getSortPos('from a | sort col DESC NULLS FIRST').pos).toBe('nulls'); + expect(getSortPos('from a | sort col DESC NULLS LAST ').pos).toBe('space4'); + expect(getSortPos('from a | sort col DESC NULLS LAST, ').pos).toBe('space1'); + expect(getSortPos('from a | sort col DESC NULLS LAST, col2').pos).toBe('column'); + expect(getSortPos('from a | sort col DESC NULLS LAST, col2 DESC').pos).toBe('order'); + expect(getSortPos('from a | sort col DESC NULLS LAST, col2 NULLS LAST').pos).toBe('nulls'); + expect(getSortPos('from a | sort col DESC NULLS LAST, col2 NULLS LAST ').pos).toBe('space4'); +}); + +test('returns ASC/DESC matched text', () => { + expect(getSortPos('from a | sort col ASC').pos).toBe('order'); + expect(getSortPos('from a | sort col asc').order).toBe('ASC'); + + expect(getSortPos('from a | sort col as').pos).toBe('order'); + expect(getSortPos('from a | sort col as').order).toBe('AS'); + + expect(getSortPos('from a | sort col DE').pos).toBe('order'); + expect(getSortPos('from a | sort col DE').order).toBe('DE'); +}); + +test('returns NULLS FIRST/NULLS LAST matched text', () => { + expect(getSortPos('from a | sort col ASC NULLS FIRST').pos).toBe('nulls'); + expect(getSortPos('from a | sort col ASC NULLS FIRST').nulls).toBe('NULLS FIRST'); + + expect(getSortPos('from a | sort col ASC nulls fi').pos).toBe('nulls'); + expect(getSortPos('from a | sort col ASC nulls fi').nulls).toBe('NULLS FI'); + + expect(getSortPos('from a | sort col nul').pos).toBe('nulls'); + expect(getSortPos('from a | sort col nul').nulls).toBe('NUL'); + + expect(getSortPos('from a | sort col1, col2 NULLS LA').pos).toBe('nulls'); + expect(getSortPos('from a | sort col1, col2 NULLS LA').nulls).toBe('NULLS LA'); +}); diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/commands/sort/helper.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/commands/sort/helper.ts new file mode 100644 index 0000000000000..dfa5ce0f4d5f7 --- /dev/null +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/commands/sort/helper.ts @@ -0,0 +1,84 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +const regexStart = /.+\|\s*so?r?(?t?)(.+,)?(?\s+)?/i; +const regex = + /.+\|\s*sort(.+,)?((?\s+)(?[^\s]+)(?\s*)(?(AS?C?)|(DE?S?C?))?(?\s*)(?NU?L?L?S? ?(FI?R?S?T?|LA?S?T?)?)?(?\s*))?/i; + +export interface SortCaretPosition { + /** + * Position of the caret in the sort command: + * + * ``` + * SORT [ASC/DESC] [NULLS FIRST/NULLS LAST] + * | | | | | | | | + * | | | | | | | space4 + * | | | | | | nulls + * | | | | | space3 + * | | | | order + * | | | space 2 + * | | | + * | | column + * | start + * pre-start + * ``` + */ + pos: + | 'none' + | 'pre-start' + | 'start' + | 'space1' + | 'column' + | 'space2' + | 'order' + | 'space3' + | 'nulls' + | 'space4'; + order: string; + nulls: string; +} + +export const getSortPos = (query: string): SortCaretPosition => { + const match = query.match(regex); + let pos: SortCaretPosition['pos'] = 'none'; + let order: SortCaretPosition['order'] = ''; + let nulls: SortCaretPosition['nulls'] = ''; + + if (match?.groups?.space4) { + pos = 'space4'; + } else if (match?.groups?.nulls) { + pos = 'nulls'; + nulls = match.groups.nulls.toUpperCase(); + } else if (match?.groups?.space3) { + pos = 'space3'; + } else if (match?.groups?.order) { + pos = 'order'; + order = match.groups.order.toUpperCase(); + } else if (match?.groups?.space2) { + pos = 'space2'; + } else if (match?.groups?.column) { + pos = 'column'; + } else { + const match2 = query.match(regexStart); + + if (match2?.groups?.space1) { + pos = 'space1'; + } else if (match2?.groups?.start) { + pos = 'start'; + } else if (match2) { + pos = 'pre-start'; + } + } + + return { + pos, + order, + nulls, + }; +}; diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts index b33d705711f05..cb08e0f8d4e91 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts @@ -30,7 +30,7 @@ const allFunctions = aggregationFunctionDefinitions .concat(scalarFunctionDefinitions) .concat(groupingFunctionDefinitions); -export const TIME_SYSTEM_PARAMS = ['?t_start', '?t_end']; +export const TIME_SYSTEM_PARAMS = ['?_tstart', '?_tend']; export const getAddDateHistogramSnippet = (histogramBarTarget = 50) => { return `BUCKET($0, ${histogramBarTarget}, ${TIME_SYSTEM_PARAMS.join(', ')})`; @@ -140,8 +140,6 @@ export const buildFieldsDefinitionsWithMetadata = ( options?: { advanceCursor?: boolean; openSuggestions?: boolean; addComma?: boolean } ): SuggestionRawDefinition[] => { return fields.map((field) => { - const description = field.metadata?.description; - const titleCaseType = field.type.charAt(0).toUpperCase() + field.type.slice(1); return { label: field.name, @@ -151,16 +149,8 @@ export const buildFieldsDefinitionsWithMetadata = ( (options?.advanceCursor ? ' ' : ''), kind: 'Variable', detail: titleCaseType, - documentation: description - ? { - value: ` ---- - -${description}`, - } - : undefined, - // If there is a description, it is a field from ECS, so it should be sorted to the top - sortText: description ? '1D' : 'D', + // If detected to be an ECS field, push it up to the top of the list + sortText: field.isEcs ? '1D' : 'D', command: options?.openSuggestions ? TRIGGER_SUGGESTION_COMMAND : undefined, }; }); @@ -442,13 +432,13 @@ export function getCompatibleLiterals( } export const TIME_SYSTEM_DESCRIPTIONS = { - '?t_start': i18n.translate( + '?_tstart': i18n.translate( 'kbn-esql-validation-autocomplete.esql.autocomplete.timeSystemParamStart', { defaultMessage: 'The start time from the date picker', } ), - '?t_end': i18n.translate( + '?_tend': i18n.translate( 'kbn-esql-validation-autocomplete.esql.autocomplete.timeSystemParamEnd', { defaultMessage: 'The end time from the date picker', diff --git a/packages/kbn-text-based-editor/src/ecs_metadata_helper.test.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/utils/ecs_metadata_helper.test.ts similarity index 73% rename from packages/kbn-text-based-editor/src/ecs_metadata_helper.test.ts rename to packages/kbn-esql-validation-autocomplete/src/autocomplete/utils/ecs_metadata_helper.test.ts index 71f954109b910..2f1fe9e6d29c3 100644 --- a/packages/kbn-text-based-editor/src/ecs_metadata_helper.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/utils/ecs_metadata_helper.test.ts @@ -7,11 +7,10 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { getColumnsWithMetadata } from './ecs_metadata_helper'; -import type { FieldsMetadataPublicStart } from '@kbn/fields-metadata-plugin/public'; -import { ESQLRealField } from '@kbn/esql-validation-autocomplete'; +import type { ESQLRealField } from '../../validation/types'; +import { type ECSMetadata, enrichFieldsWithECSInfo } from './ecs_metadata_helper'; -describe('getColumnsWithMetadata', () => { +describe('enrichFieldsWithECSInfo', () => { it('should return original columns if fieldsMetadata is not provided', async () => { const columns: ESQLRealField[] = [ { name: 'ecs.version', type: 'keyword' }, @@ -19,7 +18,7 @@ describe('getColumnsWithMetadata', () => { { name: 'field2', type: 'double' }, ]; - const result = await getColumnsWithMetadata(columns); + const result = await enrichFieldsWithECSInfo(columns); expect(result).toEqual(columns); }); @@ -42,15 +41,23 @@ describe('getColumnsWithMetadata', () => { }, }), }), - } as unknown as FieldsMetadataPublicStart; + }; + const fieldsMetadataCache = await ( + await fieldsMetadata.getClient() + ).find({ + attributes: ['type'], + }); - const result = await getColumnsWithMetadata(columns, fieldsMetadata); + const result = await enrichFieldsWithECSInfo( + columns, + fieldsMetadataCache.fields as ECSMetadata + ); expect(result).toEqual([ { name: 'ecs.field', type: 'text', - metadata: { description: 'ECS field description' }, + isEcs: true, }, { name: 'ecs.fakeBooleanField', type: 'boolean' }, { name: 'field2', type: 'double' }, @@ -68,19 +75,27 @@ describe('getColumnsWithMetadata', () => { find: jest.fn().mockResolvedValue({ fields: { 'ecs.version': { description: 'ECS version field', type: 'keyword' }, - }, + } as unknown as ECSMetadata, }), }), - } as unknown as FieldsMetadataPublicStart; + }; - const result = await getColumnsWithMetadata(columns, fieldsMetadata); + const fieldsMetadataCache = await ( + await fieldsMetadata.getClient() + ).find({ + attributes: ['type'], + }); + const result = await enrichFieldsWithECSInfo( + columns, + fieldsMetadataCache.fields as ECSMetadata + ); expect(result).toEqual([ - { name: 'ecs.version', type: 'keyword', metadata: { description: 'ECS version field' } }, + { name: 'ecs.version', type: 'keyword', isEcs: true }, { name: 'ecs.version.keyword', type: 'keyword', - metadata: { description: 'ECS version field' }, + isEcs: true, }, { name: 'field2', type: 'double' }, ]); diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/utils/ecs_metadata_helper.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/utils/ecs_metadata_helper.ts new file mode 100644 index 0000000000000..adf3e3a98a56a --- /dev/null +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/utils/ecs_metadata_helper.ts @@ -0,0 +1,60 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { ESQLRealField } from '../../validation/types'; + +const removeKeywordSuffix = (name: string) => { + return name.endsWith('.keyword') ? name.slice(0, -8) : name; +}; + +export interface ECSMetadata { + [key: string]: { + type?: string; + source?: string; + description?: string; + }; +} +/** + * Returns columns with the metadata/description (e.g ECS info) + * if available + * + * @param columns + * @param fieldsMetadata + * @returns + */ +export function enrichFieldsWithECSInfo( + columns: Array>, + ecsMetadataCache?: ECSMetadata +): ESQLRealField[] { + if (!ecsMetadataCache) return columns; + + try { + if (ecsMetadataCache) { + return columns.map((c) => { + // Metadata services gives description for + // 'ecs.version' but not 'ecs.version.keyword' + // but both should show description if available + const metadata = ecsMetadataCache[removeKeywordSuffix(c.name)]; + + // Need to convert metadata's type (e.g. keyword) to ES|QL type (e.g. string) to check if they are the same + if (!metadata || (metadata?.type && metadata.type !== c.type)) return c; + return { + ...c, + isEcs: true, + }; + }); + } + + return columns; + } catch (error) { + // eslint-disable-next-line no-console + console.error('Unable to fetch field metadata', error); + } + return columns; +} diff --git a/packages/kbn-esql-validation-autocomplete/src/code_actions/actions.test.ts b/packages/kbn-esql-validation-autocomplete/src/code_actions/actions.test.ts index f0f40df7e108f..b608570854950 100644 --- a/packages/kbn-esql-validation-autocomplete/src/code_actions/actions.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/code_actions/actions.test.ts @@ -11,11 +11,12 @@ import { getActions } from './actions'; import { validateQuery } from '../validation/validation'; import { getAllFunctions } from '../shared/helpers'; import { getAstAndSyntaxErrors } from '@kbn/esql-ast'; -import { CodeActionOptions } from './types'; -import { ESQLRealField } from '../validation/types'; -import { FieldType } from '../definitions/types'; +import type { CodeActionOptions } from './types'; +import type { ESQLRealField } from '../validation/types'; +import type { FieldType } from '../definitions/types'; +import type { ESQLCallbacks, PartialFieldsMetadataClient } from '../shared/types'; -function getCallbackMocks() { +function getCallbackMocks(): jest.Mocked { return { getFieldsFor: jest.fn, any>(async ({ query }) => { if (/enrich/.test(query)) { @@ -65,6 +66,11 @@ function getCallbackMocks() { enrichFields: ['other-field', 'yetAnotherField'], }, ]), + getFieldsMetadata: jest.fn(async () => ({ + find: jest.fn(async () => ({ + fields: {}, + })), + })) as unknown as Promise, }; } @@ -395,6 +401,7 @@ describe('quick fixes logic', () => { const { errors } = await validateQuery(statement, getAstAndSyntaxErrors, undefined, { ...callbackMocks, getFieldsFor: undefined, + getFieldsMetadata: undefined, }); const actions = await getActions( statement, @@ -403,7 +410,11 @@ describe('quick fixes logic', () => { { relaxOnMissingCallbacks: true, }, - { ...callbackMocks, getFieldsFor: undefined } + { + ...callbackMocks, + getFieldsFor: undefined, + getFieldsMetadata: undefined, + } ); const edits = actions.map(({ edits: actionEdits }) => actionEdits[0].text); expect(edits).toEqual(['`any#Char$Field`']); @@ -452,6 +463,7 @@ describe('quick fixes logic', () => { getFieldsFor: undefined, getSources: undefined, getPolicies: undefined, + getFieldsMetadata: undefined, } ); } catch { diff --git a/packages/kbn-esql-validation-autocomplete/src/definitions/builtin.ts b/packages/kbn-esql-validation-autocomplete/src/definitions/builtin.ts index d2ff04e4d9baa..c59daa2130417 100644 --- a/packages/kbn-esql-validation-autocomplete/src/definitions/builtin.ts +++ b/packages/kbn-esql-validation-autocomplete/src/definitions/builtin.ts @@ -641,6 +641,20 @@ const otherDefinitions: FunctionDefinition[] = [ }, ], }, + { + name: 'order-expression', + type: 'builtin', + description: i18n.translate('kbn-esql-validation-autocomplete.esql.definition.infoDoc', { + defaultMessage: 'Specify column sorting modifiers', + }), + supportedCommands: ['sort'], + signatures: [ + { + params: [{ name: 'column', type: 'any' }], + returnType: 'void', + }, + ], + }, ]; export const builtinFunctions: FunctionDefinition[] = [ diff --git a/packages/kbn-esql-validation-autocomplete/src/definitions/commands.ts b/packages/kbn-esql-validation-autocomplete/src/definitions/commands.ts index 349bfcf4a358a..979e718fb4174 100644 --- a/packages/kbn-esql-validation-autocomplete/src/definitions/commands.ts +++ b/packages/kbn-esql-validation-autocomplete/src/definitions/commands.ts @@ -383,11 +383,7 @@ export const commandDefinitions: CommandDefinition[] = [ modes: [], signature: { multipleParams: true, - params: [ - { name: 'expression', type: 'any' }, - { name: 'direction', type: 'string', optional: true, values: ['ASC', 'DESC'] }, - { name: 'nulls', type: 'string', optional: true, values: ['NULLS FIRST', 'NULLS LAST'] }, - ], + params: [{ name: 'expression', type: 'any' }], }, }, { diff --git a/packages/kbn-esql-validation-autocomplete/src/shared/context.ts b/packages/kbn-esql-validation-autocomplete/src/shared/context.ts index 22429e1ff9cb7..0f7f830c1417a 100644 --- a/packages/kbn-esql-validation-autocomplete/src/shared/context.ts +++ b/packages/kbn-esql-validation-autocomplete/src/shared/context.ts @@ -35,7 +35,7 @@ function findNode(nodes: ESQLAstItem[], offset: number): ESQLSingleAstItem | und return ret; } } else { - if (node.location.min <= offset && node.location.max >= offset) { + if (node && node.location && node.location.min <= offset && node.location.max >= offset) { if ('args' in node) { const ret = findNode(node.args, offset); // if the found node is the marker, then return its parent diff --git a/packages/kbn-esql-validation-autocomplete/src/shared/resources_helpers.ts b/packages/kbn-esql-validation-autocomplete/src/shared/resources_helpers.ts index 84648e73cf6cb..a4da3907a4d6b 100644 --- a/packages/kbn-esql-validation-autocomplete/src/shared/resources_helpers.ts +++ b/packages/kbn-esql-validation-autocomplete/src/shared/resources_helpers.ts @@ -10,6 +10,7 @@ import type { ESQLAst } from '@kbn/esql-ast'; import type { ESQLCallbacks } from './types'; import type { ESQLRealField } from '../validation/types'; +import { enrichFieldsWithECSInfo } from '../autocomplete/utils/ecs_metadata_helper'; export function buildQueryUntilPreviousCommand(ast: ESQLAst, queryString: string) { const prevCommand = ast[Math.max(ast.length - 2, 0)]; @@ -18,14 +19,31 @@ export function buildQueryUntilPreviousCommand(ast: ESQLAst, queryString: string export function getFieldsByTypeHelper(queryText: string, resourceRetriever?: ESQLCallbacks) { const cacheFields = new Map(); + + const getEcsMetadata = async () => { + if (!resourceRetriever?.getFieldsMetadata) { + return undefined; + } + const client = await resourceRetriever?.getFieldsMetadata; + if (client.find) { + // Fetch full list of ECS field + // This list should be cached already by fieldsMetadataClient + const results = await client.find({ attributes: ['type'] }); + return results?.fields; + } + }; + const getFields = async () => { + const metadata = await getEcsMetadata(); if (!cacheFields.size && queryText) { const fieldsOfType = await resourceRetriever?.getFieldsFor?.({ query: queryText }); - for (const field of fieldsOfType || []) { + const fieldsWithMetadata = enrichFieldsWithECSInfo(fieldsOfType || [], metadata); + for (const field of fieldsWithMetadata || []) { cacheFields.set(field.name, field); } } }; + return { getFieldsByType: async ( expectedType: string | string[] = 'any', diff --git a/packages/kbn-esql-validation-autocomplete/src/shared/types.ts b/packages/kbn-esql-validation-autocomplete/src/shared/types.ts index d27b84dc4cb27..bc1e1d337e4b3 100644 --- a/packages/kbn-esql-validation-autocomplete/src/shared/types.ts +++ b/packages/kbn-esql-validation-autocomplete/src/shared/types.ts @@ -12,6 +12,22 @@ import type { ESQLRealField } from '../validation/types'; /** @internal **/ type CallbackFn = (ctx?: Options) => Result[] | Promise; +/** + * Partial fields metadata client, used to avoid circular dependency with @kbn/monaco +/** @internal **/ +export interface PartialFieldsMetadataClient { + find: ({ fieldNames, attributes }: { fieldNames?: string[]; attributes: string[] }) => Promise<{ + fields: Record< + string, + { + type: string; + source: string; + description?: string; + } + >; + }>; +} + /** @public **/ export interface ESQLSourceResult { name: string; @@ -29,6 +45,7 @@ export interface ESQLCallbacks { { name: string; sourceIndices: string[]; matchField: string; enrichFields: string[] } >; getPreferences?: () => Promise<{ histogramBarTarget: number }>; + getFieldsMetadata?: Promise; } export type ReasonTypes = 'missingCommand' | 'unsupportedFunction' | 'unknownFunction'; diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/validation.params.test.ts b/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/validation.params.test.ts index f8f68769f0113..bbb2867981425 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/validation.params.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/validation.params.test.ts @@ -24,16 +24,16 @@ test('should allow param inside agg function argument', async () => { test('allow params in WHERE command expressions', async () => { const { validate } = await setup(); - const res1 = await validate('FROM index | WHERE textField >= ?t_start'); + const res1 = await validate('FROM index | WHERE textField >= ?_tstart'); const res2 = await validate(` FROM index - | WHERE textField >= ?t_start + | WHERE textField >= ?_tstart | WHERE textField <= ?0 | WHERE textField == ? `); const res3 = await validate(` FROM index - | WHERE textField >= ?t_start + | WHERE textField >= ?_tstart AND textField <= ?0 AND textField == ? `); diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/types.ts b/packages/kbn-esql-validation-autocomplete/src/validation/types.ts index e81225d5ec7c2..99ce0f8ac5196 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/types.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/types.ts @@ -20,6 +20,7 @@ export interface ESQLVariable { export interface ESQLRealField { name: string; type: FieldType; + isEcs?: boolean; metadata?: { description?: string; }; diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts b/packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts index 8d78851f8c17b..6e009d081c33a 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts @@ -1709,6 +1709,7 @@ describe('validation logic', () => { getPolicies: /Unknown policy/, getFieldsFor: /Unknown column|Argument of|it is unsupported or not indexed/, getPreferences: /Unknown/, + getFieldsMetadata: /Unknown/, }; return excludedCallback.map((callback) => contentByCallback[callback]) || []; } diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts b/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts index 468d5bb6e5233..428a2d1fcd4f5 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts @@ -1097,6 +1097,7 @@ export const ignoreErrorsMap: Record = { getSources: ['unknownIndex'], getPolicies: ['unknownPolicy'], getPreferences: [], + getFieldsMetadata: [], }; /** diff --git a/packages/kbn-esql-validation-autocomplete/tsconfig.json b/packages/kbn-esql-validation-autocomplete/tsconfig.json index 3c87e005c394f..edbd153338a5f 100644 --- a/packages/kbn-esql-validation-autocomplete/tsconfig.json +++ b/packages/kbn-esql-validation-autocomplete/tsconfig.json @@ -14,7 +14,7 @@ "kbn_references": [ "@kbn/i18n", "@kbn/esql-ast", - "@kbn/utility-types", + "@kbn/utility-types" ], "exclude": [ "target/**/*", diff --git a/packages/kbn-expandable-flyout/src/components/container.test.tsx b/packages/kbn-expandable-flyout/src/components/container.test.tsx new file mode 100644 index 0000000000000..fa27d81fa4437 --- /dev/null +++ b/packages/kbn-expandable-flyout/src/components/container.test.tsx @@ -0,0 +1,180 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { render } from '@testing-library/react'; + +import { Panel } from '../types'; +import { + LEFT_SECTION_TEST_ID, + PREVIEW_SECTION_TEST_ID, + SETTINGS_MENU_BUTTON_TEST_ID, + RIGHT_SECTION_TEST_ID, +} from './test_ids'; +import { initialUiState, type State } from '../store/state'; +import { TestProvider } from '../test/provider'; +import { REDUX_ID_FOR_MEMORY_STORAGE } from '../constants'; +import { Container } from './container'; + +const id = REDUX_ID_FOR_MEMORY_STORAGE; +const registeredPanels: Panel[] = [ + { + key: 'key', + component: () =>
{'component'}
, + }, +]; + +describe('Container', () => { + it(`shouldn't render flyout if no panels`, () => { + const state: State = { + panels: { + byId: {}, + }, + ui: initialUiState, + }; + + const result = render( + + + + ); + + expect(result.asFragment()).toMatchInlineSnapshot(``); + }); + + it('should render collapsed flyout (right section)', () => { + const state: State = { + panels: { + byId: { + [id]: { + right: { + id: 'key', + }, + left: undefined, + preview: undefined, + }, + }, + }, + ui: initialUiState, + }; + + const { getByTestId } = render( + + + + ); + + expect(getByTestId(RIGHT_SECTION_TEST_ID)).toBeInTheDocument(); + }); + + it('should render expanded flyout (right and left sections)', () => { + const state: State = { + panels: { + byId: { + [id]: { + right: { + id: 'key', + }, + left: { + id: 'key', + }, + preview: undefined, + }, + }, + }, + ui: initialUiState, + }; + + const { getByTestId } = render( + + + + ); + + expect(getByTestId(LEFT_SECTION_TEST_ID)).toBeInTheDocument(); + }); + + it('should render preview section', () => { + const state: State = { + panels: { + byId: { + [id]: { + right: undefined, + left: undefined, + preview: [ + { + id: 'key', + }, + ], + }, + }, + }, + ui: initialUiState, + }; + + const { getByTestId } = render( + + + + ); + + expect(getByTestId(PREVIEW_SECTION_TEST_ID)).toBeInTheDocument(); + }); + + it('should not render flyout when right has value but does not matches registered panels', () => { + const state: State = { + panels: { + byId: { + [id]: { + right: { + id: 'key1', + }, + left: undefined, + preview: undefined, + }, + }, + }, + ui: initialUiState, + }; + + const { queryByTestId } = render( + + + + ); + + expect(queryByTestId('my-test-flyout')).toBeNull(); + expect(queryByTestId(RIGHT_SECTION_TEST_ID)).toBeNull(); + }); + + it('should render the menu to change display options', () => { + const state: State = { + panels: { + byId: { + [id]: { + right: { + id: 'key', + }, + left: undefined, + preview: undefined, + }, + }, + }, + ui: initialUiState, + }; + + const { getByTestId } = render( + + + + ); + + expect(getByTestId(SETTINGS_MENU_BUTTON_TEST_ID)).toBeInTheDocument(); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/components/container.tsx b/packages/kbn-expandable-flyout/src/components/container.tsx new file mode 100644 index 0000000000000..9d858d08be23c --- /dev/null +++ b/packages/kbn-expandable-flyout/src/components/container.tsx @@ -0,0 +1,241 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React, { memo, useCallback, useMemo } from 'react'; +import { Interpolation, Theme } from '@emotion/react'; +import { EuiFlyoutProps, EuiFlyoutResizable } from '@elastic/eui'; +import { EuiFlyoutResizableProps } from '@elastic/eui/src/components/flyout/flyout_resizable'; +import { changeUserCollapsedWidthAction, changeUserExpandedWidthAction } from '../store/actions'; +import { + selectDefaultWidths, + selectPushVsOverlay, + selectUserFlyoutWidths, + useDispatch, + useSelector, +} from '../store/redux'; +import { RightSection } from './right_section'; +import { useSections } from '../hooks/use_sections'; +import { useExpandableFlyoutState } from '../hooks/use_expandable_flyout_state'; +import { useExpandableFlyoutApi } from '../hooks/use_expandable_flyout_api'; +import type { FlyoutPanelProps, Panel } from '../types'; +import { SettingsMenu } from './settings_menu'; +import { PreviewSection } from './preview_section'; +import { ResizableContainer } from './resizable_container'; + +const COLLAPSED_FLYOUT_MIN_WIDTH = 380; +const EXPANDED_FLYOUT_MIN_WIDTH = 740; + +export interface ContainerProps extends Omit { + /** + * List of all registered panels available for render + */ + registeredPanels: Panel[]; + /** + * Allows for custom styles to be passed to the EuiFlyout component + */ + customStyles?: Interpolation; + /** + * Callback function to let application's code the flyout is closed + */ + onClose?: EuiFlyoutProps['onClose']; + /** + * Set of properties that drive a settings menu + */ + flyoutCustomProps?: { + /** + * Hide the gear icon and settings menu if true + */ + hideSettings?: boolean; + /** + * Control if the option to render in overlay or push mode is enabled or not + */ + pushVsOverlay?: { + /** + * Disables the option + */ + disabled: boolean; + /** + * Tooltip to display + */ + tooltip: string; + }; + /** + * Control if the option to resize the flyout is enabled or not + */ + resize?: { + /** + * Disables the option + */ + disabled: boolean; + /** + * Tooltip to display + */ + tooltip: string; + }; + }; + /** + * Optional data test subject string + */ + 'data-test-subj'?: string; +} + +/** + * Expandable flyout UI React component. + * Displays 3 sections (right, left, preview) depending on the panels in the context. + * + * The behavior expects that the left and preview sections should only be displayed is a right section + * is already rendered. + */ +export const Container: React.FC = memo( + ({ customStyles, registeredPanels, flyoutCustomProps, ...flyoutProps }) => { + const dispatch = useDispatch(); + + const { left, right, preview } = useExpandableFlyoutState(); + const { closeFlyout } = useExpandableFlyoutApi(); + + // for flyout where the push vs overlay option is disable in the UI we fall back to overlay mode + const type = useSelector(selectPushVsOverlay); + const flyoutType = flyoutCustomProps?.pushVsOverlay?.disabled ? 'overlay' : type; + + const flyoutWidths = useSelector(selectUserFlyoutWidths); + const defaultWidths = useSelector(selectDefaultWidths); + + // retrieves the sections to be displayed + const { + leftSection, + rightSection, + previewSection, + mostRecentPreview, + mostRecentPreviewBanner, + } = useSections({ + registeredPanels, + }); + + // calculates what needs to be rendered + const showLeft = useMemo(() => leftSection != null && left != null, [leftSection, left]); + const showRight = useMemo(() => rightSection != null && right != null, [rightSection, right]); + const showPreview = useMemo( + () => previewSection != null && preview != null, + [previewSection, preview] + ); + + const showCollapsed = useMemo(() => !showLeft && showRight, [showLeft, showRight]); + const showExpanded = useMemo(() => showLeft && showRight, [showLeft, showRight]); + + const leftComponent = useMemo( + () => (leftSection ? leftSection.component({ ...(left as FlyoutPanelProps) }) : null), + [leftSection, left] + ); + const rightComponent = useMemo( + () => (rightSection ? rightSection.component({ ...(right as FlyoutPanelProps) }) : null), + [rightSection, right] + ); + + const previewComponent = useMemo( + () => + previewSection + ? previewSection.component({ + ...(mostRecentPreview as FlyoutPanelProps), + }) + : null, + [previewSection, mostRecentPreview] + ); + + // we want to set a minimum flyout width different when in collapsed and expanded mode + const minFlyoutWidth = useMemo( + () => (showExpanded ? EXPANDED_FLYOUT_MIN_WIDTH : COLLAPSED_FLYOUT_MIN_WIDTH), + [showExpanded] + ); + + const flyoutWidth = useMemo(() => { + if (showCollapsed) { + return flyoutWidths.collapsedWidth || defaultWidths.rightWidth; + } + if (showExpanded) { + return flyoutWidths.expandedWidth || defaultWidths.rightWidth + defaultWidths.leftWidth; + } + }, [ + showCollapsed, + showExpanded, + flyoutWidths.collapsedWidth, + flyoutWidths.expandedWidth, + defaultWidths.rightWidth, + defaultWidths.leftWidth, + ]); + + // callback function called when user changes the flyout's width + const onResize = useCallback( + (width: number) => { + if (showExpanded) { + dispatch( + changeUserExpandedWidthAction({ + width, + savedToLocalStorage: true, + }) + ); + } else if (showCollapsed) { + dispatch( + changeUserCollapsedWidthAction({ + width, + savedToLocalStorage: true, + }) + ); + } + }, + [dispatch, showCollapsed, showExpanded] + ); + + // don't need to render if the windowWidth is 0 or if nothing needs to be rendered + if (!showExpanded && !showCollapsed && !showPreview) { + return null; + } + + return ( + // @ts-ignore // TODO figure out why it's throwing a 'Types of property ref are incompatible' error + { + closeFlyout(); + if (flyoutProps.onClose) { + flyoutProps.onClose(e); + } + }} + css={customStyles} + onResize={onResize} + minWidth={minFlyoutWidth} + > + {showCollapsed && } + + {showExpanded && ( + + )} + + {showPreview && ( + + )} + + {!flyoutCustomProps?.hideSettings && } + + ); + } +); + +Container.displayName = 'Container'; diff --git a/packages/kbn-expandable-flyout/src/components/left_section.tsx b/packages/kbn-expandable-flyout/src/components/left_section.tsx index c0bd285e9b162..591062116a971 100644 --- a/packages/kbn-expandable-flyout/src/components/left_section.tsx +++ b/packages/kbn-expandable-flyout/src/components/left_section.tsx @@ -8,7 +8,7 @@ */ import { EuiFlexItem } from '@elastic/eui'; -import React, { memo, useMemo } from 'react'; +import React, { memo } from 'react'; import { LEFT_SECTION_TEST_ID } from './test_ids'; interface LeftSectionProps { @@ -16,27 +16,15 @@ interface LeftSectionProps { * Component to be rendered */ component: React.ReactElement; - /** - * Width used when rendering the panel - */ - width: number; } /** * Left section of the expanded flyout rendering a panel */ -export const LeftSection: React.FC = memo( - ({ component, width }: LeftSectionProps) => { - const style = useMemo( - () => ({ height: '100%', width: `${width}px` }), - [width] - ); - return ( - - {component} - - ); - } -); +export const LeftSection: React.FC = memo(({ component }: LeftSectionProps) => ( + + {component} + +)); LeftSection.displayName = 'LeftSection'; diff --git a/packages/kbn-expandable-flyout/src/components/preview_section.test.tsx b/packages/kbn-expandable-flyout/src/components/preview_section.test.tsx index ba2b8987cc0a8..6476ac91c0031 100644 --- a/packages/kbn-expandable-flyout/src/components/preview_section.test.tsx +++ b/packages/kbn-expandable-flyout/src/components/preview_section.test.tsx @@ -16,7 +16,7 @@ import { PREVIEW_SECTION_TEST_ID, } from './test_ids'; import { TestProvider } from '../test/provider'; -import { State } from '../store/state'; +import { initialUiState, State } from '../store/state'; describe('PreviewSection', () => { const context: State = { @@ -33,15 +33,15 @@ describe('PreviewSection', () => { }, }, }, + ui: initialUiState, }; const component =
{'component'}
; - const left = 500; it('should render back button and close button in header', () => { const { getByTestId } = render( - + ); @@ -59,7 +59,7 @@ describe('PreviewSection', () => { const { getByTestId, getByText } = render( - + ); diff --git a/packages/kbn-expandable-flyout/src/components/preview_section.tsx b/packages/kbn-expandable-flyout/src/components/preview_section.tsx index f461c8c3710bf..d759e5500534b 100644 --- a/packages/kbn-expandable-flyout/src/components/preview_section.tsx +++ b/packages/kbn-expandable-flyout/src/components/preview_section.tsx @@ -17,9 +17,10 @@ import { EuiSplitPanel, transparentize, } from '@elastic/eui'; -import React, { memo } from 'react'; +import React, { memo, useMemo } from 'react'; import { css } from '@emotion/react'; import { has } from 'lodash'; +import { selectDefaultWidths, selectUserSectionWidths, useSelector } from '../store/redux'; import { PREVIEW_SECTION_BACK_BUTTON_TEST_ID, PREVIEW_SECTION_CLOSE_BUTTON_TEST_ID, @@ -66,14 +67,14 @@ interface PreviewSectionProps { * Component to be rendered */ component: React.ReactElement; - /** - * Left position used when rendering the panel - */ - leftPosition: number; /** * Preview banner shown at the top of preview panel */ banner?: PreviewBanner; + /** + * Flag to indicate whether the preview section is expanded, use to calculate the width of the section + */ + showExpanded: boolean; } /** @@ -81,11 +82,20 @@ interface PreviewSectionProps { * Will display a back and close button in the header for the previous and close feature respectively. */ export const PreviewSection: React.FC = memo( - ({ component, leftPosition, banner }: PreviewSectionProps) => { + ({ component, banner, showExpanded }: PreviewSectionProps) => { const { euiTheme } = useEuiTheme(); const { closePreviewPanel, previousPreviewPanel } = useExpandableFlyoutApi(); - const left = leftPosition + 4; + const { rightPercentage } = useSelector(selectUserSectionWidths); + const defaultPercentages = useSelector(selectDefaultWidths); + + // Calculate the width of the preview section based on the following + // - if only the right section is visible, then we use 100% of the width (minus some padding) + // - if both the right and left sections are visible, we use the width of the right section (minus the same padding) + const width = useMemo(() => { + const percentage = rightPercentage ? rightPercentage : defaultPercentages.rightPercentage; + return showExpanded ? `calc(${percentage}% - 8px)` : `calc(100% - 8px)`; + }, [defaultPercentages.rightPercentage, rightPercentage, showExpanded]); const closeButton = ( @@ -122,14 +132,14 @@ export const PreviewSection: React.FC = memo( top: 8px; bottom: 8px; right: 4px; - left: ${left}px; + width: ${width}; z-index: 1000; `} > {'left component'}; +const rightComponent =
{'right component'}
; + +describe('ResizableContainer', () => { + it('should render left and right component as well as resize button', () => { + const state = { + ...initialState, + ui: { + ...initialState.ui, + userSectionWidths: { + leftPercentage: 50, + rightPercentage: 50, + }, + }, + }; + + const { getByTestId } = render( + + + + ); + + expect(getByTestId(RESIZABLE_LEFT_SECTION_TEST_ID)).toBeInTheDocument(); + expect(getByTestId(RESIZABLE_BUTTON_TEST_ID)).toBeInTheDocument(); + expect(getByTestId(RESIZABLE_RIGHT_SECTION_TEST_ID)).toBeInTheDocument(); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/components/resizable_container.tsx b/packages/kbn-expandable-flyout/src/components/resizable_container.tsx new file mode 100644 index 0000000000000..c7da40167a7fd --- /dev/null +++ b/packages/kbn-expandable-flyout/src/components/resizable_container.tsx @@ -0,0 +1,116 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { EuiResizableContainer } from '@elastic/eui'; +import React, { memo, useCallback, useMemo } from 'react'; +import { css } from '@emotion/react'; +import { changeUserSectionWidthsAction } from '../store/actions'; +import { + selectDefaultWidths, + selectUserSectionWidths, + useDispatch, + useSelector, +} from '../store/redux'; +import { + RESIZABLE_BUTTON_TEST_ID, + RESIZABLE_LEFT_SECTION_TEST_ID, + RESIZABLE_RIGHT_SECTION_TEST_ID, +} from './test_ids'; +import { LeftSection } from './left_section'; +import { RightSection } from './right_section'; + +const RIGHT_SECTION_MIN_WIDTH = '380px'; +const LEFT_SECTION_MIN_WIDTH = '380px'; +const LEFT_PANEL_ID = 'left'; +const RIGHT_PANEL_ID = 'right'; + +interface ResizableContainerProps { + /** + * The component to render on the left side of the flyout + */ + leftComponent: React.ReactElement; + /** + * The component to render on the right side of the flyout + */ + rightComponent: React.ReactElement; + /** + * If the preview section is shown we disable the resize button + */ + showPreview: boolean; +} + +/** + * Component that renders the left and right section when the flyout is in expanded mode. + * It allows the resizing of the sections, saving the percentages in local storage. + */ +export const ResizableContainer: React.FC = memo( + ({ leftComponent, rightComponent, showPreview }: ResizableContainerProps) => { + const dispatch = useDispatch(); + + const { leftPercentage, rightPercentage } = useSelector(selectUserSectionWidths); + const defaultPercentages = useSelector(selectDefaultWidths); + + const initialLeftPercentage = useMemo( + () => leftPercentage || defaultPercentages.leftPercentage, + [defaultPercentages.leftPercentage, leftPercentage] + ); + const initialRightPercentage = useMemo( + () => rightPercentage || defaultPercentages.rightPercentage, + [defaultPercentages.rightPercentage, rightPercentage] + ); + + const onWidthChange = useCallback( + (newSizes) => + dispatch( + changeUserSectionWidthsAction({ + ...newSizes, + savedToLocalStorage: true, + }) + ), + [dispatch] + ); + + return ( + + {(EuiResizablePanel, EuiResizableButton) => ( + <> + + + + + + + + + )} + + ); + } +); + +ResizableContainer.displayName = 'ResizableContainer'; diff --git a/packages/kbn-expandable-flyout/src/components/right_section.tsx b/packages/kbn-expandable-flyout/src/components/right_section.tsx index 73931e44ad5fe..ab6598b9f8e3a 100644 --- a/packages/kbn-expandable-flyout/src/components/right_section.tsx +++ b/packages/kbn-expandable-flyout/src/components/right_section.tsx @@ -8,7 +8,7 @@ */ import { EuiFlexItem } from '@elastic/eui'; -import React, { memo, useMemo } from 'react'; +import React, { memo } from 'react'; import { RIGHT_SECTION_TEST_ID } from './test_ids'; interface RightSectionProps { @@ -16,28 +16,17 @@ interface RightSectionProps { * Component to be rendered */ component: React.ReactElement; - /** - * Width used when rendering the panel - */ - width: number; } /** * Right section of the expanded flyout rendering a panel */ export const RightSection: React.FC = memo( - ({ component, width }: RightSectionProps) => { - const style = useMemo( - () => ({ height: '100%', width: `${width}px` }), - [width] - ); - - return ( - - {component} - - ); - } + ({ component }: RightSectionProps) => ( + + {component} + + ) ); RightSection.displayName = 'RightSection'; diff --git a/packages/kbn-expandable-flyout/src/components/settings_menu.test.tsx b/packages/kbn-expandable-flyout/src/components/settings_menu.test.tsx index bfcea23d52649..f9a6991f55b52 100644 --- a/packages/kbn-expandable-flyout/src/components/settings_menu.test.tsx +++ b/packages/kbn-expandable-flyout/src/components/settings_menu.test.tsx @@ -11,84 +11,280 @@ import React from 'react'; import { render } from '@testing-library/react'; import { SettingsMenu } from './settings_menu'; -import { EuiFlyoutProps } from '@elastic/eui'; import { SETTINGS_MENU_BUTTON_TEST_ID, + SETTINGS_MENU_FLYOUT_RESIZE_BUTTON_TEST_ID, + SETTINGS_MENU_FLYOUT_RESIZE_INFORMATION_ICON_TEST_ID, + SETTINGS_MENU_FLYOUT_RESIZE_TITLE_TEST_ID, + SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_OVERLAY_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_TITLE_TEST_ID, } from './test_ids'; +import { TestProvider } from '../test/provider'; +import { localStorageMock } from '../../__mocks__'; +import { + USER_COLLAPSED_WIDTH_LOCAL_STORAGE, + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + USER_EXPANDED_WIDTH_LOCAL_STORAGE, + USER_SECTION_WIDTHS_LOCAL_STORAGE, + PUSH_VS_OVERLAY_LOCAL_STORAGE, +} from '../constants'; +import { initialPanelsState, initialUiState } from '../store/state'; describe('SettingsMenu', () => { - it('should render the flyout type button group', () => { - const flyoutTypeProps = { - type: 'overlay' as EuiFlyoutProps['type'], - onChange: jest.fn(), - disabled: false, - tooltip: '', - }; - - const { getByTestId, queryByTestId } = render( - - ); - - getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); - - expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_TITLE_TEST_ID)).toBeInTheDocument(); - expect( - queryByTestId(SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID) - ).not.toBeInTheDocument(); - expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID)).toBeInTheDocument(); + beforeEach(() => { + Object.defineProperty(window, 'localStorage', { + value: localStorageMock(), + }); }); - it('should select correct the flyout type', () => { - const onChange = jest.fn(); - const flyoutTypeProps = { - type: 'overlay' as EuiFlyoutProps['type'], - onChange, - disabled: false, - tooltip: '', - }; + describe('push vs overlay', () => { + it('should render the flyout type button group', () => { + const flyoutCustomProps = { + hideSettings: false, + pushVsOverlay: { + disabled: false, + tooltip: '', + }, + }; - const { getByTestId } = render(); + const { getByTestId, queryByTestId } = render( + + + + ); - getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); - getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID).click(); + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); - expect(onChange).toHaveBeenCalledWith('push'); - }); + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_TITLE_TEST_ID)).toBeInTheDocument(); + expect( + queryByTestId(SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID) + ).not.toBeInTheDocument(); + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID)).toBeInTheDocument(); + }); + + it('should have the type selected if option is enabled', () => { + const state = { + panels: initialPanelsState, + ui: { + ...initialUiState, + pushVsOverlay: 'push' as const, + }, + }; + const flyoutCustomProps = { + hideSettings: false, + pushVsOverlay: { + disabled: false, + tooltip: '', + }, + }; + + const { getByTestId } = render( + + + + ); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID)).toHaveClass( + 'euiButtonGroupButton-isSelected' + ); + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_OVERLAY_TEST_ID)).not.toHaveClass( + 'euiButtonGroupButton-isSelected' + ); + }); + + it('should select correct the flyout type', () => { + const flyoutCustomProps = { + hideSettings: false, + pushVsOverlay: { + disabled: false, + tooltip: '', + }, + }; + + const { getByTestId } = render( + + + + ); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID).click(); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual( + JSON.stringify({ [PUSH_VS_OVERLAY_LOCAL_STORAGE]: 'push' }) + ); + + getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_OVERLAY_TEST_ID).click(); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual( + JSON.stringify({ [PUSH_VS_OVERLAY_LOCAL_STORAGE]: 'overlay' }) + ); + }); + + it('should render the the flyout type button group disabled', () => { + const flyoutCustomProps = { + hideSettings: false, + pushVsOverlay: { + disabled: true, + tooltip: 'This option is disabled', + }, + }; + + const { getByTestId } = render( + + + + ); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID)).toHaveAttribute( + 'disabled' + ); + + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID)).toBeInTheDocument(); - it('should render the the flyout type button group disabled', () => { - const flyoutTypeProps = { - type: 'overlay' as EuiFlyoutProps['type'], - onChange: jest.fn(), - disabled: true, - tooltip: 'This option is disabled', - }; + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_OVERLAY_TEST_ID)).toHaveClass( + 'euiButtonGroupButton-isSelected' + ); + expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID)).not.toHaveClass( + 'euiButtonGroupButton-isSelected' + ); - const { getByTestId } = render(); + getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID).click(); - getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); - expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID)).toHaveAttribute('disabled'); - expect(getByTestId(SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID)).toBeInTheDocument(); + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should not render the information icon if the tooltip is empty', () => { + const flyoutCustomProps = { + hideSettings: false, + pushVsOverlay: { + disabled: true, + tooltip: '', + }, + }; + + const { getByTestId, queryByTestId } = render( + + + + ); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + + expect( + queryByTestId(SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID) + ).not.toBeInTheDocument(); + }); }); - it('should not render the information icon if the tooltip is empty', () => { - const flyoutTypeProps = { - type: 'overlay' as EuiFlyoutProps['type'], - onChange: jest.fn(), - disabled: true, - tooltip: '', - }; - - const { getByTestId, queryByTestId } = render( - - ); - - getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); - expect( - queryByTestId(SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID) - ).not.toBeInTheDocument(); + describe('resize', () => { + it('should render the flyout resize button', () => { + const flyoutCustomProps = { + hideSettings: false, + resize: { + disabled: false, + tooltip: '', + }, + }; + const { getByTestId, queryByTestId } = render( + + + + ); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + + expect(getByTestId(SETTINGS_MENU_FLYOUT_RESIZE_TITLE_TEST_ID)).toBeInTheDocument(); + expect( + queryByTestId(SETTINGS_MENU_FLYOUT_RESIZE_INFORMATION_ICON_TEST_ID) + ).not.toBeInTheDocument(); + expect(getByTestId(SETTINGS_MENU_FLYOUT_RESIZE_BUTTON_TEST_ID)).toBeInTheDocument(); + }); + + it('should reset correctly when clicked', () => { + const flyoutCustomProps = { + hideSettings: false, + resize: { + disabled: false, + tooltip: '', + }, + }; + + localStorage.setItem( + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + JSON.stringify({ + [USER_COLLAPSED_WIDTH_LOCAL_STORAGE]: '250', + [USER_EXPANDED_WIDTH_LOCAL_STORAGE]: '500', + [USER_SECTION_WIDTHS_LOCAL_STORAGE]: { left: 50, right: 50 }, + }) + ); + + const { getByTestId } = render( + + + + ); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + getByTestId(SETTINGS_MENU_FLYOUT_RESIZE_BUTTON_TEST_ID).click(); + + const expandableFlyout = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + expect(expandableFlyout).not.toBe(null); + + expect(expandableFlyout).not.toHaveProperty(USER_COLLAPSED_WIDTH_LOCAL_STORAGE); + expect(expandableFlyout).not.toHaveProperty(USER_EXPANDED_WIDTH_LOCAL_STORAGE); + expect(expandableFlyout).not.toHaveProperty(USER_SECTION_WIDTHS_LOCAL_STORAGE); + }); + + it('should render the the flyout resize button disabled', () => { + const flyoutCustomProps = { + hideSettings: false, + resize: { + disabled: true, + tooltip: 'This option is disabled', + }, + }; + + const { getByTestId } = render( + + + + ); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + expect(getByTestId(SETTINGS_MENU_FLYOUT_RESIZE_BUTTON_TEST_ID)).toHaveAttribute('disabled'); + expect(getByTestId(SETTINGS_MENU_FLYOUT_RESIZE_INFORMATION_ICON_TEST_ID)).toBeInTheDocument(); + }); + + it('should not render the information icon if the tooltip is empty', () => { + const flyoutCustomProps = { + hideSettings: false, + resize: { + disabled: true, + tooltip: '', + }, + }; + + const { getByTestId, queryByTestId } = render( + + + + ); + + getByTestId(SETTINGS_MENU_BUTTON_TEST_ID).click(); + expect( + queryByTestId(SETTINGS_MENU_FLYOUT_RESIZE_INFORMATION_ICON_TEST_ID) + ).not.toBeInTheDocument(); + }); }); }); diff --git a/packages/kbn-expandable-flyout/src/components/settings_menu.tsx b/packages/kbn-expandable-flyout/src/components/settings_menu.tsx index 8e4b4bc997d9f..e632f8bb0172c 100644 --- a/packages/kbn-expandable-flyout/src/components/settings_menu.tsx +++ b/packages/kbn-expandable-flyout/src/components/settings_menu.tsx @@ -8,6 +8,7 @@ */ import { + EuiButtonEmpty, EuiButtonGroup, EuiButtonIcon, EuiContextMenu, @@ -22,14 +23,19 @@ import { import { css } from '@emotion/css'; import React, { memo, useCallback, useState } from 'react'; import { i18n } from '@kbn/i18n'; +import { changePushVsOverlayAction, resetAllUserChangedWidthsAction } from '../store/actions'; import { SETTINGS_MENU_BUTTON_TEST_ID, + SETTINGS_MENU_FLYOUT_RESIZE_BUTTON_TEST_ID, + SETTINGS_MENU_FLYOUT_RESIZE_INFORMATION_ICON_TEST_ID, + SETTINGS_MENU_FLYOUT_RESIZE_TITLE_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_OVERLAY_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_INFORMATION_ICON_TEST_ID, SETTINGS_MENU_FLYOUT_TYPE_TITLE_TEST_ID, } from './test_ids'; +import { selectPushVsOverlay, useDispatch, useSelector } from '../store/redux'; const SETTINGS_MENU_ICON_BUTTON = i18n.translate('expandableFlyout.settingsMenu.popoverButton', { defaultMessage: 'Open flyout settings menu', @@ -58,38 +64,66 @@ const FLYOUT_TYPE_OVERLAY_TOOLTIP = i18n.translate('expandableFlyout.settingsMen const FLYOUT_TYPE_PUSH_TOOLTIP = i18n.translate('expandableFlyout.settingsMenu.pushTooltip', { defaultMessage: 'Displays the flyout next to the page', }); +const FLYOUT_RESIZE_TITLE = i18n.translate('expandableFlyout.renderMenu.flyoutResizeTitle', { + defaultMessage: 'Flyout size', +}); +const FLYOUT_RESIZE_BUTTON = i18n.translate('expandableFlyout.renderMenu.flyoutResizeButton', { + defaultMessage: 'Reset size', +}); -interface SettingsMenuProps { +export interface FlyoutCustomProps { + /** + * Hide the gear icon and settings menu if true + */ + hideSettings?: boolean; /** - * Current flyout type + * Control if the option to render in overlay or push mode is enabled or not */ - flyoutTypeProps: { + pushVsOverlay?: { /** - * 'push' or 'overlay' + * Disables the option */ - type: EuiFlyoutProps['type']; + disabled: boolean; /** - * Callback to change the flyout type + * Tooltip to display */ - onChange: (type: EuiFlyoutProps['type']) => void; + tooltip: string; + }; + /** + * Control if the option to resize the flyout is enabled or not + */ + resize?: { /** - * Disables the button group for flyout where the option shouldn't be available + * Disables the option */ disabled: boolean; /** - * Allows to show a tooltip to explain why the option is disabled + * Tooltip to display */ tooltip: string; }; } +export interface SettingsMenuProps { + /** + * Custom props to populate the content of the settings meny + */ + flyoutCustomProps?: FlyoutCustomProps; +} + /** * Renders a menu to allow the user to customize the flyout. * Current customization are: * - Flyout type: overlay or push */ export const SettingsMenu: React.FC = memo( - ({ flyoutTypeProps }: SettingsMenuProps) => { + ({ flyoutCustomProps }: SettingsMenuProps) => { + const dispatch = useDispatch(); + + // for flyout where the push vs overlay option is disable in the UI we fall back to overlay mode + const type = useSelector(selectPushVsOverlay); + const flyoutType = flyoutCustomProps?.pushVsOverlay?.disabled ? 'overlay' : type; + const [isPopoverOpen, setPopover] = useState(false); const togglePopover = () => { setPopover(!isPopoverOpen); @@ -97,12 +131,22 @@ export const SettingsMenu: React.FC = memo( const pushVsOverlayOnChange = useCallback( (id: string) => { - flyoutTypeProps.onChange(id as EuiFlyoutProps['type']); + dispatch( + changePushVsOverlayAction({ + type: id as EuiFlyoutProps['type'] as 'overlay' | 'push', + savedToLocalStorage: !flyoutCustomProps?.pushVsOverlay?.disabled, + }) + ); setPopover(false); }, - [flyoutTypeProps] + [dispatch, flyoutCustomProps?.pushVsOverlay?.disabled] ); + const resetSizeOnClick = useCallback(() => { + dispatch(resetAllUserChangedWidthsAction()); + setPopover(false); + }, [dispatch]); + const panels = [ { id: 0, @@ -112,14 +156,11 @@ export const SettingsMenu: React.FC = memo(

{FLYOUT_TYPE_TITLE}{' '} - {flyoutTypeProps.tooltip && ( - + {flyoutCustomProps?.pushVsOverlay?.tooltip && ( + )} @@ -142,11 +183,33 @@ export const SettingsMenu: React.FC = memo( toolTipContent: FLYOUT_TYPE_PUSH_TOOLTIP, }, ]} - idSelected={flyoutTypeProps.type as string} + idSelected={flyoutType} onChange={pushVsOverlayOnChange} - isDisabled={flyoutTypeProps.disabled} + isDisabled={flyoutCustomProps?.pushVsOverlay?.disabled} data-test-subj={SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_TEST_ID} /> + + +

+ {FLYOUT_RESIZE_TITLE}{' '} + {flyoutCustomProps?.resize?.tooltip && ( + + + + )} +

+
+ + + {FLYOUT_RESIZE_BUTTON} + ), }, diff --git a/packages/kbn-expandable-flyout/src/components/test_ids.ts b/packages/kbn-expandable-flyout/src/components/test_ids.ts index 498342f1a227d..22d2e00ed66c7 100644 --- a/packages/kbn-expandable-flyout/src/components/test_ids.ts +++ b/packages/kbn-expandable-flyout/src/components/test_ids.ts @@ -7,6 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ +export const FLYOUT_TEST_ID = 'resizableFlyout'; + export const RIGHT_SECTION_TEST_ID = 'rightSection'; export const LEFT_SECTION_TEST_ID = 'leftSection'; @@ -33,3 +35,16 @@ export const SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_OVERLAY_TEST_ID = export const SETTINGS_MENU_FLYOUT_TYPE_BUTTON_GROUP_PUSH_TEST_ID = 'settingsMenuFlyoutTypeButtonGroupPushOption'; + +export const SETTINGS_MENU_FLYOUT_RESIZE_TITLE_TEST_ID = 'settingsMenuFlyoutSizeTitle'; + +export const SETTINGS_MENU_FLYOUT_RESIZE_INFORMATION_ICON_TEST_ID = + 'settingsMenuFlyoutSizeInformationIcon'; + +export const SETTINGS_MENU_FLYOUT_RESIZE_BUTTON_TEST_ID = 'settingsMenuFlyoutSizeButton'; + +export const RESIZABLE_LEFT_SECTION_TEST_ID = 'resizableLeftSection'; + +export const RESIZABLE_RIGHT_SECTION_TEST_ID = 'resizableRightSection'; + +export const RESIZABLE_BUTTON_TEST_ID = 'resizableButton'; diff --git a/packages/kbn-expandable-flyout/src/constants.ts b/packages/kbn-expandable-flyout/src/constants.ts index 267cdf1f831aa..dfabd845a3f20 100644 --- a/packages/kbn-expandable-flyout/src/constants.ts +++ b/packages/kbn-expandable-flyout/src/constants.ts @@ -11,3 +11,9 @@ * This is a reserved word that we use as an id when no urlKey is provided and we are in memory storage mode */ export const REDUX_ID_FOR_MEMORY_STORAGE = 'memory'; + +export const EXPANDABLE_FLYOUT_LOCAL_STORAGE = 'expandableFlyout.ui'; +export const PUSH_VS_OVERLAY_LOCAL_STORAGE = 'pushVsOverlay'; +export const USER_COLLAPSED_WIDTH_LOCAL_STORAGE = 'collapsedWidth'; +export const USER_EXPANDED_WIDTH_LOCAL_STORAGE = 'expandedWidth'; +export const USER_SECTION_WIDTHS_LOCAL_STORAGE = 'sectionWidths'; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_expandable_flyout_state.ts b/packages/kbn-expandable-flyout/src/hooks/use_expandable_flyout_state.ts index 49cac7d97a895..88a94f66d54ae 100644 --- a/packages/kbn-expandable-flyout/src/hooks/use_expandable_flyout_state.ts +++ b/packages/kbn-expandable-flyout/src/hooks/use_expandable_flyout_state.ts @@ -7,6 +7,7 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ +import { useMemo } from 'react'; import { REDUX_ID_FOR_MEMORY_STORAGE } from '../constants'; import { useExpandableFlyoutContext } from '../context'; import { selectPanelsById, useSelector } from '../store/redux'; @@ -17,6 +18,7 @@ import { selectPanelsById, useSelector } from '../store/redux'; export const useExpandableFlyoutState = () => { const { urlKey } = useExpandableFlyoutContext(); // if no urlKey is provided, we are in memory storage mode and use the reserved word 'memory' - const id = urlKey || REDUX_ID_FOR_MEMORY_STORAGE; + const id = useMemo(() => urlKey || REDUX_ID_FOR_MEMORY_STORAGE, [urlKey]); + return useSelector(selectPanelsById(id)); }; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_flyout_type.test.ts b/packages/kbn-expandable-flyout/src/hooks/use_flyout_type.test.ts deleted file mode 100644 index 5ec65b15077de..0000000000000 --- a/packages/kbn-expandable-flyout/src/hooks/use_flyout_type.test.ts +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { renderHook } from '@testing-library/react-hooks'; -import { useExpandableFlyoutContext } from '../context'; -import { useFlyoutType } from './use_flyout_type'; -import { localStorageMock } from '../../__mocks__'; - -jest.mock('../context'); - -describe('useFlyoutType', () => { - beforeEach(() => { - Object.defineProperty(window, 'localStorage', { - value: localStorageMock(), - }); - }); - - it('should return the value in localStorage if set', () => { - (useExpandableFlyoutContext as jest.Mock).mockReturnValue({ urlKey: 'flyout' }); - - localStorage.setItem('expandableFlyout.pushVsOverlayMode.flyout', 'push'); - - const hookResult = renderHook(() => useFlyoutType()); - - expect(hookResult.result.current.flyoutType).toEqual('push'); - }); - - it('should return overlay if nothing is set in localStorage', () => { - (useExpandableFlyoutContext as jest.Mock).mockReturnValue({ urlKey: 'flyout' }); - - const hookResult = renderHook(() => useFlyoutType()); - - expect(hookResult.result.current.flyoutType).toEqual('overlay'); - }); - - it('should set value in localStorage', () => { - (useExpandableFlyoutContext as jest.Mock).mockReturnValue({ urlKey: 'flyout' }); - - const hookResult = renderHook(() => useFlyoutType()); - - hookResult.result.current.flyoutTypeChange('push'); - expect(localStorage.getItem('expandableFlyout.pushVsOverlayMode.flyout')).toEqual('push'); - }); -}); diff --git a/packages/kbn-expandable-flyout/src/hooks/use_flyout_type.ts b/packages/kbn-expandable-flyout/src/hooks/use_flyout_type.ts deleted file mode 100644 index e3c824f4132e0..0000000000000 --- a/packages/kbn-expandable-flyout/src/hooks/use_flyout_type.ts +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { useCallback, useMemo, useState } from 'react'; -import { EuiFlyoutProps } from '@elastic/eui'; -import { useExpandableFlyoutContext } from '../context'; - -const expandableFlyoutLocalStorageKey = 'expandableFlyout.'; -const pushVsOverlayModeLocalStorageKey = 'pushVsOverlayMode.'; - -export interface UseFlyoutTypeResult { - /** - * The current flyout type - */ - flyoutType: EuiFlyoutProps['type']; - /** - * Callback to change the flyout type - */ - flyoutTypeChange: (flyoutType: EuiFlyoutProps['type']) => void; -} - -/** - * Hook to store and retrieve the flyout type (push vs overlay) from local storage. - * The key is generated based on the current URL key. - */ -export const useFlyoutType = (): UseFlyoutTypeResult => { - const { urlKey } = useExpandableFlyoutContext(); - const pushVsOverlayLocalStorageKey = useMemo( - () => `${expandableFlyoutLocalStorageKey}${pushVsOverlayModeLocalStorageKey}${urlKey}`, - [urlKey] - ); - - const initialFlyoutType: EuiFlyoutProps['type'] = - (localStorage.getItem(pushVsOverlayLocalStorageKey) as EuiFlyoutProps['type']) || 'overlay'; - - const [flyoutType, setFlyoutType] = useState(initialFlyoutType); - - const flyoutTypeChange = useCallback( - (type: EuiFlyoutProps['type']) => { - // we only save to localStorage the value for flyouts that have a urlKey. - // The state of the memory flyout is not persisted. - if (urlKey && type) { - localStorage.setItem(pushVsOverlayLocalStorageKey, type); - } - setFlyoutType(type); - }, - [pushVsOverlayLocalStorageKey, setFlyoutType, urlKey] - ); - - return { - flyoutType, - flyoutTypeChange, - }; -}; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_initialize_from_local_storage.test.ts b/packages/kbn-expandable-flyout/src/hooks/use_initialize_from_local_storage.test.ts new file mode 100644 index 0000000000000..26b3daf8161db --- /dev/null +++ b/packages/kbn-expandable-flyout/src/hooks/use_initialize_from_local_storage.test.ts @@ -0,0 +1,116 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { renderHook } from '@testing-library/react-hooks'; +import { useInitializeFromLocalStorage } from './use_initialize_from_local_storage'; +import { localStorageMock } from '../../__mocks__'; +import { + USER_COLLAPSED_WIDTH_LOCAL_STORAGE, + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + USER_EXPANDED_WIDTH_LOCAL_STORAGE, + USER_SECTION_WIDTHS_LOCAL_STORAGE, + PUSH_VS_OVERLAY_LOCAL_STORAGE, +} from '../constants'; +import { useDispatch } from '../store/redux'; +import { + changeUserCollapsedWidthAction, + changeUserExpandedWidthAction, + changeUserSectionWidthsAction, + changePushVsOverlayAction, +} from '../store/actions'; + +jest.mock('../store/redux'); + +describe('useInitializeFromLocalStorage', () => { + beforeEach(() => { + Object.defineProperty(window, 'localStorage', { + value: localStorageMock(), + }); + }); + + // if this test fails, it's very likely because the data format of the values saved in local storage + // has changed and we might need to run a migration + it('should retrieve values from local storage', () => { + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + localStorage.setItem( + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + JSON.stringify({ + [PUSH_VS_OVERLAY_LOCAL_STORAGE]: 'push', + [USER_COLLAPSED_WIDTH_LOCAL_STORAGE]: 250, + [USER_EXPANDED_WIDTH_LOCAL_STORAGE]: 500, + [USER_SECTION_WIDTHS_LOCAL_STORAGE]: { left: 50, right: 50 }, + }) + ); + + renderHook(() => useInitializeFromLocalStorage()); + + expect(mockUseDispatch).toHaveBeenCalledWith( + changePushVsOverlayAction({ + type: 'push', + savedToLocalStorage: false, + }) + ); + expect(mockUseDispatch).toHaveBeenCalledWith( + changeUserCollapsedWidthAction({ + width: 250, + savedToLocalStorage: false, + }) + ); + expect(mockUseDispatch).toHaveBeenCalledWith( + changeUserExpandedWidthAction({ + width: 500, + savedToLocalStorage: false, + }) + ); + expect(mockUseDispatch).toHaveBeenCalledWith( + changeUserSectionWidthsAction({ + right: 50, + left: 50, + savedToLocalStorage: false, + }) + ); + }); + + it('should not dispatch action if expandable flyout key is not present in local storage', () => { + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + localStorage.setItem( + 'wrong_top_level_key', + JSON.stringify({ + [PUSH_VS_OVERLAY_LOCAL_STORAGE]: 'push', + [USER_COLLAPSED_WIDTH_LOCAL_STORAGE]: 250, + [USER_EXPANDED_WIDTH_LOCAL_STORAGE]: 500, + [USER_SECTION_WIDTHS_LOCAL_STORAGE]: { left: 50, right: 50 }, + }) + ); + + renderHook(() => useInitializeFromLocalStorage()); + + expect(mockUseDispatch).not.toHaveBeenCalled(); + }); + + it('should not dispatch action if expandable flyout key is present in local storage but no has no properties', () => { + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + localStorage.setItem( + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + JSON.stringify({ + wrong_key: 'push', + }) + ); + + renderHook(() => useInitializeFromLocalStorage()); + + expect(mockUseDispatch).not.toHaveBeenCalled(); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/hooks/use_initialize_from_local_storage.ts b/packages/kbn-expandable-flyout/src/hooks/use_initialize_from_local_storage.ts new file mode 100644 index 0000000000000..9c88fe29e75d7 --- /dev/null +++ b/packages/kbn-expandable-flyout/src/hooks/use_initialize_from_local_storage.ts @@ -0,0 +1,78 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { + USER_COLLAPSED_WIDTH_LOCAL_STORAGE, + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + USER_EXPANDED_WIDTH_LOCAL_STORAGE, + USER_SECTION_WIDTHS_LOCAL_STORAGE, + PUSH_VS_OVERLAY_LOCAL_STORAGE, +} from '../constants'; +import { useDispatch } from '../store/redux'; +import { + changeUserCollapsedWidthAction, + changeUserExpandedWidthAction, + changeUserSectionWidthsAction, + changePushVsOverlayAction, +} from '../store/actions'; + +/** + * Hook to initialize all the values in redux state from local storage + * - push vs overlay + * - user's custom collapsed width + * - user's custom expanded width + * - user's custom section percentages + */ +export const useInitializeFromLocalStorage = () => { + const dispatch = useDispatch(); + + const expandableFlyout = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + if (!expandableFlyout) return; + + const pushVsOverlay = JSON.parse(expandableFlyout)[PUSH_VS_OVERLAY_LOCAL_STORAGE]; + if (pushVsOverlay) { + dispatch( + changePushVsOverlayAction({ + type: pushVsOverlay as 'push' | 'overlay', + savedToLocalStorage: false, + }) + ); + } + + const userCollapsedFlyoutWidth = JSON.parse(expandableFlyout)[USER_COLLAPSED_WIDTH_LOCAL_STORAGE]; + if (userCollapsedFlyoutWidth) { + dispatch( + changeUserCollapsedWidthAction({ + width: parseInt(userCollapsedFlyoutWidth, 10), + savedToLocalStorage: false, + }) + ); + } + + const userExpandedFlyoutWidth = JSON.parse(expandableFlyout)[USER_EXPANDED_WIDTH_LOCAL_STORAGE]; + if (userExpandedFlyoutWidth) { + dispatch( + changeUserExpandedWidthAction({ + width: parseInt(userExpandedFlyoutWidth, 10), + savedToLocalStorage: false, + }) + ); + } + + const userSectionWidths = JSON.parse(expandableFlyout)[USER_SECTION_WIDTHS_LOCAL_STORAGE]; + if (userSectionWidths) { + dispatch( + changeUserSectionWidthsAction({ + right: userSectionWidths.right, + left: userSectionWidths.left, + savedToLocalStorage: false, + }) + ); + } +}; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_sections.test.tsx b/packages/kbn-expandable-flyout/src/hooks/use_sections.test.tsx new file mode 100644 index 0000000000000..4526f128affd3 --- /dev/null +++ b/packages/kbn-expandable-flyout/src/hooks/use_sections.test.tsx @@ -0,0 +1,134 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { renderHook } from '@testing-library/react-hooks'; +import type { RenderHookResult } from '@testing-library/react-hooks'; +import type { UseSectionsParams, UseSectionsResult } from './use_sections'; +import { useSections } from './use_sections'; +import { useExpandableFlyoutState } from '../..'; + +jest.mock('../..'); + +describe('useSections', () => { + let hookResult: RenderHookResult; + + it('should return undefined for all values if no registeredPanels', () => { + (useExpandableFlyoutState as jest.Mock).mockReturnValue({ + left: undefined, + right: undefined, + preview: undefined, + }); + + const initialProps: UseSectionsParams = { + registeredPanels: [], + }; + hookResult = renderHook((props: UseSectionsParams) => useSections(props), { + initialProps, + }); + + expect(hookResult.result.current).toEqual({ + leftSection: undefined, + rightSection: undefined, + previewSection: undefined, + mostRecentPreviewBanner: undefined, + mostRecentPreview: undefined, + }); + }); + + it('should return all sections', () => { + (useExpandableFlyoutState as jest.Mock).mockReturnValue({ + left: { id: 'left' }, + right: { id: 'right' }, + preview: [{ id: 'preview' }], + }); + + const initialProps: UseSectionsParams = { + registeredPanels: [ + { + key: 'right', + component: () =>
{'component'}
, + }, + { + key: 'left', + component: () =>
{'component'}
, + }, + { + key: 'preview', + component: () =>
{'component'}
, + }, + ], + }; + hookResult = renderHook((props: UseSectionsParams) => useSections(props), { + initialProps, + }); + + expect(hookResult.result.current.rightSection?.key).toEqual('right'); + expect(hookResult.result.current.rightSection?.component).toBeDefined(); + + expect(hookResult.result.current.leftSection?.key).toEqual('left'); + expect(hookResult.result.current.leftSection?.component).toBeDefined(); + + expect(hookResult.result.current.previewSection?.key).toEqual('preview'); + expect(hookResult.result.current.previewSection?.component).toBeDefined(); + + expect(hookResult.result.current.mostRecentPreviewBanner).toEqual(undefined); + expect(hookResult.result.current.mostRecentPreview).toEqual({ id: 'preview' }); + }); + + it('should return preview banner', () => { + (useExpandableFlyoutState as jest.Mock).mockReturnValue({ + preview: [ + { + id: 'preview', + params: { + banner: { + title: 'title', + backgroundColor: 'primary', + textColor: 'red', + }, + }, + }, + ], + }); + + const initialProps: UseSectionsParams = { + registeredPanels: [ + { + key: 'preview', + component: () =>
{'component'}
, + }, + ], + }; + hookResult = renderHook((props: UseSectionsParams) => useSections(props), { + initialProps, + }); + + expect(hookResult.result.current.mostRecentPreviewBanner).toEqual({ + title: 'title', + backgroundColor: 'primary', + textColor: 'red', + }); + }); + + it('should return most recent preview', () => { + (useExpandableFlyoutState as jest.Mock).mockReturnValue({ + preview: [{ id: 'preview1' }, { id: 'preview2' }, { id: 'preview3' }], + }); + + const initialProps: UseSectionsParams = { + registeredPanels: [], + }; + hookResult = renderHook((props: UseSectionsParams) => useSections(props), { + initialProps, + }); + + expect(hookResult.result.current.mostRecentPreview).toEqual({ id: 'preview3' }); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/hooks/use_sections.ts b/packages/kbn-expandable-flyout/src/hooks/use_sections.ts new file mode 100644 index 0000000000000..5267030790e38 --- /dev/null +++ b/packages/kbn-expandable-flyout/src/hooks/use_sections.ts @@ -0,0 +1,86 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { useMemo } from 'react'; +import { isPreviewBanner, PreviewBanner } from '../components/preview_section'; +import { FlyoutPanelProps, useExpandableFlyoutState } from '../..'; +import { Panel } from '../types'; + +export interface UseSectionsParams { + /** + * List of all registered panels available for render + */ + registeredPanels: Panel[]; +} + +export interface UseSectionsResult { + /** + * The left section to be displayed in the flyout. + */ + leftSection: Panel | undefined; + /** + * The right section to be displayed in the flyout. + */ + rightSection: Panel | undefined; + /** + * The preview section to be displayed in the flyout. + */ + previewSection: Panel | undefined; + /** + * The most recent preview information to be displayed in the preview section. + */ + mostRecentPreview: FlyoutPanelProps | undefined; + /** + * The preview banner to be displayed in preview section. + */ + mostRecentPreviewBanner: PreviewBanner | undefined; +} + +/** + * Hook that retrieves the left, right, and preview sections to be displayed in the flyout. + */ +export const useSections = ({ registeredPanels }: UseSectionsParams): UseSectionsResult => { + const { left, preview, right } = useExpandableFlyoutState(); + + const rightSection = useMemo( + () => registeredPanels.find((panel) => panel.key === right?.id), + [right, registeredPanels] + ); + const leftSection = useMemo( + () => registeredPanels.find((panel) => panel.key === left?.id), + [left, registeredPanels] + ); + // retrieve the last preview panel (most recent) + const mostRecentPreview = useMemo( + () => (preview ? preview[preview.length - 1] : undefined), + [preview] + ); + const previewSection = useMemo( + () => registeredPanels.find((panel) => panel.key === mostRecentPreview?.id), + [mostRecentPreview, registeredPanels] + ); + const mostRecentPreviewBanner = useMemo( + () => + isPreviewBanner(mostRecentPreview?.params?.banner) + ? mostRecentPreview?.params?.banner + : undefined, + [mostRecentPreview?.params?.banner] + ); + + return useMemo( + () => ({ + leftSection, + rightSection, + previewSection, + mostRecentPreviewBanner, + mostRecentPreview, + }), + [leftSection, rightSection, previewSection, mostRecentPreviewBanner, mostRecentPreview] + ); +}; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_sections_sizes.test.ts b/packages/kbn-expandable-flyout/src/hooks/use_sections_sizes.test.ts deleted file mode 100644 index f1e9c4e3bf072..0000000000000 --- a/packages/kbn-expandable-flyout/src/hooks/use_sections_sizes.test.ts +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { renderHook } from '@testing-library/react-hooks'; -import type { RenderHookResult } from '@testing-library/react-hooks'; -import type { UserSectionsSizesParams, UserSectionsSizesResult } from './use_sections_sizes'; -import { useSectionSizes } from './use_sections_sizes'; - -describe('useSectionSizes', () => { - let hookResult: RenderHookResult; - - describe('Right section', () => { - it('should return 0 for right section if it is hidden', () => { - const initialProps = { - windowWidth: 350, - showRight: false, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 0, - leftSectionWidth: 0, - flyoutWidth: '0px', - previewSectionLeft: 0, - }); - }); - - it('should return the window width for right section size for tiny screen', () => { - const initialProps = { - windowWidth: 350, - showRight: true, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 350, - leftSectionWidth: 0, - flyoutWidth: '350px', - previewSectionLeft: 0, - }); - }); - - it('should return 380 for right section size for medium screen', () => { - const initialProps = { - windowWidth: 600, - showRight: true, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 380, - leftSectionWidth: 0, - flyoutWidth: '380px', - previewSectionLeft: 0, - }); - }); - - it('should return 500 for right section size for large screen', () => { - const initialProps = { - windowWidth: 1300, - showRight: true, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current.rightSectionWidth).toBeGreaterThan(420); - expect(hookResult.result.current.rightSectionWidth).toBeLessThan(750); - expect(hookResult.result.current.leftSectionWidth).toEqual(0); - expect(hookResult.result.current.flyoutWidth).toEqual( - `${hookResult.result.current.rightSectionWidth}px` - ); - expect(hookResult.result.current.previewSectionLeft).toEqual(0); - }); - - it('should return 750 for right section size for very large screen', () => { - const initialProps = { - windowWidth: 2500, - showRight: true, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 750, - leftSectionWidth: 0, - flyoutWidth: '750px', - previewSectionLeft: 0, - }); - }); - }); - - describe('Left section', () => { - it('should return 0 for left section if it is hidden', () => { - const initialProps = { - windowWidth: 500, - showRight: true, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 380, - leftSectionWidth: 0, - flyoutWidth: '380px', - previewSectionLeft: 0, - }); - }); - - it('should return the remaining for left section', () => { - const initialProps = { - windowWidth: 500, - showRight: true, - showLeft: true, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 380, - leftSectionWidth: 72, - flyoutWidth: '452px', - previewSectionLeft: 0, - }); - }); - - it('should return 80% of remaining for left section', () => { - const initialProps = { - windowWidth: 2500, - showRight: true, - showLeft: true, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current.rightSectionWidth).toEqual(750); - expect(hookResult.result.current.leftSectionWidth).toEqual((2500 - 750) * 0.8); - expect(hookResult.result.current.flyoutWidth).toEqual( - `${ - hookResult.result.current.rightSectionWidth + hookResult.result.current.leftSectionWidth - }px` - ); - expect(hookResult.result.current.previewSectionLeft).toEqual(0); - }); - - it('should return max out at 1500px for really big screens', () => { - const initialProps = { - windowWidth: 2700, - showRight: true, - showLeft: true, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current.rightSectionWidth).toEqual(750); - expect(hookResult.result.current.leftSectionWidth).toEqual(1500); - expect(hookResult.result.current.flyoutWidth).toEqual( - `${ - hookResult.result.current.rightSectionWidth + hookResult.result.current.leftSectionWidth - }px` - ); - expect(hookResult.result.current.previewSectionLeft).toEqual(0); - }); - }); - - describe('Preview section', () => { - it('should return the 0 for preview section if it is hidden', () => { - const initialProps = { - windowWidth: 600, - showRight: true, - showLeft: false, - showPreview: false, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 380, - leftSectionWidth: 0, - flyoutWidth: '380px', - previewSectionLeft: 0, - }); - }); - - it('should return the 0 for preview section when left section is hidden', () => { - const initialProps = { - windowWidth: 600, - showRight: true, - showLeft: false, - showPreview: true, - }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 380, - leftSectionWidth: 0, - flyoutWidth: '380px', - previewSectionLeft: 0, - }); - }); - - it('should return for preview section when left section is visible', () => { - const initialProps = { windowWidth: 600, showRight: true, showLeft: true, showPreview: true }; - hookResult = renderHook((props: UserSectionsSizesParams) => useSectionSizes(props), { - initialProps, - }); - - expect(hookResult.result.current).toEqual({ - rightSectionWidth: 380, - leftSectionWidth: 172, - flyoutWidth: '552px', - previewSectionLeft: 172, - }); - }); - }); -}); diff --git a/packages/kbn-expandable-flyout/src/hooks/use_sections_sizes.ts b/packages/kbn-expandable-flyout/src/hooks/use_sections_sizes.ts deleted file mode 100644 index b255010b06967..0000000000000 --- a/packages/kbn-expandable-flyout/src/hooks/use_sections_sizes.ts +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -const RIGHT_SECTION_MIN_WIDTH = 380; -const MIN_RESOLUTION_BREAKPOINT = 992; -const RIGHT_SECTION_MAX_WIDTH = 750; -const MAX_RESOLUTION_BREAKPOINT = 1920; - -const LEFT_SECTION_MAX_WIDTH = 1500; - -const FULL_WIDTH_BREAKPOINT = 1600; -const FULL_WIDTH_PADDING = 48; - -export interface UserSectionsSizesParams { - /** - * The width of the browser window - */ - windowWidth: number; - /** - * True if the right section is visible, false otherwise - */ - showRight: boolean; - /** - * True if the left section is visible, false otherwise - */ - showLeft: boolean; - /** - * True if the preview section is visible, false otherwise - */ - showPreview: boolean; -} - -export interface UserSectionsSizesResult { - /** - * Width of the right section in pixels - */ - rightSectionWidth: number; - /** - * Width of the left section in pixels - */ - leftSectionWidth: number; - /** - * Width of the flyout in pixels - */ - flyoutWidth: string; - /** - * Left position of the preview section in pixels - */ - previewSectionLeft: number; -} - -/** - * Hook that calculate the different width for the sections of the flyout and the flyout itself - */ -export const useSectionSizes = ({ - windowWidth, - showRight, - showLeft, - showPreview, -}: UserSectionsSizesParams): UserSectionsSizesResult => { - let rightSectionWidth: number = 0; - if (showRight) { - if (windowWidth < MIN_RESOLUTION_BREAKPOINT) { - // the right section's width will grow from 380px (at 992px resolution) while handling tiny screens by not going smaller than the window width - rightSectionWidth = Math.min(RIGHT_SECTION_MIN_WIDTH, windowWidth); - } else { - const ratioWidth = - (RIGHT_SECTION_MAX_WIDTH - RIGHT_SECTION_MIN_WIDTH) * - ((windowWidth - MIN_RESOLUTION_BREAKPOINT) / - (MAX_RESOLUTION_BREAKPOINT - MIN_RESOLUTION_BREAKPOINT)); - - // the right section's width will grow to 750px (at 1920px resolution) and will never go bigger than 750px in higher resolutions - rightSectionWidth = Math.min(RIGHT_SECTION_MIN_WIDTH + ratioWidth, RIGHT_SECTION_MAX_WIDTH); - } - } - - let leftSectionWidth: number = 0; - if (showLeft) { - // the left section's width will be nearly the remaining space for resolution lower than 1600px - if (windowWidth <= FULL_WIDTH_BREAKPOINT) { - leftSectionWidth = windowWidth - rightSectionWidth - FULL_WIDTH_PADDING; - } else { - // the left section's width will be taking 80% of the remaining space for resolution higher than 1600px, while never going bigger than 1500px - leftSectionWidth = Math.min( - ((windowWidth - rightSectionWidth) * 80) / 100, - LEFT_SECTION_MAX_WIDTH - ); - } - } - - const flyoutWidth: string = - showRight && showLeft ? `${rightSectionWidth + leftSectionWidth}px` : `${rightSectionWidth}px`; - - // preview section's width should only be similar to the right section. - // Though because the preview is rendered with an absolute position in the flyout, we calculate its left position instead of the width - let previewSectionLeft: number = 0; - if (showPreview) { - // the preview section starts where the left section ends - previewSectionLeft = leftSectionWidth; - } - - return { - rightSectionWidth, - leftSectionWidth, - flyoutWidth, - previewSectionLeft, - }; -}; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_window_size.test.ts b/packages/kbn-expandable-flyout/src/hooks/use_window_size.test.ts deleted file mode 100644 index e53268466497d..0000000000000 --- a/packages/kbn-expandable-flyout/src/hooks/use_window_size.test.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { renderHook } from '@testing-library/react-hooks'; -import { useWindowSize } from './use_window_size'; - -describe('useWindowSize', () => { - it('should return the window size', () => { - const hookResult = renderHook(() => useWindowSize()); - expect(hookResult.result.current).toEqual(1024); - }); -}); diff --git a/packages/kbn-expandable-flyout/src/hooks/use_window_size.ts b/packages/kbn-expandable-flyout/src/hooks/use_window_size.ts deleted file mode 100644 index 268e70b8f6d6c..0000000000000 --- a/packages/kbn-expandable-flyout/src/hooks/use_window_size.ts +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { useLayoutEffect, useState } from 'react'; - -/** - * Hook that returns the browser window width - */ -export const useWindowSize = (): number => { - const [width, setWidth] = useState(0); - useLayoutEffect(() => { - function updateSize() { - setWidth(window.innerWidth); - } - window.addEventListener('resize', updateSize); - updateSize(); - return () => window.removeEventListener('resize', updateSize); - }, []); - return width; -}; diff --git a/packages/kbn-expandable-flyout/src/hooks/use_window_width.test.ts b/packages/kbn-expandable-flyout/src/hooks/use_window_width.test.ts new file mode 100644 index 0000000000000..72ab9148743db --- /dev/null +++ b/packages/kbn-expandable-flyout/src/hooks/use_window_width.test.ts @@ -0,0 +1,150 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { renderHook } from '@testing-library/react-hooks'; +import { + FULL_WIDTH_PADDING, + MAX_RESOLUTION_BREAKPOINT, + MIN_RESOLUTION_BREAKPOINT, + RIGHT_SECTION_MAX_WIDTH, + RIGHT_SECTION_MIN_WIDTH, + useWindowWidth, +} from './use_window_width'; +import { useDispatch } from '../store/redux'; +import { setDefaultWidthsAction } from '../store/actions'; + +jest.mock('../store/redux'); + +describe('useWindowWidth', () => { + beforeEach(() => { + jest.resetAllMocks(); + }); + + it('should return the window size and dispatch setDefaultWidthsAction', () => { + global.innerWidth = 1024; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + expect(hookResult.result.current).toEqual(1024); + expect(mockUseDispatch).toHaveBeenCalled(); + }); + + it('should not dispatch action if window.innerWidth is 0', () => { + global.innerWidth = 0; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + expect(hookResult.result.current).toEqual(0); + expect(mockUseDispatch).not.toHaveBeenCalled(); + }); + + it('should handle very small screens', () => { + global.innerWidth = 300; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + expect(hookResult.result.current).toEqual(300); + expect(mockUseDispatch).toHaveBeenCalledWith( + setDefaultWidthsAction({ + left: -48, + right: 300, + preview: 300, + }) + ); + }); + + it('should handle small screens', () => { + global.innerWidth = 500; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + expect(hookResult.result.current).toEqual(500); + expect(mockUseDispatch).toHaveBeenCalledWith( + setDefaultWidthsAction({ + left: 72, + right: 380, + preview: 380, + }) + ); + }); + + it('should handle medium screens', () => { + global.innerWidth = 1300; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + const right = + RIGHT_SECTION_MIN_WIDTH + + (RIGHT_SECTION_MAX_WIDTH - RIGHT_SECTION_MIN_WIDTH) * + ((1300 - MIN_RESOLUTION_BREAKPOINT) / + (MAX_RESOLUTION_BREAKPOINT - MIN_RESOLUTION_BREAKPOINT)); + const left = 1300 - right - FULL_WIDTH_PADDING; + const preview = right; + + expect(hookResult.result.current).toEqual(1300); + expect(mockUseDispatch).toHaveBeenCalledWith( + setDefaultWidthsAction({ + left, + right, + preview, + }) + ); + }); + + it('should handle large screens', () => { + global.innerWidth = 2500; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + expect(hookResult.result.current).toEqual(2500); + expect(mockUseDispatch).toHaveBeenCalledWith( + setDefaultWidthsAction({ + left: 1400, + right: 750, + preview: 750, + }) + ); + }); + + it('should handle very large screens', () => { + global.innerWidth = 3800; + + const mockUseDispatch = jest.fn(); + (useDispatch as jest.Mock).mockImplementation(() => mockUseDispatch); + + const hookResult = renderHook(() => useWindowWidth()); + + expect(hookResult.result.current).toEqual(3800); + expect(mockUseDispatch).toHaveBeenCalledWith( + setDefaultWidthsAction({ + left: 1500, + right: 750, + preview: 750, + }) + ); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/hooks/use_window_width.ts b/packages/kbn-expandable-flyout/src/hooks/use_window_width.ts new file mode 100644 index 0000000000000..3df9eef08a4f8 --- /dev/null +++ b/packages/kbn-expandable-flyout/src/hooks/use_window_width.ts @@ -0,0 +1,84 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { useLayoutEffect, useState } from 'react'; +import { useDispatch } from '../store/redux'; +import { setDefaultWidthsAction } from '../store/actions'; + +export const RIGHT_SECTION_MIN_WIDTH = 380; +export const MIN_RESOLUTION_BREAKPOINT = 992; +export const RIGHT_SECTION_MAX_WIDTH = 750; +export const MAX_RESOLUTION_BREAKPOINT = 1920; + +const LEFT_SECTION_MAX_WIDTH = 1500; + +const FULL_WIDTH_BREAKPOINT = 1600; +export const FULL_WIDTH_PADDING = 48; + +/** + * Hook that returns the browser window width + */ +export const useWindowWidth = (): number => { + const dispatch = useDispatch(); + + const [width, setWidth] = useState(0); + + useLayoutEffect(() => { + function updateSize() { + setWidth(window.innerWidth); + + const windowWidth = window.innerWidth; + if (windowWidth !== 0) { + let rightSectionWidth: number; + if (windowWidth < MIN_RESOLUTION_BREAKPOINT) { + // the right section's width will grow from 380px (at 992px resolution) while handling tiny screens by not going smaller than the window width + rightSectionWidth = Math.min(RIGHT_SECTION_MIN_WIDTH, windowWidth); + } else { + const ratioWidth = + (RIGHT_SECTION_MAX_WIDTH - RIGHT_SECTION_MIN_WIDTH) * + ((windowWidth - MIN_RESOLUTION_BREAKPOINT) / + (MAX_RESOLUTION_BREAKPOINT - MIN_RESOLUTION_BREAKPOINT)); + + // the right section's width will grow to 750px (at 1920px resolution) and will never go bigger than 750px in higher resolutions + rightSectionWidth = Math.min( + RIGHT_SECTION_MIN_WIDTH + ratioWidth, + RIGHT_SECTION_MAX_WIDTH + ); + } + + let leftSectionWidth: number; + // the left section's width will be nearly the remaining space for resolution lower than 1600px + if (windowWidth <= FULL_WIDTH_BREAKPOINT) { + leftSectionWidth = windowWidth - rightSectionWidth - FULL_WIDTH_PADDING; + } else { + // the left section's width will be taking 80% of the remaining space for resolution higher than 1600px, while never going bigger than 1500px + leftSectionWidth = Math.min( + ((windowWidth - rightSectionWidth) * 80) / 100, + LEFT_SECTION_MAX_WIDTH + ); + } + + const previewSectionWidth: number = rightSectionWidth; + + dispatch( + setDefaultWidthsAction({ + right: rightSectionWidth, + left: leftSectionWidth, + preview: previewSectionWidth, + }) + ); + } + } + window.addEventListener('resize', updateSize); + updateSize(); + return () => window.removeEventListener('resize', updateSize); + }, [dispatch]); + + return width; +}; diff --git a/packages/kbn-expandable-flyout/src/index.stories.tsx b/packages/kbn-expandable-flyout/src/index.stories.tsx index a7b1e95e43805..1e8e08d96c073 100644 --- a/packages/kbn-expandable-flyout/src/index.stories.tsx +++ b/packages/kbn-expandable-flyout/src/index.stories.tsx @@ -21,7 +21,7 @@ import { } from '@elastic/eui'; import { ExpandableFlyout } from '.'; import { TestProvider } from './test/provider'; -import { State } from './store/state'; +import { initialUiState, State } from './store/state'; export default { component: ExpandableFlyout, @@ -114,6 +114,7 @@ export const Right: Story = () => { }, }, }, + ui: initialUiState, }; return ( @@ -141,6 +142,7 @@ export const Left: Story = () => { }, }, }, + ui: initialUiState, }; return ( @@ -172,6 +174,7 @@ export const Preview: Story = () => { }, }, }, + ui: initialUiState, }; return ( @@ -206,6 +209,7 @@ export const MultiplePreviews: Story = () => { }, }, }, + ui: initialUiState, }; return ( @@ -218,7 +222,7 @@ export const MultiplePreviews: Story = () => { ); }; -export const CollapsedPushVsOverlay: Story = () => { +export const CollapsedPushMode: Story = () => { const state: State = { panels: { byId: { @@ -231,6 +235,10 @@ export const CollapsedPushVsOverlay: Story = () => { }, }, }, + ui: { + ...initialUiState, + pushVsOverlay: 'push', + }, }; return ( @@ -240,7 +248,7 @@ export const CollapsedPushVsOverlay: Story = () => { ); }; -export const ExpandedPushVsOverlay: Story = () => { +export const ExpandedPushMode: Story = () => { const state: State = { panels: { byId: { @@ -255,6 +263,10 @@ export const ExpandedPushVsOverlay: Story = () => { }, }, }, + ui: { + ...initialUiState, + pushVsOverlay: 'push', + }, }; return ( @@ -279,6 +291,7 @@ export const DisableTypeSelection: Story = () => { }, }, }, + ui: initialUiState, }; return ( @@ -292,3 +305,58 @@ export const DisableTypeSelection: Story = () => { ); }; + +export const ResetWidths: Story = () => { + const state: State = { + panels: { + byId: { + memory: { + right: { + id: 'right', + }, + left: { + id: 'left', + }, + preview: undefined, + }, + }, + }, + ui: initialUiState, + }; + + return ( + + + + ); +}; + +export const DisableResizeWidthSelection: Story = () => { + const state: State = { + panels: { + byId: { + memory: { + right: { + id: 'right', + }, + left: { + id: 'left', + }, + preview: undefined, + }, + }, + }, + ui: initialUiState, + }; + + return ( + + + + ); +}; diff --git a/packages/kbn-expandable-flyout/src/index.test.tsx b/packages/kbn-expandable-flyout/src/index.test.tsx index 14146e2da4541..8ee4ff32a9821 100644 --- a/packages/kbn-expandable-flyout/src/index.test.tsx +++ b/packages/kbn-expandable-flyout/src/index.test.tsx @@ -12,17 +12,13 @@ import { render } from '@testing-library/react'; import { Panel } from './types'; import { ExpandableFlyout } from '.'; -import { - LEFT_SECTION_TEST_ID, - PREVIEW_SECTION_TEST_ID, - SETTINGS_MENU_BUTTON_TEST_ID, - RIGHT_SECTION_TEST_ID, -} from './components/test_ids'; -import { type State } from './store/state'; +import { useWindowWidth } from './hooks/use_window_width'; import { TestProvider } from './test/provider'; import { REDUX_ID_FOR_MEMORY_STORAGE } from './constants'; +import { initialUiState } from './store/state'; + +jest.mock('./hooks/use_window_width'); -const id = REDUX_ID_FOR_MEMORY_STORAGE; const registeredPanels: Panel[] = [ { key: 'key', @@ -31,15 +27,11 @@ const registeredPanels: Panel[] = [ ]; describe('ExpandableFlyout', () => { - it(`shouldn't render flyout if no panels`, () => { - const state: State = { - panels: { - byId: {}, - }, - }; + it(`should not render flyout if window width is 0`, () => { + (useWindowWidth as jest.Mock).mockReturnValue(0); const result = render( - + ); @@ -47,110 +39,13 @@ describe('ExpandableFlyout', () => { expect(result.asFragment()).toMatchInlineSnapshot(``); }); - it('should render right section', () => { - const state = { - panels: { - byId: { - [id]: { - right: { - id: 'key', - }, - left: undefined, - preview: undefined, - }, - }, - }, - }; - - const { getByTestId } = render( - - - - ); - - expect(getByTestId(RIGHT_SECTION_TEST_ID)).toBeInTheDocument(); - }); - - it('should render left section', () => { - const state = { - panels: { - byId: { - [id]: { - right: undefined, - left: { - id: 'key', - }, - preview: undefined, - }, - }, - }, - }; - - const { getByTestId } = render( - - - - ); - - expect(getByTestId(LEFT_SECTION_TEST_ID)).toBeInTheDocument(); - }); - - it('should render preview section', () => { - const state = { - panels: { - byId: { - [id]: { - right: undefined, - left: undefined, - preview: [ - { - id: 'key', - }, - ], - }, - }, - }, - }; - - const { getByTestId } = render( - - - - ); - - expect(getByTestId(PREVIEW_SECTION_TEST_ID)).toBeInTheDocument(); - }); - - it('should not render flyout when right has value but does not matches registered panels', () => { - const state = { - panels: { - byId: { - [id]: { - right: { - id: 'key1', - }, - left: undefined, - preview: undefined, - }, - }, - }, - }; - - const { queryByTestId } = render( - - - - ); - - expect(queryByTestId('my-test-flyout')).toBeNull(); - expect(queryByTestId(RIGHT_SECTION_TEST_ID)).toBeNull(); - }); + it(`should render flyout`, () => { + (useWindowWidth as jest.Mock).mockReturnValue(1000); - it('should render the menu to change display options', () => { const state = { panels: { byId: { - [id]: { + [REDUX_ID_FOR_MEMORY_STORAGE]: { right: { id: 'key', }, @@ -159,14 +54,15 @@ describe('ExpandableFlyout', () => { }, }, }, + ui: initialUiState, }; const { getByTestId } = render( - + ); - expect(getByTestId(SETTINGS_MENU_BUTTON_TEST_ID)).toBeInTheDocument(); + expect(getByTestId('TEST')).toBeInTheDocument(); }); }); diff --git a/packages/kbn-expandable-flyout/src/index.tsx b/packages/kbn-expandable-flyout/src/index.tsx index 32af7128be9c1..25425a75e2ba9 100644 --- a/packages/kbn-expandable-flyout/src/index.tsx +++ b/packages/kbn-expandable-flyout/src/index.tsx @@ -10,22 +10,14 @@ import React, { useMemo } from 'react'; import type { Interpolation, Theme } from '@emotion/react'; import { EuiFlyoutProps } from '@elastic/eui'; -import { EuiFlexGroup, EuiFlyout } from '@elastic/eui'; -import { useFlyoutType } from './hooks/use_flyout_type'; -import { SettingsMenu } from './components/settings_menu'; -import { useSectionSizes } from './hooks/use_sections_sizes'; -import { useWindowSize } from './hooks/use_window_size'; -import { useExpandableFlyoutState } from './hooks/use_expandable_flyout_state'; -import { useExpandableFlyoutApi } from './hooks/use_expandable_flyout_api'; -import { PreviewSection } from './components/preview_section'; -import { RightSection } from './components/right_section'; -import type { FlyoutPanelProps, Panel } from './types'; -import { LeftSection } from './components/left_section'; -import { isPreviewBanner } from './components/preview_section'; - -const flyoutInnerStyles = { height: '100%' }; - -export interface ExpandableFlyoutProps extends Omit { +import { EuiFlyoutResizableProps } from '@elastic/eui/src/components/flyout/flyout_resizable'; +import { Container } from './components/container'; +import { useWindowWidth } from './hooks/use_window_width'; +import { useInitializeFromLocalStorage } from './hooks/use_initialize_from_local_storage'; +import { FlyoutCustomProps } from './components/settings_menu'; +import type { Panel } from './types'; + +export interface ExpandableFlyoutProps extends Omit { /** * List of all registered panels available for render */ @@ -41,19 +33,11 @@ export interface ExpandableFlyoutProps extends Omit { /** * Set of properties that drive a settings menu */ - flyoutCustomProps?: { - /** - * Hide the gear icon and settings menu if true - */ - hideSettings?: boolean; - /** - * Control if the option to render in overlay or push mode is enabled or not - */ - pushVsOverlay?: { - disabled: boolean; - tooltip: string; - }; - }; + flyoutCustomProps?: FlyoutCustomProps; + /** + * Optional data test subject string to be used on the EuiFlyoutResizable component + */ + 'data-test-subj'?: string; } /** @@ -63,111 +47,18 @@ export interface ExpandableFlyoutProps extends Omit { * The behavior expects that the left and preview sections should only be displayed is a right section * is already rendered. */ -export const ExpandableFlyout: React.FC = ({ - customStyles, - registeredPanels, - flyoutCustomProps, - ...flyoutProps -}) => { - const windowWidth = useWindowSize(); - const { flyoutType, flyoutTypeChange } = useFlyoutType(); - const { left, right, preview } = useExpandableFlyoutState(); - const { closeFlyout } = useExpandableFlyoutApi(); - - const leftSection = useMemo( - () => registeredPanels.find((panel) => panel.key === left?.id), - [left, registeredPanels] - ); - - const rightSection = useMemo( - () => registeredPanels.find((panel) => panel.key === right?.id), - [right, registeredPanels] - ); +export const ExpandableFlyout: React.FC = ({ ...props }) => { + const windowWidth = useWindowWidth(); - // retrieve the last preview panel (most recent) - const mostRecentPreview = preview ? preview[preview.length - 1] : undefined; - const previewBanner = isPreviewBanner(mostRecentPreview?.params?.banner) - ? mostRecentPreview?.params?.banner - : undefined; + useInitializeFromLocalStorage(); - const previewSection = useMemo( - () => registeredPanels.find((panel) => panel.key === mostRecentPreview?.id), - [mostRecentPreview, registeredPanels] - ); + const container = useMemo(() => , [props]); - const showRight = rightSection != null && right != null; - const showLeft = leftSection != null && left != null; - const showPreview = previewSection != null && preview != null; - - const { rightSectionWidth, leftSectionWidth, flyoutWidth, previewSectionLeft } = useSectionSizes({ - windowWidth, - showRight, - showLeft, - showPreview, - }); - - const hideFlyout = !(left && leftSection) && !(right && rightSection) && !preview?.length; - - if (hideFlyout) { + if (windowWidth === 0) { return null; } - return ( - { - closeFlyout(); - if (flyoutProps.onClose) { - flyoutProps.onClose(e); - } - }} - css={customStyles} - > - - {showLeft ? ( - - ) : null} - {showRight ? ( - - ) : null} - - - {showPreview ? ( - - ) : null} - - {!flyoutCustomProps?.hideSettings && ( - - )} - - ); + return <>{container}; }; ExpandableFlyout.displayName = 'ExpandableFlyout'; diff --git a/packages/kbn-expandable-flyout/src/provider.test.tsx b/packages/kbn-expandable-flyout/src/provider.test.tsx index 5aa386090aa30..7d7e6f8ab10c0 100644 --- a/packages/kbn-expandable-flyout/src/provider.test.tsx +++ b/packages/kbn-expandable-flyout/src/provider.test.tsx @@ -12,7 +12,7 @@ import { render } from '@testing-library/react'; import { TestProvider } from './test/provider'; import { UrlSynchronizer } from './provider'; import * as actions from './store/actions'; -import { State } from './store/state'; +import { initialUiState, State } from './store/state'; import { of } from 'rxjs'; const mockGet = jest.fn(); @@ -38,6 +38,7 @@ describe('UrlSynchronizer', () => { }, needsSync: true, }, + ui: initialUiState, }; render( @@ -61,6 +62,7 @@ describe('UrlSynchronizer', () => { byId: {}, needsSync: true, }, + ui: initialUiState, }; render( @@ -95,6 +97,7 @@ describe('UrlSynchronizer', () => { }, needsSync: true, }, + ui: initialUiState, }; render( diff --git a/packages/kbn-expandable-flyout/src/store/actions.ts b/packages/kbn-expandable-flyout/src/store/actions.ts index 237a3d0226b05..49e28befa3456 100644 --- a/packages/kbn-expandable-flyout/src/store/actions.ts +++ b/packages/kbn-expandable-flyout/src/store/actions.ts @@ -21,6 +21,17 @@ export enum ActionType { previousPreviewPanel = 'previous_preview_panel', closeFlyout = 'close_flyout', urlChanged = 'urlChanged', + + changePushVsOverlay = 'change_push_overlay', + + setDefaultWidths = 'set_default_widths', + + changeUserCollapsedWidth = 'change_user_collapsed_width', + changeUserExpandedWidth = 'change_user_expanded_width', + + changeUserSectionWidths = 'change_user_section_widths', + + resetAllUserWidths = 'reset_all_user_widths', } export const openPanelsAction = createAction<{ @@ -120,3 +131,69 @@ export const urlChangedAction = createAction<{ */ id: string; }>(ActionType.urlChanged); + +export const changePushVsOverlayAction = createAction<{ + /** + * Type of flyout to render, value and only be 'push' or 'overlay' + */ + type: 'push' | 'overlay'; + /** + * Used in the redux middleware to decide if the value needs to be saved to local storage. + * This is used to avoid saving the value to local storage when the value is changed by code instead of by a user action. + */ + savedToLocalStorage: boolean; +}>(ActionType.changePushVsOverlay); + +export const setDefaultWidthsAction = createAction<{ + /** + * Default width for the right section + */ + right: number; + /** + * Default width for the left section + */ + left: number; + /** + * Default width for the preview section + */ + preview: number; +}>(ActionType.setDefaultWidths); + +export const changeUserCollapsedWidthAction = createAction<{ + /** + * Width of the collapsed flyout + */ + width: number; + /** + * Used in the redux middleware to decide if the value needs to be saved to local storage. + */ + savedToLocalStorage: boolean; +}>(ActionType.changeUserCollapsedWidth); + +export const changeUserExpandedWidthAction = createAction<{ + /** + * Width of the expanded flyout + */ + width: number; + /** + * Used in the redux middleware to decide if the value needs to be saved to local storage. + */ + savedToLocalStorage: boolean; +}>(ActionType.changeUserExpandedWidth); + +export const changeUserSectionWidthsAction = createAction<{ + /** + * Width of the left section + */ + left: number; + /** + * Width of the right section + */ + right: number; + /** + * Used in the redux middleware to decide if the value needs to be saved to local storage. + */ + savedToLocalStorage: boolean; +}>(ActionType.changeUserSectionWidths); + +export const resetAllUserChangedWidthsAction = createAction(ActionType.resetAllUserWidths); diff --git a/packages/kbn-expandable-flyout/src/store/middlewares.test.ts b/packages/kbn-expandable-flyout/src/store/middlewares.test.ts new file mode 100644 index 0000000000000..680a5619b0b64 --- /dev/null +++ b/packages/kbn-expandable-flyout/src/store/middlewares.test.ts @@ -0,0 +1,218 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { localStorageMock } from '../../__mocks__'; +import { + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + PUSH_VS_OVERLAY_LOCAL_STORAGE, + USER_COLLAPSED_WIDTH_LOCAL_STORAGE, + USER_EXPANDED_WIDTH_LOCAL_STORAGE, + USER_SECTION_WIDTHS_LOCAL_STORAGE, +} from '../constants'; +import { + clearAllUserWidthsFromLocalStorageMiddleware, + savePushVsOverlayToLocalStorageMiddleware, + saveUserFlyoutWidthsToLocalStorageMiddleware, + saveUserSectionWidthsToLocalStorageMiddleware, +} from './middlewares'; +import { createAction } from '@reduxjs/toolkit'; +import { + changeUserCollapsedWidthAction, + changeUserExpandedWidthAction, + changeUserSectionWidthsAction, + changePushVsOverlayAction, + resetAllUserChangedWidthsAction, +} from './actions'; + +const noTypeAction = createAction<{ + type: 'no_type'; +}>('no_type_action'); +const randomAction = createAction<{ + type: 'random_type'; +}>('random_action'); + +describe('middlewares', () => { + beforeEach(() => { + Object.defineProperty(window, 'localStorage', { + value: localStorageMock(), + }); + }); + + describe('savePushVsOverlayToLocalStorageMiddleware', () => { + it('should ignore action without type', () => { + savePushVsOverlayToLocalStorageMiddleware()(jest.fn)(noTypeAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should ignore action of types other than changePushVsOverlayAction', () => { + savePushVsOverlayToLocalStorageMiddleware()(jest.fn)(randomAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should save value to local storage if action is of type changePushVsOverlayAction', () => { + savePushVsOverlayToLocalStorageMiddleware()(jest.fn)( + changePushVsOverlayAction({ type: 'push', savedToLocalStorage: true }) + ); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual( + JSON.stringify({ [PUSH_VS_OVERLAY_LOCAL_STORAGE]: 'push' }) + ); + }); + + it('should not save value to local storage if savedToLocalStorage is false', () => { + savePushVsOverlayToLocalStorageMiddleware()(jest.fn)( + changePushVsOverlayAction({ type: 'push', savedToLocalStorage: false }) + ); + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + }); + + describe('saveUserFlyoutWidthsToLocalStorageMiddleware', () => { + it('should ignore action without type', () => { + saveUserFlyoutWidthsToLocalStorageMiddleware()(jest.fn)(noTypeAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should ignore action of other types', () => { + saveUserFlyoutWidthsToLocalStorageMiddleware()(jest.fn)(randomAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should save collapsed value to local storage if action is of type changeUserCollapsedWidthAction', () => { + saveUserFlyoutWidthsToLocalStorageMiddleware()(jest.fn)( + changeUserCollapsedWidthAction({ width: 250, savedToLocalStorage: true }) + ); + + const expandableFlyout = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + expect(expandableFlyout).not.toBe(null); + + if (expandableFlyout) { + expect(JSON.parse(expandableFlyout)[USER_COLLAPSED_WIDTH_LOCAL_STORAGE]).toEqual(250); + } + }); + + it('should save expanded value to local storage if action is of type changeUserExpandedWidthAction', () => { + saveUserFlyoutWidthsToLocalStorageMiddleware()(jest.fn)( + changeUserExpandedWidthAction({ width: 500, savedToLocalStorage: true }) + ); + + const expandableFlyout = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + expect(expandableFlyout).not.toBe(null); + + if (expandableFlyout) { + expect(JSON.parse(expandableFlyout)[USER_EXPANDED_WIDTH_LOCAL_STORAGE]).toEqual(500); + } + }); + + it('should not save collapsed value to local storage if savedToLocalStorage is false', () => { + saveUserFlyoutWidthsToLocalStorageMiddleware()(jest.fn)( + changeUserCollapsedWidthAction({ width: 250, savedToLocalStorage: false }) + ); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should not save expanded value to local storage if savedToLocalStorage is false', () => { + saveUserFlyoutWidthsToLocalStorageMiddleware()(jest.fn)( + changeUserExpandedWidthAction({ width: 500, savedToLocalStorage: false }) + ); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + }); + + describe('saveUserSectionWidthsToLocalStorageMiddleware', () => { + it('should ignore action without type', () => { + saveUserSectionWidthsToLocalStorageMiddleware()(jest.fn)(noTypeAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should ignore action of other types ', () => { + saveUserSectionWidthsToLocalStorageMiddleware()(jest.fn)(randomAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should save section width values to local storage if action is of type changeUserSectionWidthsAction', () => { + saveUserSectionWidthsToLocalStorageMiddleware()(jest.fn)( + changeUserSectionWidthsAction({ + left: 500, + right: 500, + savedToLocalStorage: true, + }) + ); + + const expandableFlyout = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + expect(expandableFlyout).not.toBe(null); + + if (expandableFlyout) { + expect(JSON.parse(expandableFlyout)[USER_SECTION_WIDTHS_LOCAL_STORAGE]).toEqual({ + left: 500, + right: 500, + }); + } + }); + + it('should not save section width values to local storage if savedToLocalStorage is false', () => { + saveUserSectionWidthsToLocalStorageMiddleware()(jest.fn)( + changeUserSectionWidthsAction({ + left: 500, + right: 500, + savedToLocalStorage: false, + }) + ); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + }); + + describe('clearAllUserWidthsFromLocalStorageMiddleware', () => { + it('should ignore action without type', () => { + clearAllUserWidthsFromLocalStorageMiddleware()(jest.fn)(noTypeAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should ignore action of other types ', () => { + clearAllUserWidthsFromLocalStorageMiddleware()(jest.fn)(randomAction); + + expect(localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE)).toEqual(null); + }); + + it('should clear width values from local storage if action is of type resetUserCollapsedWidthAction', () => { + localStorage.setItem( + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + JSON.stringify({ + [PUSH_VS_OVERLAY_LOCAL_STORAGE]: 'push', + [USER_COLLAPSED_WIDTH_LOCAL_STORAGE]: 250, + [USER_EXPANDED_WIDTH_LOCAL_STORAGE]: 500, + [USER_SECTION_WIDTHS_LOCAL_STORAGE]: { left: 50, right: 50 }, + }) + ); + + clearAllUserWidthsFromLocalStorageMiddleware()(jest.fn)(resetAllUserChangedWidthsAction()); + + const expandableFlyout = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + expect(expandableFlyout).not.toBe(null); + + if (expandableFlyout) { + const parsed = JSON.parse(expandableFlyout); + expect(parsed[PUSH_VS_OVERLAY_LOCAL_STORAGE]).toEqual('push'); + expect(expandableFlyout).not.toHaveProperty(USER_COLLAPSED_WIDTH_LOCAL_STORAGE); + expect(expandableFlyout).not.toHaveProperty(USER_EXPANDED_WIDTH_LOCAL_STORAGE); + expect(expandableFlyout).not.toHaveProperty(USER_SECTION_WIDTHS_LOCAL_STORAGE); + } + }); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/store/middlewares.ts b/packages/kbn-expandable-flyout/src/store/middlewares.ts new file mode 100644 index 0000000000000..4fb5354535caf --- /dev/null +++ b/packages/kbn-expandable-flyout/src/store/middlewares.ts @@ -0,0 +1,119 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import type { Action, Dispatch } from '@reduxjs/toolkit'; +import { + changeUserCollapsedWidthAction, + changeUserExpandedWidthAction, + changeUserSectionWidthsAction, + changePushVsOverlayAction, + resetAllUserChangedWidthsAction, +} from './actions'; +import { + USER_COLLAPSED_WIDTH_LOCAL_STORAGE, + EXPANDABLE_FLYOUT_LOCAL_STORAGE, + USER_SECTION_WIDTHS_LOCAL_STORAGE, + PUSH_VS_OVERLAY_LOCAL_STORAGE, + USER_EXPANDED_WIDTH_LOCAL_STORAGE, +} from '../constants'; + +/** + * Middleware to save the push vs overlay state to local storage + */ +export const savePushVsOverlayToLocalStorageMiddleware = + () => (next: Dispatch) => (action: Action) => { + if (!action.type) { + return next(action); + } + + if (changePushVsOverlayAction.match(action) && action.payload.savedToLocalStorage) { + const currentStringValue = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + const currentJsonValue = currentStringValue ? JSON.parse(currentStringValue) : {}; + + currentJsonValue[PUSH_VS_OVERLAY_LOCAL_STORAGE] = action.payload.type; + + localStorage.setItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE, JSON.stringify(currentJsonValue)); + } + + return next(action); + }; + +/** + * Middleware to save the user collapsed and expanded flyout widths to local storage + */ +export const saveUserFlyoutWidthsToLocalStorageMiddleware = + () => (next: Dispatch) => (action: Action) => { + if (!action.type) { + return next(action); + } + + const currentStringValue = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + const currentJsonValue = currentStringValue ? JSON.parse(currentStringValue) : {}; + + if (changeUserCollapsedWidthAction.match(action) && action.payload.savedToLocalStorage) { + currentJsonValue[USER_COLLAPSED_WIDTH_LOCAL_STORAGE] = action.payload.width; + + localStorage.setItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE, JSON.stringify(currentJsonValue)); + } + + if (changeUserExpandedWidthAction.match(action) && action.payload.savedToLocalStorage) { + currentJsonValue[USER_EXPANDED_WIDTH_LOCAL_STORAGE] = action.payload.width; + + localStorage.setItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE, JSON.stringify(currentJsonValue)); + } + + return next(action); + }; + +/** + * Middleware to save the user left and right section widths to local storage + */ +export const saveUserSectionWidthsToLocalStorageMiddleware = + () => (next: Dispatch) => (action: Action) => { + if (!action.type) { + return next(action); + } + + if (changeUserSectionWidthsAction.match(action) && action.payload.savedToLocalStorage) { + const currentStringValue = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + const currentJsonValue = currentStringValue ? JSON.parse(currentStringValue) : {}; + + currentJsonValue[USER_SECTION_WIDTHS_LOCAL_STORAGE] = { + left: action.payload.left, + right: action.payload.right, + }; + + localStorage.setItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE, JSON.stringify(currentJsonValue)); + } + + return next(action); + }; + +/** + * Middleware to save the user left and right section widths to local storage + */ +export const clearAllUserWidthsFromLocalStorageMiddleware = + () => (next: Dispatch) => (action: Action) => { + if (!action.type) { + return next(action); + } + + if (resetAllUserChangedWidthsAction.match(action)) { + const currentStringValue = localStorage.getItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE); + const currentJsonValue = currentStringValue ? JSON.parse(currentStringValue) : {}; + + delete currentJsonValue[USER_COLLAPSED_WIDTH_LOCAL_STORAGE]; + delete currentJsonValue[USER_EXPANDED_WIDTH_LOCAL_STORAGE]; + delete currentJsonValue[USER_SECTION_WIDTHS_LOCAL_STORAGE]; + + localStorage.setItem(EXPANDABLE_FLYOUT_LOCAL_STORAGE, JSON.stringify(currentJsonValue)); + } + + return next(action); + }; diff --git a/packages/kbn-expandable-flyout/src/store/reducers.test.ts b/packages/kbn-expandable-flyout/src/store/reducers.test.ts index aafd72196d0f5..1a887333daca8 100644 --- a/packages/kbn-expandable-flyout/src/store/reducers.test.ts +++ b/packages/kbn-expandable-flyout/src/store/reducers.test.ts @@ -8,9 +8,13 @@ */ import { FlyoutPanelProps } from '../types'; -import { panelsReducer } from './reducers'; -import { initialPanelsState, PanelsState } from './state'; +import { panelsReducer, uiReducer } from './reducers'; +import { initialPanelsState, PanelsState, initialUiState, UiState } from './state'; import { + changePushVsOverlayAction, + changeUserCollapsedWidthAction, + changeUserExpandedWidthAction, + changeUserSectionWidthsAction, closeLeftPanelAction, closePanelsAction, closePreviewPanelAction, @@ -20,6 +24,8 @@ import { openPreviewPanelAction, openRightPanelAction, previousPreviewPanelAction, + resetAllUserChangedWidthsAction, + setDefaultWidthsAction, } from './actions'; const id1 = 'id1'; @@ -781,3 +787,268 @@ describe('panelsReducer', () => { }); }); }); + +describe('uiReducer', () => { + describe('should handle changePushVsOverlayAction action', () => { + it('should set value if id does not exist', () => { + const state: UiState = initialUiState; + const action = changePushVsOverlayAction({ + type: 'push', + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + pushVsOverlay: 'push', + }); + }); + + it('should override value if id already exists', () => { + const state: UiState = { + ...initialUiState, + pushVsOverlay: 'push', + }; + const action = changePushVsOverlayAction({ + type: 'overlay', + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + pushVsOverlay: 'overlay', + }); + }); + }); + + describe('should handle setDefaultWidthsAction action', () => { + it('should set value state is empty', () => { + const state: UiState = initialUiState; + const action = setDefaultWidthsAction({ + right: 200, + left: 600, + preview: 200, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + defaultWidths: { + rightWidth: 200, + leftWidth: 600, + previewWidth: 200, + rightPercentage: 25, + leftPercentage: 75, + previewPercentage: 25, + }, + }); + }); + + it('should override value if state not empty', () => { + const state: UiState = { + ...initialUiState, + defaultWidths: { + rightWidth: 200, + leftWidth: 600, + previewWidth: 200, + rightPercentage: 25, + leftPercentage: 75, + previewPercentage: 25, + }, + }; + const action = setDefaultWidthsAction({ + right: 500, + left: 500, + preview: 500, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + defaultWidths: { + rightWidth: 500, + leftWidth: 500, + previewWidth: 500, + rightPercentage: 50, + leftPercentage: 50, + previewPercentage: 50, + }, + }); + }); + }); + + describe('should handle changeUserCollapsedWidthAction action', () => { + it('should set value state is empty', () => { + const state: UiState = initialUiState; + const action = changeUserCollapsedWidthAction({ + width: 200, + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userFlyoutWidths: { + collapsedWidth: 200, + }, + }); + }); + + it('should override value if state not empty', () => { + const state: UiState = { + ...initialUiState, + userFlyoutWidths: { + collapsedWidth: 200, + expandedWidth: 500, + }, + }; + const action = changeUserCollapsedWidthAction({ + width: 250, + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userFlyoutWidths: { + collapsedWidth: 250, + expandedWidth: 500, + }, + }); + }); + }); + + describe('should handle changeUserExpandedWidthAction action', () => { + it('should set value state is empty', () => { + const state: UiState = initialUiState; + const action = changeUserExpandedWidthAction({ + width: 500, + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userFlyoutWidths: { + expandedWidth: 500, + }, + }); + }); + + it('should override value if state not empty', () => { + const state: UiState = { + ...initialUiState, + userFlyoutWidths: { + collapsedWidth: 200, + expandedWidth: 500, + }, + }; + const action = changeUserExpandedWidthAction({ + width: 1000, + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userFlyoutWidths: { + collapsedWidth: 200, + expandedWidth: 1000, + }, + }); + }); + }); + + describe('should handle changeUserSectionWidthsAction action', () => { + it('should set value state is empty', () => { + const state: UiState = initialUiState; + const action = changeUserSectionWidthsAction({ + right: 50, + left: 50, + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userSectionWidths: { + leftPercentage: 50, + rightPercentage: 50, + }, + }); + }); + + it('should override value if state not empty', () => { + const state: UiState = { + ...initialUiState, + userSectionWidths: { + leftPercentage: 50, + rightPercentage: 50, + }, + }; + const action = changeUserSectionWidthsAction({ + right: 30, + left: 70, + savedToLocalStorage: false, + }); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userSectionWidths: { + leftPercentage: 70, + rightPercentage: 30, + }, + }); + }); + }); + + describe('should handle resetAllUserChangedWidthsAction action', () => { + it('should set value state is empty', () => { + const state: UiState = initialUiState; + const action = resetAllUserChangedWidthsAction(); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userSectionWidths: { + leftPercentage: undefined, + rightPercentage: undefined, + }, + userFlyoutWidths: { + collapsedWidth: undefined, + expandedWidth: undefined, + }, + }); + }); + + it('should override value if state not empty', () => { + const state: UiState = { + ...initialUiState, + userFlyoutWidths: { + collapsedWidth: 200, + expandedWidth: 500, + }, + userSectionWidths: { + leftPercentage: 50, + rightPercentage: 50, + }, + }; + const action = resetAllUserChangedWidthsAction(); + const newState: UiState = uiReducer(state, action); + + expect(newState).toEqual({ + ...state, + userSectionWidths: { + leftPercentage: undefined, + rightPercentage: undefined, + }, + userFlyoutWidths: { + collapsedWidth: undefined, + expandedWidth: undefined, + }, + }); + }); + }); +}); diff --git a/packages/kbn-expandable-flyout/src/store/reducers.ts b/packages/kbn-expandable-flyout/src/store/reducers.ts index 8971fd55f7571..b14aa0b1b703b 100644 --- a/packages/kbn-expandable-flyout/src/store/reducers.ts +++ b/packages/kbn-expandable-flyout/src/store/reducers.ts @@ -20,8 +20,14 @@ import { previousPreviewPanelAction, openPreviewPanelAction, urlChangedAction, + changePushVsOverlayAction, + setDefaultWidthsAction, + changeUserCollapsedWidthAction, + changeUserExpandedWidthAction, + changeUserSectionWidthsAction, + resetAllUserChangedWidthsAction, } from './actions'; -import { initialPanelsState } from './state'; +import { initialPanelsState, initialUiState } from './state'; export const panelsReducer = createReducer(initialPanelsState, (builder) => { builder.addCase(openPanelsAction, (state, { payload: { preview, left, right, id } }) => { @@ -149,3 +155,38 @@ export const panelsReducer = createReducer(initialPanelsState, (builder) => { state.needsSync = false; }); }); + +export const uiReducer = createReducer(initialUiState, (builder) => { + builder.addCase(changePushVsOverlayAction, (state, { payload: { type } }) => { + state.pushVsOverlay = type; + }); + + builder.addCase(setDefaultWidthsAction, (state, { payload: { right, left, preview } }) => { + state.defaultWidths.rightWidth = right; + state.defaultWidths.leftWidth = left; + state.defaultWidths.previewWidth = preview; + state.defaultWidths.rightPercentage = (right / (right + left)) * 100; + state.defaultWidths.leftPercentage = (left / (right + left)) * 100; + state.defaultWidths.previewPercentage = (right / (right + left)) * 100; + }); + + builder.addCase(changeUserCollapsedWidthAction, (state, { payload: { width } }) => { + state.userFlyoutWidths.collapsedWidth = width; + }); + + builder.addCase(changeUserExpandedWidthAction, (state, { payload: { width } }) => { + state.userFlyoutWidths.expandedWidth = width; + }); + + builder.addCase(changeUserSectionWidthsAction, (state, { payload: { right, left } }) => { + state.userSectionWidths.leftPercentage = left; + state.userSectionWidths.rightPercentage = right; + }); + + builder.addCase(resetAllUserChangedWidthsAction, (state) => { + state.userFlyoutWidths.collapsedWidth = undefined; + state.userFlyoutWidths.expandedWidth = undefined; + state.userSectionWidths.leftPercentage = undefined; + state.userSectionWidths.rightPercentage = undefined; + }); +}); diff --git a/packages/kbn-expandable-flyout/src/store/redux.ts b/packages/kbn-expandable-flyout/src/store/redux.ts index 0e81ba74de2de..d68b4a0295769 100644 --- a/packages/kbn-expandable-flyout/src/store/redux.ts +++ b/packages/kbn-expandable-flyout/src/store/redux.ts @@ -11,14 +11,27 @@ import { createContext } from 'react'; import { createDispatchHook, createSelectorHook, ReactReduxContextValue } from 'react-redux'; import { configureStore } from '@reduxjs/toolkit'; import { createSelector } from 'reselect'; -import { panelsReducer } from './reducers'; +import { panelsReducer, uiReducer } from './reducers'; import { initialState, State } from './state'; +import { + savePushVsOverlayToLocalStorageMiddleware, + saveUserSectionWidthsToLocalStorageMiddleware, + saveUserFlyoutWidthsToLocalStorageMiddleware, + clearAllUserWidthsFromLocalStorageMiddleware, +} from './middlewares'; export const store = configureStore({ reducer: { panels: panelsReducer, + ui: uiReducer, }, devTools: process.env.NODE_ENV !== 'production', + middleware: [ + savePushVsOverlayToLocalStorageMiddleware, + saveUserSectionWidthsToLocalStorageMiddleware, + saveUserFlyoutWidthsToLocalStorageMiddleware, + clearAllUserWidthsFromLocalStorageMiddleware, + ], }); export const Context = createContext>({ @@ -35,3 +48,12 @@ const panelsSelector = createSelector(stateSelector, (state) => state.panels); export const selectPanelsById = (id: string) => createSelector(panelsSelector, (state) => state.byId[id] || {}); export const selectNeedsSync = () => createSelector(panelsSelector, (state) => state.needsSync); + +const uiSelector = createSelector(stateSelector, (state) => state.ui); +export const selectPushVsOverlay = createSelector(uiSelector, (state) => state.pushVsOverlay); +export const selectDefaultWidths = createSelector(uiSelector, (state) => state.defaultWidths); +export const selectUserFlyoutWidths = createSelector(uiSelector, (state) => state.userFlyoutWidths); +export const selectUserSectionWidths = createSelector( + uiSelector, + (state) => state.userSectionWidths +); diff --git a/packages/kbn-expandable-flyout/src/store/state.ts b/packages/kbn-expandable-flyout/src/store/state.ts index 12f1b0135460b..e158f61aaccd5 100644 --- a/packages/kbn-expandable-flyout/src/store/state.ts +++ b/packages/kbn-expandable-flyout/src/store/state.ts @@ -44,13 +44,93 @@ export const initialPanelsState: PanelsState = { needsSync: false, }; +export interface DefaultWidthsState { + /** + * Default width for the right section (calculated from the window width) + */ + rightWidth: number; + /** + * Default width for the left section (calculated from the window width) + */ + leftWidth: number; + /** + * Default width for the preview section (calculated from the window width) + */ + previewWidth: number; + /** + * Value of the right width in percentage (of the flyout total width) + */ + rightPercentage: number; + /** + * Value of the left width in percentage (of the flyout total width) + */ + leftPercentage: number; + /** + * Value of the preview width in percentage (of the flyout total width) + */ + previewPercentage: number; +} + +export interface UserFlyoutWidthsState { + /** + * Width of the collapsed flyout + */ + collapsedWidth?: number; + /** + * Width of the expanded flyout + */ + expandedWidth?: number; +} + +export interface UserSectionWidthsState { + /** + * Percentage for the left section + */ + leftPercentage: number | undefined; + /** + * Percentage for the right section + */ + rightPercentage: number | undefined; +} + +export interface UiState { + /** + * Push vs overlay information + */ + pushVsOverlay: 'push' | 'overlay'; + /** + * Default widths for the flyout + */ + defaultWidths: DefaultWidthsState; + /** + * User resized widths for the flyout + */ + userFlyoutWidths: UserFlyoutWidthsState; + /** + * User resized left and right section widths for the flyout + */ + userSectionWidths: UserSectionWidthsState; +} + +export const initialUiState: UiState = { + pushVsOverlay: 'overlay', + defaultWidths: {} as DefaultWidthsState, + userFlyoutWidths: {}, + userSectionWidths: {} as UserSectionWidthsState, +}; + export interface State { /** * All panels related information */ panels: PanelsState; + /** + * All ui related information + */ + ui: UiState; } export const initialState: State = { panels: initialPanelsState, + ui: initialUiState, }; diff --git a/packages/kbn-expandable-flyout/src/test/provider.tsx b/packages/kbn-expandable-flyout/src/test/provider.tsx index b6914099e2e42..81de83720afd7 100644 --- a/packages/kbn-expandable-flyout/src/test/provider.tsx +++ b/packages/kbn-expandable-flyout/src/test/provider.tsx @@ -11,8 +11,13 @@ import { Provider as ReduxProvider } from 'react-redux'; import { configureStore } from '@reduxjs/toolkit'; import React, { FC, PropsWithChildren } from 'react'; import { I18nProvider } from '@kbn/i18n-react'; +import { + savePushVsOverlayToLocalStorageMiddleware, + saveUserSectionWidthsToLocalStorageMiddleware, + saveUserFlyoutWidthsToLocalStorageMiddleware, +} from '../store/middlewares'; import { ExpandableFlyoutContextProvider } from '../context'; -import { panelsReducer } from '../store/reducers'; +import { panelsReducer, uiReducer } from '../store/reducers'; import { Context } from '../store/redux'; import { initialState, State } from '../store/state'; @@ -29,10 +34,15 @@ export const TestProvider: FC> = ({ const store = configureStore({ reducer: { panels: panelsReducer, + ui: uiReducer, }, devTools: false, preloadedState: state, - enhancers: [], + middleware: [ + savePushVsOverlayToLocalStorageMiddleware, + saveUserSectionWidthsToLocalStorageMiddleware, + saveUserFlyoutWidthsToLocalStorageMiddleware, + ], }); return ( diff --git a/packages/kbn-ftr-common-functional-services/index.ts b/packages/kbn-ftr-common-functional-services/index.ts index 506566216c721..769c1ecb66e07 100644 --- a/packages/kbn-ftr-common-functional-services/index.ts +++ b/packages/kbn-ftr-common-functional-services/index.ts @@ -26,7 +26,11 @@ export type Es = ProvidedType; import { SupertestWithoutAuthProvider } from './services/supertest_without_auth'; export type SupertestWithoutAuthProviderType = ProvidedType; -export type { InternalRequestHeader, RoleCredentials } from './services/saml_auth'; +export type { + InternalRequestHeader, + RoleCredentials, + CookieCredentials, +} from './services/saml_auth'; import { SamlAuthProvider } from './services/saml_auth/saml_auth_provider'; export type SamlAuthProviderType = ProvidedType; diff --git a/packages/kbn-ftr-common-functional-services/services/saml_auth/index.ts b/packages/kbn-ftr-common-functional-services/services/saml_auth/index.ts index d8227b797e249..f379a3dc761ed 100644 --- a/packages/kbn-ftr-common-functional-services/services/saml_auth/index.ts +++ b/packages/kbn-ftr-common-functional-services/services/saml_auth/index.ts @@ -8,5 +8,5 @@ */ export { SamlAuthProvider } from './saml_auth_provider'; -export type { RoleCredentials } from './saml_auth_provider'; +export type { RoleCredentials, CookieCredentials } from './saml_auth_provider'; export type { InternalRequestHeader } from './default_request_headers'; diff --git a/packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts b/packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts index 9a8db82609233..67d77583af713 100644 --- a/packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts +++ b/packages/kbn-ftr-common-functional-services/services/saml_auth/saml_auth_provider.ts @@ -18,7 +18,13 @@ import { InternalRequestHeader } from './default_request_headers'; export interface RoleCredentials { apiKey: { id: string; name: string }; apiKeyHeader: { Authorization: string }; - cookieHeader: { Cookie: string }; +} + +export interface CookieCredentials { + Cookie: string; + // supertest.set() expects an object that matches IncomingHttpHeaders type, that needs to accept arbitrary key-value pairs as headers + // We extend the interface with an index signature to resolve this. + [header: string]: string; } export function SamlAuthProvider({ getService }: FtrProviderContext) { @@ -60,7 +66,7 @@ export function SamlAuthProvider({ getService }: FtrProviderContext) { async getInteractiveUserSessionCookieWithRoleScope(role: string) { return sessionManager.getInteractiveUserSessionCookieWithRoleScope(role); }, - async getM2MApiCredentialsWithRoleScope(role: string) { + async getM2MApiCookieCredentialsWithRoleScope(role: string): Promise { return sessionManager.getApiCredentialsForRole(role); }, async getEmail(role: string) { @@ -76,7 +82,7 @@ export function SamlAuthProvider({ getService }: FtrProviderContext) { }, async createM2mApiKeyWithRoleScope(role: string): Promise { // Get admin credentials in order to create the API key - const adminCookieHeader = await this.getM2MApiCredentialsWithRoleScope('admin'); + const adminCookieHeader = await this.getM2MApiCookieCredentialsWithRoleScope('admin'); // Get the role descrtiptor for the role let roleDescriptors = {}; @@ -110,9 +116,12 @@ export function SamlAuthProvider({ getService }: FtrProviderContext) { const apiKeyHeader = { Authorization: 'ApiKey ' + apiKey.encoded }; log.debug(`Created api key for role: [${role}]`); - return { apiKey, apiKeyHeader, cookieHeader: adminCookieHeader }; + return { apiKey, apiKeyHeader }; }, async invalidateM2mApiKeyWithRoleScope(roleCredentials: RoleCredentials) { + // Get admin credentials in order to invalidate the API key + const adminCookieHeader = await this.getM2MApiCookieCredentialsWithRoleScope('admin'); + const requestBody = { apiKeys: [ { @@ -126,7 +135,7 @@ export function SamlAuthProvider({ getService }: FtrProviderContext) { const { status } = await supertestWithoutAuth .post('/internal/security/api_key/invalidate') .set(INTERNAL_REQUEST_HEADERS) - .set(roleCredentials.cookieHeader) + .set(adminCookieHeader) .send(requestBody); expect(status).to.be(200); diff --git a/packages/kbn-ftr-common-functional-services/services/saml_auth/serverless/auth_provider.ts b/packages/kbn-ftr-common-functional-services/services/saml_auth/serverless/auth_provider.ts index 148d14464bd74..35314050f82ca 100644 --- a/packages/kbn-ftr-common-functional-services/services/saml_auth/serverless/auth_provider.ts +++ b/packages/kbn-ftr-common-functional-services/services/saml_auth/serverless/auth_provider.ts @@ -51,7 +51,7 @@ export class ServerlessAuthProvider implements AuthProvider { } getSupportedRoleDescriptors(): Record { - return readRolesDescriptorsFromResource(this.rolesDefinitionPath); + return readRolesDescriptorsFromResource(this.rolesDefinitionPath) as Record; } getDefaultRole(): string { return getDefaultServerlessRole(this.projectType); diff --git a/packages/kbn-ftr-common-functional-services/services/saml_auth/stateful/auth_provider.ts b/packages/kbn-ftr-common-functional-services/services/saml_auth/stateful/auth_provider.ts index 10981afd5fac1..2f9dfc512d872 100644 --- a/packages/kbn-ftr-common-functional-services/services/saml_auth/stateful/auth_provider.ts +++ b/packages/kbn-ftr-common-functional-services/services/saml_auth/stateful/auth_provider.ts @@ -19,7 +19,7 @@ import { export class StatefulAuthProvider implements AuthProvider { private readonly rolesDefinitionPath = resolve(REPO_ROOT, STATEFUL_ROLES_ROOT_PATH, 'roles.yml'); getSupportedRoleDescriptors(): Record { - return readRolesDescriptorsFromResource(this.rolesDefinitionPath); + return readRolesDescriptorsFromResource(this.rolesDefinitionPath) as Record; } getDefaultRole() { return 'editor'; diff --git a/packages/kbn-ftr-common-functional-services/tsconfig.json b/packages/kbn-ftr-common-functional-services/tsconfig.json index 490eed5f7ac0e..2cad85eb14fb2 100644 --- a/packages/kbn-ftr-common-functional-services/tsconfig.json +++ b/packages/kbn-ftr-common-functional-services/tsconfig.json @@ -9,6 +9,7 @@ }, "include": [ "**/*.ts", + "../../typings/**/*" ], "kbn_references": [ "@kbn/core-saved-objects-server", diff --git a/packages/kbn-generate-console-definitions/src/types/specification_types.ts b/packages/kbn-generate-console-definitions/src/types/specification_types.ts index a3816133827bf..fc2f694290801 100644 --- a/packages/kbn-generate-console-definitions/src/types/specification_types.ts +++ b/packages/kbn-generate-console-definitions/src/types/specification_types.ts @@ -92,7 +92,7 @@ export interface DictionaryOf { } /** - * A user defined value. To be used when bubbling a generic parameter up to the top-level interface is + * A user defined value. To be used when bubbling a generic parameter up to the top-level class is * inconvenient or impossible (e.g. for lists of user-defined values of possibly different types). * * Clients will allow providing a serializer/deserializer when reading/writing properties of this type, @@ -139,7 +139,7 @@ export interface Property { codegenName?: string; /** An optional set of aliases for `name` */ aliases?: string[]; - /** If the enclosing interface is a variants container, is this a property of the container and not a variant? */ + /** If the enclosing class is a variants container, is this a property of the container and not a variant? */ containerProperty?: boolean; /** If this property has a quirk that needs special attention, give a short explanation about it */ esQuirk?: string; @@ -181,7 +181,7 @@ export interface BaseType { specLocation: string; } -export type Variants = ExternalTag | InternalTag | Container; +export type Variants = ExternalTag | InternalTag | Container | Untagged; export interface VariantBase { /** @@ -208,6 +208,11 @@ export interface Container extends VariantBase { kind: 'container'; } +export interface Untagged extends VariantBase { + kind: 'untagged'; + untypedVariant: TypeName; +} + /** * Inherits clause (aka extends or implements) for an interface or request */ @@ -216,6 +221,12 @@ export interface Inherits { generics?: ValueOf[]; } +export interface Behavior { + type: TypeName; + generics?: ValueOf[]; + meta?: Record; +} + /** * An interface type */ @@ -232,7 +243,7 @@ export interface Interface extends BaseType { /** * Behaviors directly implemented by this interface */ - behaviors?: Inherits[]; + behaviors?: Behavior[]; /** * Behaviors attached to this interface, coming from the interface itself (see `behaviors`) @@ -271,12 +282,12 @@ export interface Request extends BaseType { // We can also pull path parameter descriptions on body properties they replace /** - * Body type. Most often a list of properties (that can extend those of the inherited interface, see above), except for a + * Body type. Most often a list of properties (that can extend those of the inherited class, see above), except for a * few specific cases that use other types such as bulk (array) or create (generic parameter). Or NoBody for requests * that don't have a body. */ body: Body; - behaviors?: Inherits[]; + behaviors?: Behavior[]; attachedBehaviors?: string[]; } @@ -287,7 +298,7 @@ export interface Response extends BaseType { kind: 'response'; generics?: TypeName[]; body: Body; - behaviors?: Inherits[]; + behaviors?: Behavior[]; attachedBehaviors?: string[]; exceptions?: ResponseException[]; } @@ -335,6 +346,7 @@ export interface EnumMember { description?: string; deprecation?: Deprecation; since?: string; + availability?: Availabilities; } /** @@ -358,8 +370,11 @@ export interface TypeAlias extends BaseType { type: ValueOf; /** generic parameters: either concrete types or open parameters from the enclosing type */ generics?: TypeName[]; - /** Only applicable to `union_of` aliases: identify typed_key unions (external) and variant inventories (internal) */ - variants?: InternalTag | ExternalTag; + /** + * Only applicable to `union_of` aliases: identify typed_key unions (external), variant inventories (internal) + * and untagged variants + */ + variants?: InternalTag | ExternalTag | Untagged; } // ------------------------------------------------------------------------------------------------ @@ -438,6 +453,14 @@ export interface UrlTemplate { } export interface Model { + _info?: { + title: string; + license: { + name: string; + url: string; + }; + }; + types: TypeDefinition[]; endpoints: Endpoint[]; } diff --git a/src/plugins/controls/public/services/core/types.ts b/packages/kbn-investigation-shared/src/rest_specs/event.ts similarity index 66% rename from src/plugins/controls/public/services/core/types.ts rename to packages/kbn-investigation-shared/src/rest_specs/event.ts index 9424a490b3f3d..df2f3941ad332 100644 --- a/src/plugins/controls/public/services/core/types.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/event.ts @@ -7,11 +7,12 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { CoreStart } from '@kbn/core/public'; +import { z } from '@kbn/zod'; +import { eventSchema } from '../schema'; -export interface ControlsCoreService { - analytics: CoreStart['analytics']; - i18n: CoreStart['i18n']; - theme: CoreStart['theme']; - notifications: CoreStart['notifications']; -} +const eventResponseSchema = eventSchema; + +type EventResponse = z.output; + +export { eventResponseSchema }; +export type { EventResponse }; diff --git a/packages/kbn-investigation-shared/src/rest_specs/get_events.ts b/packages/kbn-investigation-shared/src/rest_specs/get_events.ts new file mode 100644 index 0000000000000..064a75fab1562 --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/get_events.ts @@ -0,0 +1,31 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { z } from '@kbn/zod'; +import { eventResponseSchema } from './event'; + +const getEventsParamsSchema = z + .object({ + query: z + .object({ + rangeFrom: z.string(), + rangeTo: z.string(), + filter: z.string(), + }) + .partial(), + }) + .partial(); + +const getEventsResponseSchema = z.array(eventResponseSchema); + +type GetEventsParams = z.infer; +type GetEventsResponse = z.output; + +export { getEventsParamsSchema, getEventsResponseSchema }; +export type { GetEventsParams, GetEventsResponse }; diff --git a/packages/kbn-investigation-shared/src/rest_specs/index.ts b/packages/kbn-investigation-shared/src/rest_specs/index.ts index c00ec5035765e..42bec32041af4 100644 --- a/packages/kbn-investigation-shared/src/rest_specs/index.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/index.ts @@ -25,6 +25,8 @@ export type * from './investigation_note'; export type * from './update'; export type * from './update_item'; export type * from './update_note'; +export type * from './event'; +export type * from './get_events'; export * from './create'; export * from './create_item'; @@ -44,3 +46,5 @@ export * from './investigation_note'; export * from './update'; export * from './update_item'; export * from './update_note'; +export * from './event'; +export * from './get_events'; diff --git a/packages/kbn-investigation-shared/src/schema/event.ts b/packages/kbn-investigation-shared/src/schema/event.ts new file mode 100644 index 0000000000000..c954a0de13fb3 --- /dev/null +++ b/packages/kbn-investigation-shared/src/schema/event.ts @@ -0,0 +1,51 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { z } from '@kbn/zod'; + +const eventTypeSchema = z.union([ + z.literal('annotation'), + z.literal('alert'), + z.literal('error_rate'), + z.literal('latency'), + z.literal('anomaly'), +]); + +const annotationEventSchema = z.object({ + eventType: z.literal('annotation'), + annotationType: z.string().optional(), +}); + +const alertStatusSchema = z.union([ + z.literal('active'), + z.literal('flapping'), + z.literal('recovered'), + z.literal('untracked'), +]); + +const alertEventSchema = z.object({ + eventType: z.literal('alert'), + alertStatus: alertStatusSchema, +}); + +const sourceSchema = z.record(z.string(), z.any()); + +const eventSchema = z.intersection( + z.object({ + id: z.string(), + title: z.string(), + description: z.string(), + timestamp: z.number(), + eventType: eventTypeSchema, + source: sourceSchema.optional(), + }), + z.discriminatedUnion('eventType', [annotationEventSchema, alertEventSchema]) +); + +export { eventSchema }; diff --git a/packages/kbn-investigation-shared/src/schema/index.ts b/packages/kbn-investigation-shared/src/schema/index.ts index 7491ecce76cc2..f65fe9baf1f6f 100644 --- a/packages/kbn-investigation-shared/src/schema/index.ts +++ b/packages/kbn-investigation-shared/src/schema/index.ts @@ -11,5 +11,6 @@ export * from './investigation'; export * from './investigation_item'; export * from './investigation_note'; export * from './origin'; +export * from './event'; export type * from './investigation'; diff --git a/packages/kbn-language-documentation-popover/index.ts b/packages/kbn-language-documentation-popover/index.ts index a417382773a54..c12962fdf22b2 100644 --- a/packages/kbn-language-documentation-popover/index.ts +++ b/packages/kbn-language-documentation-popover/index.ts @@ -6,7 +6,8 @@ * your election, the "Elastic License 2.0", the "GNU Affero General Public * License v3.0 only", or the "Server Side Public License, v 1". */ - -export { LanguageDocumentationPopover } from './src/components/documentation_popover'; -export { LanguageDocumentationPopoverContent } from './src/components/documentation_content'; -export type { LanguageDocumentationSections } from './src/components/documentation_content'; +export { LanguageDocumentationPopover } from './src/components/as_popover'; +export { LanguageDocumentationPopoverContent } from './src/components/as_popover/popover_content'; +export { LanguageDocumentationFlyout } from './src/components/as_flyout'; +export { LanguageDocumentationInline } from './src/components/as_inline'; +export type { LanguageDocumentationSections } from './src/types'; diff --git a/packages/kbn-language-documentation-popover/package.json b/packages/kbn-language-documentation-popover/package.json index a756b25061b64..002c3c4ee51b3 100644 --- a/packages/kbn-language-documentation-popover/package.json +++ b/packages/kbn-language-documentation-popover/package.json @@ -5,5 +5,10 @@ "private": true, "sideEffects": [ "*.scss" - ] -} \ No newline at end of file + ], + "scripts": { + "make:docs": "ts-node --transpileOnly scripts/generate_esql_docs.ts", + "postmake:docs": "yarn run lint:fix", + "lint:fix": "cd ../.. && node ./scripts/eslint --fix ./packages/kbn-language-documentation-popover/src/sections/generated" + } +} diff --git a/packages/kbn-text-based-editor/scripts/generate_esql_docs.ts b/packages/kbn-language-documentation-popover/scripts/generate_esql_docs.ts similarity index 92% rename from packages/kbn-text-based-editor/scripts/generate_esql_docs.ts rename to packages/kbn-language-documentation-popover/scripts/generate_esql_docs.ts index 8a38908e2b211..4fad23e2e25f2 100644 --- a/packages/kbn-text-based-editor/scripts/generate_esql_docs.ts +++ b/packages/kbn-language-documentation-popover/scripts/generate_esql_docs.ts @@ -11,18 +11,18 @@ import * as recast from 'recast'; const n = recast.types.namedTypes; import fs from 'fs'; import path from 'path'; -import { functions } from '../src/inline_documentation/generated/scalar_functions'; +import { functions } from '../src/sections/generated/scalar_functions'; (function () { const pathToElasticsearch = process.argv[2]; const { scalarFunctions, aggregationFunctions } = loadFunctionDocs(pathToElasticsearch); writeFunctionDocs( scalarFunctions, - path.join(__dirname, '../src/inline_documentation/generated/scalar_functions.tsx') + path.join(__dirname, '../src/sections/generated/scalar_functions.tsx') ); writeFunctionDocs( aggregationFunctions, - path.join(__dirname, '../src/inline_documentation/generated/aggregation_functions.tsx') + path.join(__dirname, '../src/sections/generated/aggregation_functions.tsx') ); })(); @@ -86,7 +86,7 @@ function writeFunctionDocs(functionDocs: Map, pathToDocsFile: st // Do not edit manually... automatically generated by scripts/generate_esql_docs.ts { label: i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.${name}', + 'languageDocumentationPopover.documentationESQL.${name}', { defaultMessage: '${name.toUpperCase()}', } @@ -97,7 +97,7 @@ function writeFunctionDocs(functionDocs: Map, pathToDocsFile: st readOnly enableSoftLineBreaks markdownContent={i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.${name}.markdown', + 'languageDocumentationPopover.documentationESQL.${name}.markdown', { defaultMessage: \`${docWithoutLinks.replaceAll('`', '\\`')}\`, description: diff --git a/packages/kbn-language-documentation-popover/setup_tests.ts b/packages/kbn-language-documentation-popover/setup_tests.ts new file mode 100644 index 0000000000000..5ebc6d3dac1ca --- /dev/null +++ b/packages/kbn-language-documentation-popover/setup_tests.ts @@ -0,0 +1,11 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +// eslint-disable-next-line import/no-extraneous-dependencies +import '@testing-library/jest-dom'; diff --git a/packages/kbn-language-documentation-popover/src/__stories__/language_documentation_popover.stories.tsx b/packages/kbn-language-documentation-popover/src/__stories__/language_documentation_popover.stories.tsx index 658f1fe81129c..06ace5c916201 100644 --- a/packages/kbn-language-documentation-popover/src/__stories__/language_documentation_popover.stories.tsx +++ b/packages/kbn-language-documentation-popover/src/__stories__/language_documentation_popover.stories.tsx @@ -9,7 +9,7 @@ import React from 'react'; import { storiesOf } from '@storybook/react'; -import { LanguageDocumentationPopover } from '../components/documentation_popover'; +import { LanguageDocumentationPopover } from '../components/as_popover'; const sections = { groups: [ diff --git a/packages/kbn-language-documentation-popover/src/components/as_flyout/index.test.tsx b/packages/kbn-language-documentation-popover/src/components/as_flyout/index.test.tsx new file mode 100644 index 0000000000000..5dd66386c4188 --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/components/as_flyout/index.test.tsx @@ -0,0 +1,95 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { screen, render, fireEvent, waitFor } from '@testing-library/react'; +import { LanguageDocumentationFlyout } from '.'; + +jest.mock('../../sections', () => { + const module = jest.requireActual('../../sections'); + return { + ...module, + getESQLDocsSections: () => ({ + groups: [ + { + label: 'Section one', + description: 'Section 1 description', + items: [], + }, + { + label: 'Section two', + items: [ + { + label: 'Section two item 1', + description: 'Section two item 1 description', + }, + { + label: 'Section two item 2', + description: 'Section two item 2 description', + }, + ], + }, + { + label: 'Section three', + items: [ + { + label: 'Section three item 1', + description: 'Section three item 1 description', + }, + { + label: 'Section three item 2', + description: 'Section three item 2 description', + }, + ], + }, + ], + initialSection: Here is the initial section, + }), + }; +}); + +describe('###Documentation flyout component', () => { + const renderFlyout = (linkToDocumentation?: string) => { + return render( + + ); + }; + it('has a header element for navigation through the sections', () => { + renderFlyout(); + expect(screen.getByTestId('language-documentation-navigation-search')).toBeInTheDocument(); + expect(screen.getByTestId('language-documentation-navigation-dropdown')).toBeInTheDocument(); + expect(screen.queryByTestId('language-documentation-navigation-link')).not.toBeInTheDocument(); + }); + + it('has a link if linkToDocumentation prop is given', () => { + renderFlyout('meow'); + expect(screen.getByTestId('language-documentation-navigation-link')).toBeInTheDocument(); + }); + + it('contains the two last sections', async () => { + renderFlyout(); + await waitFor(() => { + expect(screen.getByText('Section two')).toBeInTheDocument(); + expect(screen.getByText('Section three')).toBeInTheDocument(); + }); + }); + + it('contains the correct section if user updates the search input', async () => { + renderFlyout(); + const input = screen.getByTestId('language-documentation-navigation-search'); + fireEvent.change(input, { target: { value: 'two' } }); + await waitFor(() => { + expect(screen.getByText('Section two')).toBeInTheDocument(); + }); + }); +}); diff --git a/packages/kbn-language-documentation-popover/src/components/as_flyout/index.tsx b/packages/kbn-language-documentation-popover/src/components/as_flyout/index.tsx new file mode 100644 index 0000000000000..0a617165f7661 --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/components/as_flyout/index.tsx @@ -0,0 +1,117 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ +import React, { useCallback, useEffect, useState, useRef, useMemo } from 'react'; +import { + EuiFlyout, + useEuiTheme, + EuiFlyoutBody, + EuiFlyoutHeader, + EuiTitle, + EuiSpacer, +} from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { getFilteredGroups } from '../../utils/get_filtered_groups'; +import { DocumentationMainContent, DocumentationNavigation } from '../shared'; +import { getESQLDocsSections } from '../../sections'; +import type { LanguageDocumentationSections } from '../../types'; + +interface DocumentationFlyoutProps { + isHelpMenuOpen: boolean; + onHelpMenuVisibilityChange: (status: boolean) => void; + searchInDescription?: boolean; + linkToDocumentation?: string; +} + +function DocumentationFlyout({ + searchInDescription, + linkToDocumentation, + isHelpMenuOpen, + onHelpMenuVisibilityChange, +}: DocumentationFlyoutProps) { + const [documentationSections, setDocumentationSections] = + useState(); + + const { euiTheme } = useEuiTheme(); + const DEFAULT_WIDTH = euiTheme.base * 34; + + const [selectedSection, setSelectedSection] = useState(); + const [searchText, setSearchText] = useState(''); + + const scrollTargets = useRef>({}); + + const onNavigationChange = useCallback((selectedOptions) => { + setSelectedSection(selectedOptions.length ? selectedOptions[0].label : undefined); + if (selectedOptions.length) { + const scrollToElement = scrollTargets.current[selectedOptions[0].label]; + scrollToElement.scrollIntoView(); + } + }, []); + + useEffect(() => { + onHelpMenuVisibilityChange(isHelpMenuOpen ?? false); + }, [isHelpMenuOpen, onHelpMenuVisibilityChange]); + + useEffect(() => { + async function getDocumentation() { + const sections = await getESQLDocsSections(); + setDocumentationSections(sections); + } + if (!documentationSections) { + getDocumentation(); + } + }, [documentationSections]); + + const filteredGroups = useMemo(() => { + return getFilteredGroups(searchText, searchInDescription, documentationSections, 1); + }, [documentationSections, searchText, searchInDescription]); + + return ( + <> + {isHelpMenuOpen && ( + onHelpMenuVisibilityChange(false)} + aria-labelledby="esqlInlineDocumentationFlyout" + type="push" + size={DEFAULT_WIDTH} + paddingSize="m" + > + + +

+ {i18n.translate('languageDocumentationPopover.documentationFlyoutTitle', { + defaultMessage: 'ES|QL quick reference', + })} +

+
+ + +
+ + + +
+ )} + + ); +} + +export const LanguageDocumentationFlyout = React.memo(DocumentationFlyout); diff --git a/packages/kbn-language-documentation-popover/src/components/as_inline/index.test.tsx b/packages/kbn-language-documentation-popover/src/components/as_inline/index.test.tsx new file mode 100644 index 0000000000000..4ba873614f9b2 --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/components/as_inline/index.test.tsx @@ -0,0 +1,97 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { screen, render, fireEvent, waitFor } from '@testing-library/react'; +import { Markdown } from '@kbn/shared-ux-markdown'; +import { LanguageDocumentationInline } from '.'; + +const mockMarkDownDescription = () => ( + +); + +jest.mock('../../sections', () => { + const module = jest.requireActual('../../sections'); + return { + ...module, + getESQLDocsSections: () => ({ + groups: [ + { + label: 'Section one', + description: 'Section 1 description', + items: [], + }, + { + label: 'Section two', + items: [ + { + label: 'Section two item 1', + description: 'Section two item 1 description', + }, + { + label: 'Section two item 2', + description: 'Section two item 2 description', + }, + ], + }, + { + label: 'Section three', + items: [ + { + label: 'Section three item 1', + description: mockMarkDownDescription(), + }, + { + label: 'Section three item 2', + description: 'Section three item 2 description', + }, + ], + }, + ], + initialSection: Here is the initial section, + }), + }; +}); + +describe('###Documentation flyout component', () => { + const renderInlineComponent = (searchInDescription = false) => { + return render(); + }; + it('has a header element for navigation through the sections', () => { + renderInlineComponent(); + expect(screen.getByTestId('language-documentation-navigation-search')).toBeInTheDocument(); + expect(screen.getByTestId('language-documentation-navigation-dropdown')).toBeInTheDocument(); + }); + + it('contains the two last sections', async () => { + renderInlineComponent(); + await waitFor(() => { + expect(screen.getByText('Section two')).toBeInTheDocument(); + expect(screen.getByText('Section three')).toBeInTheDocument(); + }); + }); + + it('contains the correct section if user updates the search input', async () => { + renderInlineComponent(); + const input = screen.getByTestId('language-documentation-navigation-search'); + fireEvent.change(input, { target: { value: 'two' } }); + await waitFor(() => { + expect(screen.getByText('Section two')).toBeInTheDocument(); + }); + }); + + it('contains the correct section if user updates the search input with a text that exist in the description', async () => { + renderInlineComponent(true); + const input = screen.getByTestId('language-documentation-navigation-search'); + fireEvent.change(input, { target: { value: 'blah' } }); + await waitFor(() => { + expect(screen.getByText('Section three')).toBeInTheDocument(); + }); + }); +}); diff --git a/packages/kbn-language-documentation-popover/src/components/as_inline/index.tsx b/packages/kbn-language-documentation-popover/src/components/as_inline/index.tsx new file mode 100644 index 0000000000000..dcc860aa70db2 --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/components/as_inline/index.tsx @@ -0,0 +1,82 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ +import React, { useCallback, useState, useRef, useMemo, useEffect } from 'react'; +import { css } from '@emotion/react'; +import { useEuiTheme, euiScrollBarStyles, EuiSpacer } from '@elastic/eui'; +import { getFilteredGroups } from '../../utils/get_filtered_groups'; +import { DocumentationMainContent, DocumentationNavigation } from '../shared'; +import type { LanguageDocumentationSections } from '../../types'; +import { getESQLDocsSections } from '../../sections'; + +interface DocumentationInlineProps { + searchInDescription?: boolean; +} + +const MAX_HEIGHT = 250; + +function DocumentationInline({ searchInDescription }: DocumentationInlineProps) { + const theme = useEuiTheme(); + const [documentationSections, setDocumentationSections] = + useState(); + const scrollBarStyles = euiScrollBarStyles(theme); + const [selectedSection, setSelectedSection] = useState(); + const [searchText, setSearchText] = useState(''); + + const scrollTargets = useRef>({}); + + useEffect(() => { + async function getDocumentation() { + const sections = await getESQLDocsSections(); + setDocumentationSections(sections); + } + if (!documentationSections) { + getDocumentation(); + } + }, [documentationSections]); + + const filteredGroups = useMemo(() => { + return getFilteredGroups(searchText, searchInDescription, documentationSections, 1); + }, [documentationSections, searchText, searchInDescription]); + + const onNavigationChange = useCallback((selectedOptions) => { + setSelectedSection(selectedOptions.length ? selectedOptions[0].label : undefined); + if (selectedOptions.length) { + const scrollToElement = scrollTargets.current[selectedOptions[0].label]; + scrollToElement.scrollIntoView(); + } + }, []); + + return ( +
+ + + +
+ ); +} + +export const LanguageDocumentationInline = React.memo(DocumentationInline); diff --git a/packages/kbn-language-documentation-popover/src/components/documentation.scss b/packages/kbn-language-documentation-popover/src/components/as_popover/documentation.scss similarity index 100% rename from packages/kbn-language-documentation-popover/src/components/documentation.scss rename to packages/kbn-language-documentation-popover/src/components/as_popover/documentation.scss diff --git a/packages/kbn-language-documentation-popover/src/components/documentation_popover.tsx b/packages/kbn-language-documentation-popover/src/components/as_popover/index.tsx similarity index 95% rename from packages/kbn-language-documentation-popover/src/components/documentation_popover.tsx rename to packages/kbn-language-documentation-popover/src/components/as_popover/index.tsx index 265e3304f7d90..9a1432e938f04 100644 --- a/packages/kbn-language-documentation-popover/src/components/documentation_popover.tsx +++ b/packages/kbn-language-documentation-popover/src/components/as_popover/index.tsx @@ -16,10 +16,8 @@ import { EuiButtonIconProps, EuiOutsideClickDetector, } from '@elastic/eui'; -import { - type LanguageDocumentationSections, - LanguageDocumentationPopoverContent, -} from './documentation_content'; +import { LanguageDocumentationPopoverContent } from './popover_content'; +import type { LanguageDocumentationSections } from '../../types'; interface DocumentationPopoverProps { language: string; diff --git a/packages/kbn-language-documentation-popover/src/components/documentation_content.test.tsx b/packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.test.tsx similarity index 97% rename from packages/kbn-language-documentation-popover/src/components/documentation_content.test.tsx rename to packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.test.tsx index d5acdad75dae4..a7a4bce8c2cd5 100644 --- a/packages/kbn-language-documentation-popover/src/components/documentation_content.test.tsx +++ b/packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.test.tsx @@ -11,7 +11,7 @@ import React from 'react'; import { mountWithIntl, findTestSubject } from '@kbn/test-jest-helpers'; import { act } from 'react-dom/test-utils'; import { Markdown } from '@kbn/shared-ux-markdown'; -import { LanguageDocumentationPopoverContent } from './documentation_content'; +import { LanguageDocumentationPopoverContent } from './popover_content'; describe('###Documentation popover content', () => { const sections = { diff --git a/packages/kbn-language-documentation-popover/src/components/documentation_content.tsx b/packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.tsx similarity index 84% rename from packages/kbn-language-documentation-popover/src/components/documentation_content.tsx rename to packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.tsx index d3fedfee9f1eb..ec622eccf6044 100644 --- a/packages/kbn-language-documentation-popover/src/components/documentation_content.tsx +++ b/packages/kbn-language-documentation-popover/src/components/as_popover/popover_content.tsx @@ -6,8 +6,7 @@ * your election, the "Elastic License 2.0", the "GNU Affero General Public * License v3.0 only", or the "Server Side Public License, v 1". */ - -import React, { useEffect, useRef, useState } from 'react'; +import React, { useEffect, useRef, useState, useMemo } from 'react'; import { i18n } from '@kbn/i18n'; import { EuiFlexGroup, @@ -22,19 +21,11 @@ import { EuiSpacer, EuiLink, } from '@elastic/eui'; -import { elementToString } from '../utils/element_to_string'; +import { getFilteredGroups } from '../../utils/get_filtered_groups'; +import type { LanguageDocumentationSections } from '../../types'; import './documentation.scss'; -export interface LanguageDocumentationSections { - groups: Array<{ - label: string; - description?: string; - items: Array<{ label: string; description?: JSX.Element }>; - }>; - initialSection: JSX.Element; -} - interface DocumentationProps { language: string; sections?: LanguageDocumentationSections; @@ -61,29 +52,9 @@ function DocumentationContent({ const [searchText, setSearchText] = useState(''); - const normalizedSearchText = searchText.trim().toLocaleLowerCase(); - - const filteredGroups = sections?.groups - .map((group) => { - const items = group.items.filter((helpItem) => { - return ( - !normalizedSearchText || - helpItem.label.toLocaleLowerCase().includes(normalizedSearchText) || - // Converting the JSX element to a string first - (searchInDescription && - elementToString(helpItem.description) - ?.toLocaleLowerCase() - .includes(normalizedSearchText)) - ); - }); - return { ...group, items }; - }) - .filter((group) => { - if (group.items.length > 0 || !normalizedSearchText) { - return true; - } - return group.label.toLocaleLowerCase().includes(normalizedSearchText); - }); + const filteredGroups = useMemo(() => { + return getFilteredGroups(searchText, searchInDescription, sections); + }, [sections, searchText, searchInDescription]); return ( <> @@ -158,12 +129,12 @@ function DocumentationContent({

- {helpGroup.items.length ? ( + {helpGroup.options.length ? ( <> - {helpGroup.items.map((helpItem) => { + {helpGroup.options.map((helpItem) => { return ( ; + filteredGroups?: Array<{ + label: string; + description?: string; + options: Array<{ label: string; description?: JSX.Element | undefined }>; + }>; + sections?: LanguageDocumentationSections; +} + +function DocumentationContent({ + searchText, + scrollTargets, + filteredGroups, + sections, +}: DocumentationContentProps) { + return ( + <> + + + {!searchText && ( +
{ + if (el && sections?.groups?.length) { + scrollTargets.current[sections.groups[0].label] = el; + } + }} + > + {sections?.initialSection} +
+ )} + {filteredGroups?.map((helpGroup, index) => { + return ( +
{ + if (el) { + scrollTargets.current[helpGroup.label] = el; + } + }} + > +

{helpGroup.label}

+ +

{helpGroup.description}

+ + {filteredGroups?.[index].options.map((helpItem) => { + return ( +
{ + if (el) { + scrollTargets.current[helpItem.label] = el; + } + }} + > + {helpItem.description} +
+ ); + })} +
+ ); + })} +
+
+ + ); +} + +export const DocumentationMainContent = React.memo(DocumentationContent); diff --git a/packages/kbn-language-documentation-popover/src/components/shared/documentation_navigation.tsx b/packages/kbn-language-documentation-popover/src/components/shared/documentation_navigation.tsx new file mode 100644 index 0000000000000..c8202d0ea448f --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/components/shared/documentation_navigation.tsx @@ -0,0 +1,109 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ +import React from 'react'; +import { css } from '@emotion/react'; +import { + EuiFlexItem, + EuiFlexGroup, + EuiFormRow, + EuiLink, + EuiText, + useEuiTheme, + EuiFieldSearch, + EuiComboBox, +} from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; + +interface DocumentationNavProps { + searchText: string; + setSearchText: (text: string) => void; + onNavigationChange: (selectedOptions: Array<{ label: string }>) => void; + filteredGroups?: Array<{ label: string }>; + linkToDocumentation?: string; + selectedSection?: string; +} + +function DocumentationNav({ + searchText, + setSearchText, + onNavigationChange, + filteredGroups, + linkToDocumentation, + selectedSection, +}: DocumentationNavProps) { + const { euiTheme } = useEuiTheme(); + + return ( + <> + + + + + {i18n.translate('languageDocumentationPopover.esqlDocsLinkLabel', { + defaultMessage: 'View full ES|QL documentation', + })} + + + ) + } + > + + + + + { + setSearchText(e.target.value); + }} + data-test-subj="language-documentation-navigation-search" + placeholder={i18n.translate('languageDocumentationPopover.searchPlaceholder', { + defaultMessage: 'Search', + })} + fullWidth + compressed + /> + + + + ); +} + +export const DocumentationNavigation = React.memo(DocumentationNav); diff --git a/src/plugins/console/public/application/containers/editor/monaco/index.ts b/packages/kbn-language-documentation-popover/src/components/shared/index.ts similarity index 77% rename from src/plugins/console/public/application/containers/editor/monaco/index.ts rename to packages/kbn-language-documentation-popover/src/components/shared/index.ts index b7b8576bbdf65..f00df2358d39a 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/index.ts +++ b/packages/kbn-language-documentation-popover/src/components/shared/index.ts @@ -7,5 +7,5 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export { MonacoEditor } from './monaco_editor'; -export { MonacoEditorOutput } from './monaco_editor_output'; +export { DocumentationNavigation } from './documentation_navigation'; +export { DocumentationMainContent } from './documentation_content'; diff --git a/packages/kbn-text-based-editor/src/inline_documentation/esql_documentation_sections.tsx b/packages/kbn-language-documentation-popover/src/sections/esql_documentation_sections.tsx similarity index 79% rename from packages/kbn-text-based-editor/src/inline_documentation/esql_documentation_sections.tsx rename to packages/kbn-language-documentation-popover/src/sections/esql_documentation_sections.tsx index d0c136cf6d01e..21e550f4ca5eb 100644 --- a/packages/kbn-text-based-editor/src/inline_documentation/esql_documentation_sections.tsx +++ b/packages/kbn-language-documentation-popover/src/sections/esql_documentation_sections.tsx @@ -17,11 +17,8 @@ const Markdown = (props: Parameters[0]) => ( export const initialSection = ( ); export const sourceCommands = { - label: i18n.translate('textBasedEditor.query.textBasedLanguagesEditor.sourceCommands', { + label: i18n.translate('languageDocumentationPopover.documentationESQL.sourceCommands', { defaultMessage: 'Source commands', }), description: i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.commandsDescription', + 'languageDocumentationPopover.documentationESQL.commandsDescription', { defaultMessage: `A source command produces a table, typically with data from Elasticsearch. ES|QL supports the following source commands.`, } ), items: [ { - label: i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.from', - { - defaultMessage: 'FROM', - } - ), + label: i18n.translate('languageDocumentationPopover.documentationESQL.from', { + defaultMessage: 'FROM', + }), description: ( \` source command returns information about the deployment and its capabilities: @@ -186,28 +173,25 @@ The \`SHOW \` source command returns information about the deployment and }; export const processingCommands = { - label: i18n.translate('textBasedEditor.query.textBasedLanguagesEditor.processingCommands', { + label: i18n.translate('languageDocumentationPopover.documentationESQL.processingCommands', { defaultMessage: 'Processing commands', }), description: i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.processingCommandsDescription', + 'languageDocumentationPopover.documentationESQL.processingCommandsDescription', { defaultMessage: `Processing commands change an input table by adding, removing, or changing rows and columns. ES|QL supports the following processing commands.`, } ), items: [ { - label: i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.dissect', - { - defaultMessage: 'DISSECT', - } - ), + label: i18n.translate('languageDocumentationPopover.documentationESQL.dissect', { + defaultMessage: 'DISSECT', + }), description: ( \` type conversion functions. +The \`::\` operator provides a convenient alternative syntax to the \`TO_\` type conversion functions. Example: \`\`\` @@ -943,16 +882,13 @@ ROW ver = CONCAT(("0"::INT + 1)::STRING, ".2.3")::VERSION ), }, { - label: i18n.translate( - 'textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.inOperator', - { - defaultMessage: 'IN', - } - ), + label: i18n.translate('languageDocumentationPopover.documentationESQL.inOperator', { + defaultMessage: 'IN', + }), description: ( { + const groups: Array<{ + label: string; + description?: string; + items: Array<{ label: string; description?: JSX.Element }>; + }> = []; + const { + sourceCommands, + processingCommands, + initialSection, + scalarFunctions, + aggregationFunctions, + groupingFunctions, + operators, + } = await import('./esql_documentation_sections'); + groups.push({ + label: i18n.translate('languageDocumentationPopover.esqlSections.initialSectionLabel', { + defaultMessage: 'ES|QL', + }), + items: [], + }); + groups.push( + sourceCommands, + processingCommands, + scalarFunctions, + aggregationFunctions, + groupingFunctions, + operators + ); + return { + groups, + initialSection, + }; +}; diff --git a/src/plugins/controls/public/services/http/types.ts b/packages/kbn-language-documentation-popover/src/types.ts similarity index 68% rename from src/plugins/controls/public/services/http/types.ts rename to packages/kbn-language-documentation-popover/src/types.ts index 0072bc0dacff0..863c00b94e21e 100644 --- a/src/plugins/controls/public/services/http/types.ts +++ b/packages/kbn-language-documentation-popover/src/types.ts @@ -7,9 +7,11 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { CoreSetup } from '@kbn/core/public'; - -export interface ControlsHTTPService { - get: CoreSetup['http']['get']; - fetch: CoreSetup['http']['fetch']; +export interface LanguageDocumentationSections { + groups: Array<{ + label: string; + description?: string; + items: Array<{ label: string; description?: JSX.Element }>; + }>; + initialSection: JSX.Element; } diff --git a/packages/kbn-language-documentation-popover/src/utils/get_filtered_groups.test.tsx b/packages/kbn-language-documentation-popover/src/utils/get_filtered_groups.test.tsx new file mode 100644 index 0000000000000..9dfe443f10b0b --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/utils/get_filtered_groups.test.tsx @@ -0,0 +1,85 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ +import React from 'react'; +import { Markdown } from '@kbn/shared-ux-markdown'; +import { getFilteredGroups } from './get_filtered_groups'; + +describe('getFilteredGroups', () => { + const sections = { + groups: [ + { + label: 'Section one', + description: 'Section 1 description', + items: [], + }, + { + label: 'Section two', + items: [ + { + label: 'Section two item 1 blah blah', + description: ( + + ), + }, + { + label: 'Section two item 2', + description: ( + + ), + }, + ], + }, + { + label: 'Section three ', + items: [ + { + label: 'Section three item 1', + description: ( + + ), + }, + { + label: 'Section three item 2', + description: ( + + ), + }, + ], + }, + ], + initialSection: Here is the initial section, + }; + test('Should return the sections as it gets them if the search string is empty', () => { + const filteredSections = getFilteredGroups('', false, sections); + expect(filteredSections).toStrictEqual([ + ...sections.groups.map((group) => ({ ...group, options: group.items })), + ]); + }); + + test('Should return the 2 last sections as it gets them if the search string is empty and the numOfGroupsToOmit is set to 1', () => { + const filteredSections = getFilteredGroups('', false, sections, 1); + expect(filteredSections).toStrictEqual([ + ...sections.groups.slice(1).map((group) => ({ ...group, options: group.items })), + ]); + }); + + test('Should return the section two as it gets it if the search string is asking for this', () => { + const filteredSections = getFilteredGroups('tWo', false, sections); + expect(filteredSections).toStrictEqual([ + { ...sections.groups[1], options: sections.groups[1].items }, + ]); + }); + + test('Should return the section two filtered on the search string if it is allowed to search in description', () => { + const filteredSections = getFilteredGroups('Section two item 1 blah blah', true, sections); + expect(filteredSections).toStrictEqual([ + { ...sections.groups[1], options: [sections.groups[1].items[0]] }, + ]); + }); +}); diff --git a/packages/kbn-language-documentation-popover/src/utils/get_filtered_groups.ts b/packages/kbn-language-documentation-popover/src/utils/get_filtered_groups.ts new file mode 100644 index 0000000000000..2ac252bdad775 --- /dev/null +++ b/packages/kbn-language-documentation-popover/src/utils/get_filtered_groups.ts @@ -0,0 +1,41 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ +import type { LanguageDocumentationSections } from '../types'; +import { elementToString } from './element_to_string'; + +export const getFilteredGroups = ( + searchText: string, + searchInDescription?: boolean, + sections?: LanguageDocumentationSections, + numOfGroupsToOmit?: number +) => { + const normalizedSearchText = searchText.trim().toLocaleLowerCase(); + return sections?.groups + .slice(numOfGroupsToOmit ?? 0) + .map((group) => { + const options = group.items.filter((helpItem) => { + return ( + !normalizedSearchText || + helpItem.label.toLocaleLowerCase().includes(normalizedSearchText) || + // Converting the JSX element to a string first + (searchInDescription && + elementToString(helpItem.description) + ?.toLocaleLowerCase() + .includes(normalizedSearchText)) + ); + }); + return { ...group, options }; + }) + .filter((group) => { + if (group.options.length > 0 || !normalizedSearchText) { + return true; + } + return group.label.toLocaleLowerCase().includes(normalizedSearchText); + }); +}; diff --git a/packages/kbn-language-documentation-popover/tsconfig.json b/packages/kbn-language-documentation-popover/tsconfig.json index 48da6397a6448..f613b6cb759aa 100644 --- a/packages/kbn-language-documentation-popover/tsconfig.json +++ b/packages/kbn-language-documentation-popover/tsconfig.json @@ -5,6 +5,7 @@ "types": [ "jest", "node", + "@emotion/react/types/css-prop", ] }, "include": [ diff --git a/packages/kbn-management/settings/setting_ids/index.ts b/packages/kbn-management/settings/setting_ids/index.ts index 0f79a5fff0506..611a7a0e13df5 100644 --- a/packages/kbn-management/settings/setting_ids/index.ts +++ b/packages/kbn-management/settings/setting_ids/index.ts @@ -144,8 +144,6 @@ export const OBSERVABILITY_LOGS_EXPLORER_ALLOWED_DATA_VIEWS_ID = 'observability:logsExplorer:allowedDataViews'; export const OBSERVABILITY_ENTITY_CENTRIC_EXPERIENCE = 'observability:entityCentricExperience'; export const OBSERVABILITY_LOGS_DATA_ACCESS_LOG_SOURCES_ID = 'observability:logSources'; -export const OBSERVABILITY_AI_ASSISTANT_LOGS_INDEX_PATTERN_ID = - 'observability:aiAssistantLogsIndexPattern'; export const OBSERVABILITY_AI_ASSISTANT_SIMULATED_FUNCTION_CALLING = 'observability:aiAssistantSimulatedFunctionCalling'; export const OBSERVABILITY_AI_ASSISTANT_SEARCH_CONNECTOR_INDEX_PATTERN = diff --git a/packages/kbn-monaco/index.ts b/packages/kbn-monaco/index.ts index 795664b60e7b7..ba8b0edb68e1a 100644 --- a/packages/kbn-monaco/index.ts +++ b/packages/kbn-monaco/index.ts @@ -39,6 +39,7 @@ export { CONSOLE_THEME_ID, getParsedRequestsProvider, ConsoleParsedRequestsProvider, + createOutputParser, } from './src/console'; export type { ParsedRequest } from './src/console'; diff --git a/packages/kbn-monaco/src/console/index.ts b/packages/kbn-monaco/src/console/index.ts index 6b26c6262f568..cf36505b27759 100644 --- a/packages/kbn-monaco/src/console/index.ts +++ b/packages/kbn-monaco/src/console/index.ts @@ -43,3 +43,5 @@ export const ConsoleOutputLang: LangModuleType = { export type { ParsedRequest } from './types'; export { getParsedRequestsProvider } from './language'; export { ConsoleParsedRequestsProvider } from './console_parsed_requests_provider'; + +export { createOutputParser } from './output_parser'; diff --git a/packages/kbn-monaco/src/console/lexer_rules/console_output.ts b/packages/kbn-monaco/src/console/lexer_rules/console_output.ts index c9ebd0cb6e876..30b846d529fe5 100644 --- a/packages/kbn-monaco/src/console/lexer_rules/console_output.ts +++ b/packages/kbn-monaco/src/console/lexer_rules/console_output.ts @@ -25,21 +25,24 @@ export const consoleOutputLexerRules: monaco.languages.IMonarchLanguage = { comments: [ // Line comment indicated by # // Everything after the # character is matched, stopping right before the status code and status text at the end if they are present - matchTokensWithEOL('comment', /# .+?(?=\s+\d{3}(?: \w+)*$)/, 'root', 'status'), + matchTokensWithEOL('comment.default', /# .+?(?=\s+\[\b1\d{2}(?: \w+)*\]$)/, 'root', 'status'), + matchTokensWithEOL('comment.success', /# .+?(?=\s+\[\b2\d{2}(?: \w+)*\]$)/, 'root', 'status'), + matchTokensWithEOL('comment.primary', /# .+?(?=\s+\[\b3\d{2}(?: \w+)*\]$)/, 'root', 'status'), + matchTokensWithEOL('comment.warning', /# .+?(?=\s+\[\b4\d{2}(?: \w+)*\]$)/, 'root', 'status'), + matchTokensWithEOL('comment.danger', /# .+?(?=\s+\[\b5\d{2}(?: \w+)*\]$)/, 'root', 'status'), ...consoleSharedLexerRules.tokenizer.comments, ], status: [ - // Following HTTP response status codes conventions - // Informational responses (status codes 100 – 199) - matchTokensWithEOL('status.info', /\b1\d{2}(?: \w+)*$/, 'root'), - // Successful responses (status codes 200 – 299) - matchTokensWithEOL('status.success', /\b2\d{2}(?: \w+)*$/, 'root'), - // Redirection messages (status codes 300 – 399) - matchTokensWithEOL('status.redirect', /\b3\d{2}(?: \w+)*$/, 'root'), - // Client error responses (status codes 400 – 499) - matchTokensWithEOL('status.warning', /\b4\d{2}(?: \w+)*$/, 'root'), - // Server error responses (status codes 500 – 599) - matchTokensWithEOL('status.error', /\b5\d{2}(?: \w+)*$/, 'root'), + // Status codes 100 – 199 + matchTokensWithEOL('status.default', /\[\b1\d{2}(?: \w+)*\]$/, 'root'), + // Status codes 200 – 299 + matchTokensWithEOL('status.success', /\[\b2\d{2}(?: \w+)*\]$/, 'root'), + // Status codes 300 – 399 + matchTokensWithEOL('status.primary', /\[\b3\d{2}(?: \w+)*\]$/, 'root'), + // Status codes 400 – 499 + matchTokensWithEOL('status.warning', /\[\b4\d{2}(?: \w+)*\]$/, 'root'), + // Status codes 500 – 599 + matchTokensWithEOL('status.danger', /\[\b5\d{2}(?: \w+)*\]$/, 'root'), ], }, }; diff --git a/packages/kbn-monaco/src/console/output_parser.js b/packages/kbn-monaco/src/console/output_parser.js new file mode 100644 index 0000000000000..8601cf764055e --- /dev/null +++ b/packages/kbn-monaco/src/console/output_parser.js @@ -0,0 +1,401 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +/* eslint-disable prettier/prettier,prefer-const,no-throw-literal,camelcase,@typescript-eslint/no-shadow,one-var,object-shorthand,eqeqeq */ + +export const createOutputParser = () => { + let at, // The index of the current character + ch, // The current character + escapee = { + '"': '"', + '\\': '\\', + '/': '/', + b: '\b', + f: '\f', + n: '\n', + r: '\r', + t: '\t', + }, + text, + errors, + addError = function (text) { + errors.push({ text: text, offset: at }); + }, + responses, + responseStartOffset, + responseEndOffset, + getLastResponse = function() { + return responses.length > 0 ? responses.pop() : {}; + }, + addResponseStart = function() { + responseStartOffset = at - 1; + responses.push({ startOffset: responseStartOffset }); + }, + addResponseData = function(data) { + const lastResponse = getLastResponse(); + const dataArray = lastResponse.data || []; + dataArray.push(data); + lastResponse.data = dataArray; + responses.push(lastResponse); + responseEndOffset = at - 1; + }, + addResponseEnd = function() { + const lastResponse = getLastResponse(); + lastResponse.endOffset = responseEndOffset; + responses.push(lastResponse); + }, + error = function (m) { + throw { + name: 'SyntaxError', + message: m, + at: at, + text: text, + }; + }, + reset = function (newAt) { + ch = text.charAt(newAt); + at = newAt + 1; + }, + next = function (c) { + if (c && c !== ch) { + error('Expected \'' + c + '\' instead of \'' + ch + '\''); + } + + ch = text.charAt(at); + at += 1; + return ch; + }, + nextUpTo = function (upTo, errorMessage) { + let currentAt = at, + i = text.indexOf(upTo, currentAt); + if (i < 0) { + error(errorMessage || 'Expected \'' + upTo + '\''); + } + reset(i + upTo.length); + return text.substring(currentAt, i); + }, + peek = function (offset) { + return text.charAt(at + offset); + }, + number = function () { + let number, + string = ''; + + if (ch === '-') { + string = '-'; + next('-'); + } + while (ch >= '0' && ch <= '9') { + string += ch; + next(); + } + if (ch === '.') { + string += '.'; + while (next() && ch >= '0' && ch <= '9') { + string += ch; + } + } + if (ch === 'e' || ch === 'E') { + string += ch; + next(); + if (ch === '-' || ch === '+') { + string += ch; + next(); + } + while (ch >= '0' && ch <= '9') { + string += ch; + next(); + } + } + number = +string; + if (isNaN(number)) { + error('Bad number'); + } else { + return number; + } + }, + string = function () { + let hex, + i, + string = '', + uffff; + + if (ch === '"') { + // If the current and the next characters are equal to "", empty string or start of triple quoted strings + if (peek(0) === '"' && peek(1) === '"') { + // literal + next('"'); + next('"'); + return nextUpTo('"""', 'failed to find closing \'"""\''); + } else { + while (next()) { + if (ch === '"') { + next(); + return string; + } else if (ch === '\\') { + next(); + if (ch === 'u') { + uffff = 0; + for (i = 0; i < 4; i += 1) { + hex = parseInt(next(), 16); + if (!isFinite(hex)) { + break; + } + uffff = uffff * 16 + hex; + } + string += String.fromCharCode(uffff); + } else if (typeof escapee[ch] === 'string') { + string += escapee[ch]; + } else { + break; + } + } else { + string += ch; + } + } + } + } + error('Bad string'); + }, + white = function () { + while (ch) { + // Skip whitespace. + while (ch && ch <= ' ') { + next(); + } + // if the current char in iteration is '#' or the char and the next char is equal to '//' + // we are on the single line comment + if (ch === '#' || ch === '/' && peek(0) === '/') { + // Until we are on the new line, skip to the next char + while (ch && ch !== '\n') { + next(); + } + } else if (ch === '/' && peek(0) === '*') { + // If the chars starts with '/*', we are on the multiline comment + next(); + next(); + while (ch && !(ch === '*' && peek(0) === '/')) { + // Until we have closing tags '*/', skip to the next char + next(); + } + if (ch) { + next(); + next(); + } + } else break; + } + }, + strictWhite = function () { + while (ch && (ch == ' ' || ch == '\t')) { + next(); + } + }, + newLine = function () { + if (ch == '\n') next(); + }, + word = function () { + switch (ch) { + case 't': + next('t'); + next('r'); + next('u'); + next('e'); + return true; + case 'f': + next('f'); + next('a'); + next('l'); + next('s'); + next('e'); + return false; + case 'n': + next('n'); + next('u'); + next('l'); + next('l'); + return null; + } + error('Unexpected \'' + ch + '\''); + }, + value, // Place holder for the value function. + array = function () { + const array = []; + + if (ch === '[') { + next('['); + white(); + if (ch === ']') { + next(']'); + return array; // empty array + } + while (ch) { + array.push(value()); + white(); + if (ch === ']') { + next(']'); + return array; + } + next(','); + white(); + } + } + error('Bad array'); + }, + object = function () { + let key, + object = {}; + + if (ch === '{') { + next('{'); + white(); + if (ch === '}') { + next('}'); + return object; // empty object + } + while (ch) { + key = string(); + white(); + next(':'); + if (Object.hasOwnProperty.call(object, key)) { + error('Duplicate key "' + key + '"'); + } + object[key] = value(); + white(); + if (ch === '}') { + next('}'); + return object; + } + next(','); + white(); + } + } + error('Bad object'); + }; + + value = function () { + white(); + switch (ch) { + case '{': + return object(); + case '[': + return array(); + case '"': + return string(); + case '-': + return number(); + default: + return ch >= '0' && ch <= '9' ? number() : word(); + } + }; + + let response = function () { + white(); + addResponseStart(); + // it can be an object + if (ch == '{') { + const parsedObject = object(); + addResponseData(parsedObject); + // but it could also be an array of objects + } else if (ch == '[') { + const parsedArray = array(); + parsedArray.forEach(item => { + if (typeof item === 'object') { + addResponseData(item); + } else { + error('Array elements must be objects'); + } + }); + } else { + error('Invalid input'); + } + // multi doc response + strictWhite(); // advance to one new line + newLine(); + strictWhite(); + while (ch == '{') { + // another object + const parsedObject = object(); + addResponseData(parsedObject); + strictWhite(); + newLine(); + strictWhite(); + } + addResponseEnd(); + }, + comment = function () { + while (ch == '#') { + while (ch && ch !== '\n') { + next(); + } + white(); + } + }, + multi_response = function () { + while (ch && ch != '') { + white(); + if (!ch) { + continue; + } + try { + comment(); + white(); + if (!ch) { + continue; + } + response(); + white(); + } catch (e) { + addError(e.message); + // snap + const substring = text.substr(at); + const nextMatch = substring.search(/[#{]/); + if (nextMatch < 1) return; + reset(at + nextMatch); + } + } + }; + + return function (source, reviver) { + let result; + + text = source; + at = 0; + errors = []; + responses = []; + next(); + multi_response(); + white(); + if (ch) { + addError('Syntax error'); + } + + result = { errors, responses }; + + return typeof reviver === 'function' + ? (function walk(holder, key) { + let k, + v, + value = holder[key]; + if (value && typeof value === 'object') { + for (k in value) { + if (Object.hasOwnProperty.call(value, k)) { + v = walk(value, k); + if (v !== undefined) { + value[k] = v; + } else { + delete value[k]; + } + } + } + } + return reviver.call(holder, key, value); + }({ '': result }, '')) + : result; + }; +} diff --git a/packages/kbn-monaco/src/console/output_parser.test.ts b/packages/kbn-monaco/src/console/output_parser.test.ts new file mode 100644 index 0000000000000..47ec0bbeb65e4 --- /dev/null +++ b/packages/kbn-monaco/src/console/output_parser.test.ts @@ -0,0 +1,40 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { createOutputParser } from './output_parser'; +import { ConsoleOutputParserResult } from './types'; + +const parser = createOutputParser(); +describe('console output parser', () => { + it('returns errors if input is not correct', () => { + const input = 'x'; + const parserResult = parser(input) as ConsoleOutputParserResult; + + expect(parserResult.responses.length).toBe(1); + // the parser should generate an invalid input error + expect(parserResult.errors).toContainEqual({ text: 'Invalid input', offset: 1 }); + }); + + it('returns parsed responses if the input is correct', () => { + const input = `# 1: GET /my-index/_doc/0 \n { "_index": "my-index" }`; + const { responses, errors } = parser(input) as ConsoleOutputParserResult; + expect(responses.length).toBe(1); + expect(errors.length).toBe(0); + const { data } = responses[0]; + + const expected = [{ _index: 'my-index' }]; + expect(data).toEqual(expected); + }); + + it('parses several responses', () => { + const input = `# 1: GET /my-index/_doc/0 \n { "_index": "my-index" } \n # 2: GET /my-index/_doc/1 \n { "_index": "my-index" }`; + const { responses } = parser(input) as ConsoleOutputParserResult; + expect(responses.length).toBe(2); + }); +}); diff --git a/packages/kbn-monaco/src/console/theme.ts b/packages/kbn-monaco/src/console/theme.ts index bcb3d93368018..6f5a1e78618fb 100644 --- a/packages/kbn-monaco/src/console/theme.ts +++ b/packages/kbn-monaco/src/console/theme.ts @@ -20,6 +20,11 @@ const background = euiThemeVars.euiFormBackgroundColor; const booleanTextColor = '#585CF6'; const methodTextColor = '#DD0A73'; const urlTextColor = '#00A69B'; +const defaultStatusBackgroundColor = darkMode ? '#191B20' : '#F7F8FA'; +const successStatusBackgroundColor = darkMode ? '#212B30' : '#E7F5F5'; +const primaryStatusBackgroundColor = darkMode ? '#1E232D' : '#EBF1F7'; +const warningStatusBackgroundColor = darkMode ? '#2C2B25' : '#FBF6E9'; +const dangerStatusBackgroundColor = darkMode ? '#2E2024' : '#F6E6E7'; export const buildConsoleTheme = (): monaco.editor.IStandaloneThemeData => { const euiTheme = darkMode ? buildDarkTheme() : buildLightTheme(); return { @@ -39,27 +44,56 @@ export const buildConsoleTheme = (): monaco.editor.IStandaloneThemeData => { makeHighContrastColor(euiThemeVars.euiColorAccentText)(background) ), ...buildRuleGroup( - ['status.info'], - makeHighContrastColor(euiThemeVars.euiTextColor)(background) + ['comment.default'], + makeHighContrastColor(euiThemeVars.euiTextColor)(defaultStatusBackgroundColor) + ), + ...buildRuleGroup( + ['comment.success'], + makeHighContrastColor(euiThemeVars.euiColorSuccessText)(successStatusBackgroundColor) + ), + ...buildRuleGroup( + ['comment.primary'], + makeHighContrastColor(euiThemeVars.euiTextColor)(primaryStatusBackgroundColor) + ), + ...buildRuleGroup( + ['comment.warning'], + makeHighContrastColor(euiThemeVars.euiColorWarningText)(warningStatusBackgroundColor) + ), + ...buildRuleGroup( + ['comment.danger'], + makeHighContrastColor(euiThemeVars.euiColorDangerText)(dangerStatusBackgroundColor) + ), + ...buildRuleGroup( + ['status.default'], + makeHighContrastColor(euiThemeVars.euiTextColor)(defaultStatusBackgroundColor), + true ), ...buildRuleGroup( ['status.success'], - makeHighContrastColor(euiThemeVars.euiTextColor)(euiThemeVars.euiColorSuccess) + makeHighContrastColor(euiThemeVars.euiColorSuccessText)(successStatusBackgroundColor), + true ), ...buildRuleGroup( - ['status.redirect'], - makeHighContrastColor(euiThemeVars.euiTextColor)(background) + ['status.primary'], + makeHighContrastColor(euiThemeVars.euiTextColor)(primaryStatusBackgroundColor), + true ), ...buildRuleGroup( ['status.warning'], - makeHighContrastColor(euiThemeVars.euiTextColor)(euiThemeVars.euiColorWarning) + makeHighContrastColor(euiThemeVars.euiColorWarningText)(warningStatusBackgroundColor), + true ), ...buildRuleGroup( - ['status.error'], - makeHighContrastColor('#FFFFFF')(euiThemeVars.euiColorDanger) + ['status.danger'], + makeHighContrastColor(euiThemeVars.euiColorDangerText)(dangerStatusBackgroundColor), + true ), ...buildRuleGroup(['method'], makeHighContrastColor(methodTextColor)(background)), ...buildRuleGroup(['url'], makeHighContrastColor(urlTextColor)(background)), ], + colors: { + ...euiTheme.colors, + 'editorLineNumber.foreground': euiThemeVars.euiTextColor, + }, }; }; diff --git a/packages/kbn-monaco/src/console/types.ts b/packages/kbn-monaco/src/console/types.ts index 6c7573eabdb2c..a024e4696f8cd 100644 --- a/packages/kbn-monaco/src/console/types.ts +++ b/packages/kbn-monaco/src/console/types.ts @@ -21,6 +21,16 @@ export interface ConsoleParserResult { requests: ParsedRequest[]; } +export interface ConsoleOutputParsedResponse { + startOffset: number; + endOffset?: number; + data?: Array>; +} +export interface ConsoleOutputParserResult { + errors: ErrorAnnotation[]; + responses: ConsoleOutputParsedResponse[]; +} + export interface ConsoleWorkerDefinition { getParserResult: (modelUri: string) => ConsoleParserResult | undefined; } diff --git a/packages/kbn-monaco/src/esql/language.test.ts b/packages/kbn-monaco/src/esql/language.test.ts new file mode 100644 index 0000000000000..d368ec66fcea1 --- /dev/null +++ b/packages/kbn-monaco/src/esql/language.test.ts @@ -0,0 +1,133 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { PartialFieldsMetadataClient } from '@kbn/esql-validation-autocomplete/src/shared/types'; +import { monaco } from '../monaco_imports'; +import { ESQLLang } from './language'; + +describe('ESQLLang', () => { + describe('getSuggestionProvider', () => { + describe('resolveCompletionItem', () => { + it('should resolve completion item with field metadata', async () => { + const mockGetFieldsMetadata: Promise = Promise.resolve({ + find: jest.fn().mockResolvedValue({ + fields: { + 'test.field': { + type: 'keyword', + description: 'Test field description', + }, + }, + }), + }); + + const suggestionProvider = ESQLLang.getSuggestionProvider({ + getFieldsMetadata: mockGetFieldsMetadata, + }); + + const ecsItem: monaco.languages.CompletionItem = { + label: 'test.field', + kind: 4, + insertText: 'test.field', + range: new monaco.Range(0, 0, 0, 0), + }; + + const resolvedItem = await suggestionProvider.resolveCompletionItem!(ecsItem, {} as any); + + expect(resolvedItem).toEqual({ + ...ecsItem, + documentation: { + value: 'Test field description', + }, + }); + + const ecsItemWithKeywordSuffix: monaco.languages.CompletionItem = { + label: 'test.field.keyword', + kind: 4, + insertText: 'test.field.keyword', + range: new monaco.Range(0, 0, 0, 0), + }; + + const resolvedItemWithKeywordSuffix = await suggestionProvider.resolveCompletionItem!( + ecsItemWithKeywordSuffix, + {} as any + ); + + expect(resolvedItemWithKeywordSuffix).toEqual({ + ...ecsItemWithKeywordSuffix, + documentation: { + value: 'Test field description', + }, + }); + }); + + it('should return original item if field metadata is not available', async () => { + const mockGetFieldsMetadata: Promise = Promise.resolve({ + find: jest.fn().mockResolvedValue({ + fields: {}, + }), + }); + + const suggestionProvider = ESQLLang.getSuggestionProvider({ + getFieldsMetadata: mockGetFieldsMetadata, + }); + + const item: monaco.languages.CompletionItem = { + label: 'test.field', + kind: 4, + insertText: 'test.field', + range: new monaco.Range(0, 0, 0, 0), + }; + const resolvedItem = await suggestionProvider.resolveCompletionItem!(item, {} as any); + + expect(resolvedItem).toEqual(item); + }); + + it('should never call metadata find API if not needed', async () => { + const mockFind = jest.fn().mockResolvedValue({ + fields: {}, + }); + const mockGetFieldsMetadata: Promise = Promise.resolve({ + find: mockFind, + }); + + const suggestionProvider = ESQLLang.getSuggestionProvider({ + getFieldsMetadata: mockGetFieldsMetadata, + }); + + const notFieldItem: monaco.languages.CompletionItem = { + label: 'CASE', + kind: 1, + insertText: 'CASE', + range: new monaco.Range(0, 0, 0, 0), + }; + + const notFieldResolvedItem = await suggestionProvider.resolveCompletionItem!( + notFieldItem, + {} as any + ); + expect(mockFind).toBeCalledTimes(1); + expect(notFieldResolvedItem).toEqual(notFieldItem); + + mockFind.mockClear(); + const notECSFieldItem: monaco.languages.CompletionItem = { + label: 'not.ecs.field', + kind: 4, + insertText: 'not.ecs.field', + range: new monaco.Range(0, 0, 0, 0), + }; + const notECSFieldResolvedItem = await suggestionProvider.resolveCompletionItem!( + notECSFieldItem, + {} as any + ); + expect(mockFind).toBeCalledTimes(1); + expect(notECSFieldResolvedItem).toEqual(notECSFieldItem); + }); + }); + }); +}); diff --git a/packages/kbn-monaco/src/esql/language.ts b/packages/kbn-monaco/src/esql/language.ts index 424b4a5a13592..b94f38d697fcf 100644 --- a/packages/kbn-monaco/src/esql/language.ts +++ b/packages/kbn-monaco/src/esql/language.ts @@ -21,6 +21,9 @@ import { wrapAsMonacoSuggestions } from './lib/converters/suggestions'; import { wrapAsMonacoCodeActions } from './lib/converters/actions'; const workerProxyService = new WorkerProxyService(); +const removeKeywordSuffix = (name: string) => { + return name.endsWith('.keyword') ? name.slice(0, -8) : name; +}; export const ESQLLang: CustomLangModuleType = { ID: ESQL_LANG_ID, @@ -107,6 +110,42 @@ export const ESQLLang: CustomLangModuleType = { suggestions: wrapAsMonacoSuggestions(suggestions), }; }, + async resolveCompletionItem(item, token): Promise { + if (!callbacks?.getFieldsMetadata) return item; + const fieldsMetadataClient = await callbacks?.getFieldsMetadata; + + const fullEcsMetadataList = await fieldsMetadataClient?.find({ + attributes: ['type'], + }); + if (!fullEcsMetadataList || !fieldsMetadataClient || typeof item.label !== 'string') + return item; + + const strippedFieldName = removeKeywordSuffix(item.label); + if ( + // If item is not a field, no need to fetch metadata + item.kind === monaco.languages.CompletionItemKind.Variable && + // If not ECS, no need to fetch description + Object.hasOwn(fullEcsMetadataList?.fields, strippedFieldName) + ) { + const ecsMetadata = await fieldsMetadataClient.find({ + fieldNames: [strippedFieldName], + attributes: ['description'], + }); + + const fieldMetadata = ecsMetadata.fields[strippedFieldName]; + if (fieldMetadata && fieldMetadata.description) { + const completionItem: monaco.languages.CompletionItem = { + ...item, + documentation: { + value: fieldMetadata.description, + }, + }; + return completionItem; + } + } + + return item; + }, }; }, diff --git a/packages/kbn-openapi-bundler/src/utils/extract_by_json_pointer.ts b/packages/kbn-openapi-bundler/src/utils/extract_by_json_pointer.ts index 16dc07dbc01b5..609bec7e785d9 100644 --- a/packages/kbn-openapi-bundler/src/utils/extract_by_json_pointer.ts +++ b/packages/kbn-openapi-bundler/src/utils/extract_by_json_pointer.ts @@ -8,7 +8,7 @@ */ import chalk from 'chalk'; -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; import { isPlainObjectType } from './is_plain_object_type'; /** @@ -33,7 +33,7 @@ export function extractByJsonPointer(document: unknown, pointer: string): unknow throw new Error( `JSON Pointer ${chalk.bold(pointer)} resolution failure. Expected ${chalk.magenta( path.join('/') - )} to be a plain object but it has type "${typeof target}" in \n\n${safeDump(document, { + )} to be a plain object but it has type "${typeof target}" in \n\n${dump(document, { skipInvalid: true, })}` ); @@ -69,7 +69,7 @@ export function extractObjectByJsonPointer( throw new Error( `JSON Pointer resolution failure. Expected ${chalk.magenta( pointer - )} to be a plain object in \n\n${safeDump(document, { skipInvalid: true })}` + )} to be a plain object in \n\n${dump(document, { skipInvalid: true })}` ); } diff --git a/packages/kbn-openapi-bundler/src/utils/read_document.ts b/packages/kbn-openapi-bundler/src/utils/read_document.ts index b4fb20b1e6a2f..5c3f465e9ffd2 100644 --- a/packages/kbn-openapi-bundler/src/utils/read_document.ts +++ b/packages/kbn-openapi-bundler/src/utils/read_document.ts @@ -9,7 +9,7 @@ import fs from 'fs/promises'; import { basename, extname } from 'path'; -import { safeLoad } from 'js-yaml'; +import { load } from 'js-yaml'; import chalk from 'chalk'; import { logger } from '../logger'; import { isPlainObjectType } from './is_plain_object_type'; @@ -43,15 +43,32 @@ async function readFile(filePath: string): Promise { } async function readYamlFile(filePath: string): Promise> { - // Typing load's result to Record is optimistic as we can't be sure - // there is object inside a yaml file. We don't have this validation layer so far - // but using JSON Schemas here should mitigate this problem. - return safeLoad(await fs.readFile(filePath, { encoding: 'utf8' })); + const fileContent = await fs.readFile(filePath, { encoding: 'utf8' }); + const maybeObject = load(fileContent); + + if (!isPlainObjectType(maybeObject)) { + throw new Error( + `Expected ${chalk.bold(filePath)} to contain an object but got ${typeof maybeObject}` + ); + } + + return maybeObject; } async function readJsonFile(filePath: string): Promise> { - // Typing load's result to Record is optimistic as we can't be sure - // there is object inside a yaml file. We don't have this validation layer so far - // but using JSON Schemas here should mitigate this problem. - return await JSON.parse(await fs.readFile(filePath, { encoding: 'utf8' })); + const fileContent = await fs.readFile(filePath, { encoding: 'utf8' }); + + try { + const maybeObject = JSON.parse(fileContent); + + if (!isPlainObjectType(maybeObject)) { + throw new Error( + `Expected ${chalk.bold(filePath)} to contain an object but got ${typeof maybeObject}` + ); + } + + return maybeObject; + } catch { + throw new Error(`Unable to parse ${chalk.bold(filePath)}`); + } } diff --git a/packages/kbn-openapi-bundler/src/utils/write_yaml_document.ts b/packages/kbn-openapi-bundler/src/utils/write_yaml_document.ts index 07aee7f8f50a3..88886541836ff 100644 --- a/packages/kbn-openapi-bundler/src/utils/write_yaml_document.ts +++ b/packages/kbn-openapi-bundler/src/utils/write_yaml_document.ts @@ -8,7 +8,7 @@ */ import fs from 'fs/promises'; -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; import { dirname } from 'path'; export async function writeYamlDocument(filePath: string, document: unknown): Promise { @@ -26,14 +26,14 @@ function stringifyToYaml(document: unknown): string { try { // Disable YAML Anchors https://yaml.org/spec/1.2.2/#3222-anchors-and-aliases // It makes YAML much more human readable - return safeDump(document, { + return dump(document, { noRefs: true, sortKeys: sortYamlKeys, skipInvalid: true, // Skip invalid types like `undefined` }); } catch (e) { // Try to stringify with YAML Anchors enabled - return safeDump(document, { noRefs: false, sortKeys: sortYamlKeys, skipInvalid: true }); + return dump(document, { noRefs: false, sortKeys: sortYamlKeys, skipInvalid: true }); } } diff --git a/packages/kbn-openapi-bundler/tests/bundler/bundle_specs.ts b/packages/kbn-openapi-bundler/tests/bundler/bundle_specs.ts index 7ea821e4fa9a4..b3093e00093a2 100644 --- a/packages/kbn-openapi-bundler/tests/bundler/bundle_specs.ts +++ b/packages/kbn-openapi-bundler/tests/bundler/bundle_specs.ts @@ -17,7 +17,7 @@ import { unlinkSync, writeFileSync, } from 'fs'; -import { safeDump, safeLoad } from 'js-yaml'; +import { dump, load } from 'js-yaml'; import { OpenAPIV3 } from 'openapi-types'; import { bundle, BundlerConfig } from '../../src/openapi_bundler'; @@ -59,7 +59,7 @@ function dumpSpecs(folderPath: string, oasSpecs: Record { const [bundledSpec] = Object.values(readBundledSpecs(outputFolderPath)); - const expected = safeLoad( + const expected = load( readFileSync(join(folderToBundlePath, 'expected.yaml'), { encoding: 'utf8' }) ); diff --git a/packages/kbn-openapi-bundler/tests/bundler/circular.test.ts b/packages/kbn-openapi-bundler/tests/bundler/circular.test.ts index ea88cd25b9424..08bcf79724e2f 100644 --- a/packages/kbn-openapi-bundler/tests/bundler/circular.test.ts +++ b/packages/kbn-openapi-bundler/tests/bundler/circular.test.ts @@ -7,7 +7,7 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; import { OpenAPIV3 } from 'openapi-types'; import { bundleSpecs } from './bundle_specs'; import { createOASDocument } from '../create_oas_document'; @@ -49,8 +49,7 @@ describe('OpenAPI Bundler - circular specs', () => { }) ); - expect(safeDump(bundledSpec.paths['/api/some_api']!.get!.responses['200'])) - .toMatchInlineSnapshot(` + expect(dump(bundledSpec.paths['/api/some_api']!.get!.responses['200'])).toMatchInlineSnapshot(` "content: application/json: schema: &ref_0 diff --git a/packages/kbn-openapi-bundler/tests/merger/merge_specs.ts b/packages/kbn-openapi-bundler/tests/merger/merge_specs.ts index ddce2136af781..7c9c805934c5f 100644 --- a/packages/kbn-openapi-bundler/tests/merger/merge_specs.ts +++ b/packages/kbn-openapi-bundler/tests/merger/merge_specs.ts @@ -17,7 +17,7 @@ import { unlinkSync, writeFileSync, } from 'fs'; -import { safeDump, safeLoad } from 'js-yaml'; +import { dump, load } from 'js-yaml'; import { OpenAPIV3 } from 'openapi-types'; import { merge, MergerConfig } from '../../src/openapi_merger'; @@ -59,7 +59,7 @@ function dumpSpecs(folderPath: string, oasSpecs: Record = ({ setDocsPerPage, }) => { const [isPopoverOpen, setIsPopoverOpen] = useState(false); - const resultToField = (result: SearchHit) => { - if (mappings && result._source && !Array.isArray(result._source)) { - if (typeof result._source === 'object') { - return Object.entries(result._source).map(([key, value]) => { - return { - fieldName: key, - fieldType: mappings[key]?.type ?? 'object', - fieldValue: JSON.stringify(value, null, 2), - }; - }); - } - } - return []; - }; const getIconType = (size: number) => { return size === docsPerPage ? 'check' : 'empty'; @@ -113,7 +99,7 @@ export const DocumentList: React.FC = ({ {docs.map((doc) => { return ( - + ); diff --git a/packages/kbn-search-index-documents/components/result/index.ts b/packages/kbn-search-index-documents/components/result/index.ts index e2be662bec512..a5e613fbd83ec 100644 --- a/packages/kbn-search-index-documents/components/result/index.ts +++ b/packages/kbn-search-index-documents/components/result/index.ts @@ -8,3 +8,4 @@ */ export { Result } from './result'; +export { resultMetaData, resultToField } from './result_metadata'; diff --git a/packages/kbn-search-index-documents/components/result/result_metadata.ts b/packages/kbn-search-index-documents/components/result/result_metadata.ts index 09a06878213ae..783cd537b4535 100644 --- a/packages/kbn-search-index-documents/components/result/result_metadata.ts +++ b/packages/kbn-search-index-documents/components/result/result_metadata.ts @@ -7,8 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { SearchHit } from '@elastic/elasticsearch/lib/api/types'; -import { MetaDataProps } from './result_types'; +import type { MappingProperty, SearchHit } from '@elastic/elasticsearch/lib/api/types'; +import type { MetaDataProps } from './result_types'; const TITLE_KEYS = ['title', 'name']; @@ -38,3 +38,18 @@ export const resultMetaData = (result: SearchHit): MetaDataProps => ({ id: result._id!, title: resultTitle(result), }); + +export const resultToField = (result: SearchHit, mappings?: Record) => { + if (mappings && result._source && !Array.isArray(result._source)) { + if (typeof result._source === 'object') { + return Object.entries(result._source).map(([key, value]) => { + return { + fieldName: key, + fieldType: mappings[key]?.type ?? 'object', + fieldValue: JSON.stringify(value, null, 2), + }; + }); + } + } + return []; +}; diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.schema.yaml index 9703e31287ae6..b2ca0f563617d 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.schema.yaml @@ -8,8 +8,8 @@ paths: x-labels: [serverless, ess] x-codegen-enabled: true operationId: CreateEndpointList - summary: Creates an endpoint list - description: Creates an endpoint list or does nothing if the list already exists + summary: Create an endpoint exception list + description: Create an endpoint exception list, which groups endpoint exception list items. If an endpoint exception list already exists, an empty response is returned. responses: 200: description: Successful response diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.schema.yaml index 8807f6cf76f7c..b90bee75fc073 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] x-codegen-enabled: true operationId: CreateEndpointListItem - summary: Creates an endpoint list item + summary: Create an endpoint exception list item + description: Create an endpoint exception list item, and associate it with the endpoint exception list. requestBody: description: Exception list item's properties required: true diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.schema.yaml index cd0ddd9dd69cb..69db506169187 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] x-codegen-enabled: true operationId: DeleteEndpointListItem - summary: Deletes an endpoint list item + summary: Delete an endpoint exception list item + description: Delete an endpoint exception list item using the `id` or `item_id` field. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.schema.yaml index e727367ff9c7d..6dc2fcaa7e87a 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] x-codegen-enabled: true operationId: FindEndpointListItems - summary: Finds endpoint list items + summary: Get endpoint exception list items + description: Get a list of all endpoint exception list items. parameters: - name: filter in: query diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.schema.yaml index 81be7c67a00b3..8a4e0b291c76f 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] x-codegen-enabled: true operationId: ReadEndpointListItem - summary: Reads an endpoint list item + summary: Get an endpoint exception list item + description: Get the details of an endpoint exception list item using the `id` or `item_id` field. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.schema.yaml index dcbf24be28763..679000674c7b2 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] x-codegen-enabled: true operationId: UpdateEndpointListItem - summary: Updates an endpoint list item + summary: Update an endpoint exception list item + description: Update an endpoint exception list item using the `id` or `item_id` field. requestBody: description: Exception list item's properties required: true diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/ess/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/ess/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml index cbd98091ca378..fc3b7c832a709 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/ess/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/ess/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml @@ -4,7 +4,7 @@ info: title: Security Solution Endpoint Exceptions API (Elastic Cloud and self-hosted) version: '2023-10-31' servers: - - url: 'http://{kibana_host}:{port}' + - url: http://{kibana_host}:{port} variables: kibana_host: default: localhost @@ -13,7 +13,10 @@ servers: paths: /api/endpoint_list: post: - description: Creates an endpoint list or does nothing if the list already exists + description: >- + Create an endpoint exception list, which groups endpoint exception list + items. If an endpoint exception list already exists, an empty response + is returned. operationId: CreateEndpointList responses: '200': @@ -48,9 +51,14 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Creates an endpoint list + summary: Create an endpoint exception list + tags: + - Security Solution Endpoint Exceptions API /api/endpoint_list/items: delete: + description: >- + Delete an endpoint exception list item using the `id` or `item_id` + field. operationId: DeleteEndpointListItem parameters: - description: Either `id` or `item_id` must be specified @@ -104,8 +112,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Deletes an endpoint list item + summary: Delete an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API get: + description: >- + Get the details of an endpoint exception list item using the `id` or + `item_id` field. operationId: ReadEndpointListItem parameters: - description: Either `id` or `item_id` must be specified @@ -161,8 +174,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Reads an endpoint list item + summary: Get an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API post: + description: >- + Create an endpoint exception list item, and associate it with the + endpoint exception list. operationId: CreateEndpointListItem requestBody: content: @@ -237,8 +255,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Creates an endpoint list item + summary: Create an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API put: + description: >- + Update an endpoint exception list item using the `id` or `item_id` + field. operationId: UpdateEndpointListItem requestBody: content: @@ -318,9 +341,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Updates an endpoint list item + summary: Update an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API /api/endpoint_list/items/_find: get: + description: Get a list of all endpoint exception list items. operationId: FindEndpointListItems parameters: - description: > @@ -353,7 +379,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -422,7 +448,9 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Finds endpoint list items + summary: Get endpoint exception list items + tags: + - Security Solution Endpoint Exceptions API components: schemas: EndpointList: @@ -489,7 +517,7 @@ components: type: string ExceptionListHumanId: $ref: '#/components/schemas/NonEmptyString' - description: 'Human readable string identifier, e.g. `trusted-linux-processes`' + description: Human readable string identifier, e.g. `trusted-linux-processes` ExceptionListId: $ref: '#/components/schemas/NonEmptyString' ExceptionListItem: @@ -851,3 +879,9 @@ components: type: http security: - BasicAuth: [] +tags: + - description: >- + Endpoint Exceptions API allows you to manage detection rule endpoint + exceptions to prevent a rule from generating an alert from incoming events + even when the rule's other criteria are met. + name: Security Solution Endpoint Exceptions API diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/serverless/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml b/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/serverless/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml index e8a8966c18586..d342e6f63794e 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/serverless/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/docs/openapi/serverless/security_solution_endpoint_exceptions_api_2023_10_31.bundled.schema.yaml @@ -4,7 +4,7 @@ info: title: Security Solution Endpoint Exceptions API (Elastic Cloud Serverless) version: '2023-10-31' servers: - - url: 'http://{kibana_host}:{port}' + - url: http://{kibana_host}:{port} variables: kibana_host: default: localhost @@ -13,7 +13,10 @@ servers: paths: /api/endpoint_list: post: - description: Creates an endpoint list or does nothing if the list already exists + description: >- + Create an endpoint exception list, which groups endpoint exception list + items. If an endpoint exception list already exists, an empty response + is returned. operationId: CreateEndpointList responses: '200': @@ -48,9 +51,14 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Creates an endpoint list + summary: Create an endpoint exception list + tags: + - Security Solution Endpoint Exceptions API /api/endpoint_list/items: delete: + description: >- + Delete an endpoint exception list item using the `id` or `item_id` + field. operationId: DeleteEndpointListItem parameters: - description: Either `id` or `item_id` must be specified @@ -104,8 +112,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Deletes an endpoint list item + summary: Delete an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API get: + description: >- + Get the details of an endpoint exception list item using the `id` or + `item_id` field. operationId: ReadEndpointListItem parameters: - description: Either `id` or `item_id` must be specified @@ -161,8 +174,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Reads an endpoint list item + summary: Get an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API post: + description: >- + Create an endpoint exception list item, and associate it with the + endpoint exception list. operationId: CreateEndpointListItem requestBody: content: @@ -237,8 +255,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Creates an endpoint list item + summary: Create an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API put: + description: >- + Update an endpoint exception list item using the `id` or `item_id` + field. operationId: UpdateEndpointListItem requestBody: content: @@ -318,9 +341,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Updates an endpoint list item + summary: Update an endpoint exception list item + tags: + - Security Solution Endpoint Exceptions API /api/endpoint_list/items/_find: get: + description: Get a list of all endpoint exception list items. operationId: FindEndpointListItems parameters: - description: > @@ -353,7 +379,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -422,7 +448,9 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error - summary: Finds endpoint list items + summary: Get endpoint exception list items + tags: + - Security Solution Endpoint Exceptions API components: schemas: EndpointList: @@ -489,7 +517,7 @@ components: type: string ExceptionListHumanId: $ref: '#/components/schemas/NonEmptyString' - description: 'Human readable string identifier, e.g. `trusted-linux-processes`' + description: Human readable string identifier, e.g. `trusted-linux-processes` ExceptionListId: $ref: '#/components/schemas/NonEmptyString' ExceptionListItem: @@ -851,3 +879,9 @@ components: type: http security: - BasicAuth: [] +tags: + - description: >- + Endpoint Exceptions API allows you to manage detection rule endpoint + exceptions to prevent a rule from generating an alert from incoming events + even when the rule's other criteria are met. + name: Security Solution Endpoint Exceptions API diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/scripts/openapi_bundle.js b/packages/kbn-securitysolution-endpoint-exceptions-common/scripts/openapi_bundle.js index 7d17eb56c3724..1c394ce1106ac 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/scripts/openapi_bundle.js +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/scripts/openapi_bundle.js @@ -27,6 +27,13 @@ const ROOT = resolve(__dirname, '..'); title: 'Security Solution Endpoint Exceptions API (Elastic Cloud Serverless)', description: 'Endpoint Exceptions API allow you to manage Endpoint lists.', }, + tags: [ + { + name: 'Security Solution Endpoint Exceptions API', + description: + "Endpoint Exceptions API allows you to manage detection rule endpoint exceptions to prevent a rule from generating an alert from incoming events even when the rule's other criteria are met.", + }, + ], }, }, }); @@ -44,6 +51,13 @@ const ROOT = resolve(__dirname, '..'); title: 'Security Solution Endpoint Exceptions API (Elastic Cloud and self-hosted)', description: 'Endpoint Exceptions API allow you to manage Endpoint lists.', }, + tags: [ + { + name: 'Security Solution Endpoint Exceptions API', + description: + "Endpoint Exceptions API allows you to manage detection rule endpoint exceptions to prevent a rule from generating an alert from incoming events even when the rule's other criteria are met.", + }, + ], }, }, }); diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.schema.yaml index 463009b233af1..5925d0bd923c0 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.schema.yaml @@ -8,7 +8,11 @@ paths: x-labels: [serverless, ess] operationId: CreateExceptionList x-codegen-enabled: true - summary: Creates an exception list + summary: Create an exception list + description: | + An exception list groups exception items and can be associated with detection rules. You can assign detection rules with multiple exception lists. + > info + > All exception items added to the same list are evaluated using `OR` logic. That is, if any of the items in a list evaluate to `true`, the exception prevents the rule from generating an alert. Likewise, `OR` logic is used for evaluating exceptions when more than one exception list is assigned to a rule. To use the `AND` operator, you can define multiple clauses (`entries`) in a single exception item. requestBody: description: Exception list's properties required: true diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.schema.yaml index f7eb416f953a6..47fa2895d27c6 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.schema.yaml @@ -8,7 +8,11 @@ paths: x-labels: [serverless, ess] operationId: CreateExceptionListItem x-codegen-enabled: true - summary: Creates an exception list item + summary: Create an exception list item + description: | + Create an exception item and associate it with the specified exception list. + > info + > Before creating exception items, you must create an exception list. requestBody: description: Exception list item's properties required: true diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.schema.yaml index 0928d9e7f4e21..6162d00d78ae8 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: CreateRuleExceptionListItems x-codegen-enabled: true - summary: Creates rule exception list items + summary: Create rule exception list items + description: Create exception items that apply to a single detection rule. parameters: - name: id in: path diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.schema.yaml index e76ec4c50c5c8..c4cee089e5836 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.schema.yaml @@ -8,7 +8,11 @@ paths: x-labels: [serverless, ess] operationId: CreateSharedExceptionList x-codegen-enabled: true - summary: Creates a shared exception list + summary: Create a shared exception list + description: | + An exception list groups exception items and can be associated with detection rules. A shared exception list can apply to multiple detection rules. + > info + > All exception items added to the same list are evaluated using `OR` logic. That is, if any of the items in a list evaluate to `true`, the exception prevents the rule from generating an alert. Likewise, `OR` logic is used for evaluating exceptions when more than one exception list is assigned to a rule. To use the `AND` operator, you can define multiple clauses (`entries`) in a single exception item. requestBody: required: true content: diff --git a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.schema.yaml index ccc0749dd206e..92afc3232efee 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: DeleteExceptionList x-codegen-enabled: true - summary: Deletes an exception list + summary: Delete an exception list + description: Delete an exception list using the `id` or `list_id` field. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.schema.yaml index e9d7fa0687044..9f57afcd5ab1c 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: DeleteExceptionListItem x-codegen-enabled: true - summary: Deletes an exception list item + summary: Delete an exception list item + description: Delete an exception list item using the `id` or `item_id` field. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.schema.yaml index f041fcb1d1062..758171327ee4c 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: DuplicateExceptionList x-codegen-enabled: true - summary: Duplicates an exception list + summary: Duplicate an exception list + description: Duplicate an existing exception list. parameters: - name: list_id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.schema.yaml index 41637963d9923..3232f46c238c8 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.schema.yaml @@ -8,8 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ExportExceptionList x-codegen-enabled: true - summary: Exports an exception list - description: Exports an exception list and its associated items to an .ndjson file + summary: Export an exception list + description: Export an exception list and its associated items to an NDJSON file. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.schema.yaml index f2b3aafdee107..e40f780af03ef 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: FindExceptionListItems x-codegen-enabled: true - summary: Finds exception list items + summary: Get exception list items + description: Get a list of all exception list items in the specified list. parameters: - name: list_id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.schema.yaml index a1df1d12a27ea..c46dacbab01d0 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: FindExceptionLists x-codegen-enabled: true - summary: Finds exception lists + summary: Get exception lists + description: Get a list of all exception lists. parameters: - name: filter in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.schema.yaml index dc67d1386475f..8ae3ac1aa2c0c 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.schema.yaml @@ -8,8 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ImportExceptionList x-codegen-enabled: true - summary: Imports an exception list - description: Imports an exception list and associated items + summary: Import an exception list + description: Import an exception list and its associated items from an NDJSON file. requestBody: required: true content: diff --git a/packages/kbn-securitysolution-exceptions-common/api/quickstart_client.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/quickstart_client.gen.ts index 52e11f1ea4033..4827baab85e90 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/quickstart_client.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/quickstart_client.gen.ts @@ -98,6 +98,12 @@ export class Client { this.kbnClient = options.kbnClient; this.log = options.log; } + /** + * An exception list groups exception items and can be associated with detection rules. You can assign detection rules with multiple exception lists. +> info +> All exception items added to the same list are evaluated using `OR` logic. That is, if any of the items in a list evaluate to `true`, the exception prevents the rule from generating an alert. Likewise, `OR` logic is used for evaluating exceptions when more than one exception list is assigned to a rule. To use the `AND` operator, you can define multiple clauses (`entries`) in a single exception item. + + */ async createExceptionList(props: CreateExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API CreateExceptionList`); return this.kbnClient @@ -111,6 +117,12 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Create an exception item and associate it with the specified exception list. +> info +> Before creating exception items, you must create an exception list. + + */ async createExceptionListItem(props: CreateExceptionListItemProps) { this.log.info(`${new Date().toISOString()} Calling API CreateExceptionListItem`); return this.kbnClient @@ -124,6 +136,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Create exception items that apply to a single detection rule. + */ async createRuleExceptionListItems(props: CreateRuleExceptionListItemsProps) { this.log.info(`${new Date().toISOString()} Calling API CreateRuleExceptionListItems`); return this.kbnClient @@ -137,6 +152,12 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * An exception list groups exception items and can be associated with detection rules. A shared exception list can apply to multiple detection rules. +> info +> All exception items added to the same list are evaluated using `OR` logic. That is, if any of the items in a list evaluate to `true`, the exception prevents the rule from generating an alert. Likewise, `OR` logic is used for evaluating exceptions when more than one exception list is assigned to a rule. To use the `AND` operator, you can define multiple clauses (`entries`) in a single exception item. + + */ async createSharedExceptionList(props: CreateSharedExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API CreateSharedExceptionList`); return this.kbnClient @@ -150,6 +171,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Delete an exception list using the `id` or `list_id` field. + */ async deleteExceptionList(props: DeleteExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API DeleteExceptionList`); return this.kbnClient @@ -164,6 +188,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Delete an exception list item using the `id` or `item_id` field. + */ async deleteExceptionListItem(props: DeleteExceptionListItemProps) { this.log.info(`${new Date().toISOString()} Calling API DeleteExceptionListItem`); return this.kbnClient @@ -178,6 +205,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Duplicate an existing exception list. + */ async duplicateExceptionList(props: DuplicateExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API DuplicateExceptionList`); return this.kbnClient @@ -193,7 +223,7 @@ export class Client { .catch(catchAxiosErrorFormatAndThrow); } /** - * Exports an exception list and its associated items to an .ndjson file + * Export an exception list and its associated items to an NDJSON file. */ async exportExceptionList(props: ExportExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API ExportExceptionList`); @@ -209,6 +239,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get a list of all exception list items in the specified list. + */ async findExceptionListItems(props: FindExceptionListItemsProps) { this.log.info(`${new Date().toISOString()} Calling API FindExceptionListItems`); return this.kbnClient @@ -223,6 +256,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get a list of all exception lists. + */ async findExceptionLists(props: FindExceptionListsProps) { this.log.info(`${new Date().toISOString()} Calling API FindExceptionLists`); return this.kbnClient @@ -238,7 +274,7 @@ export class Client { .catch(catchAxiosErrorFormatAndThrow); } /** - * Imports an exception list and associated items + * Import an exception list and its associated items from an NDJSON file. */ async importExceptionList(props: ImportExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API ImportExceptionList`); @@ -254,6 +290,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get the details of an exception list using the `id` or `list_id` field. + */ async readExceptionList(props: ReadExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API ReadExceptionList`); return this.kbnClient @@ -268,6 +307,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get the details of an exception list item using the `id` or `item_id` field. + */ async readExceptionListItem(props: ReadExceptionListItemProps) { this.log.info(`${new Date().toISOString()} Calling API ReadExceptionListItem`); return this.kbnClient @@ -282,6 +324,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get a summary of the specified exception list. + */ async readExceptionListSummary(props: ReadExceptionListSummaryProps) { this.log.info(`${new Date().toISOString()} Calling API ReadExceptionListSummary`); return this.kbnClient @@ -296,6 +341,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Update an exception list using the `id` or `list_id` field. + */ async updateExceptionList(props: UpdateExceptionListProps) { this.log.info(`${new Date().toISOString()} Calling API UpdateExceptionList`); return this.kbnClient @@ -309,6 +357,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Update an exception list item using the `id` or `item_id` field. + */ async updateExceptionListItem(props: UpdateExceptionListItemProps) { this.log.info(`${new Date().toISOString()} Calling API UpdateExceptionListItem`); return this.kbnClient diff --git a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.schema.yaml index 69f5b4a9a8aa2..0bf082c1713bd 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ReadExceptionList x-codegen-enabled: true - summary: Retrieves an exception list using its `id` or `list_id` field + summary: Get exception list details + description: Get the details of an exception list using the `id` or `list_id` field. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.schema.yaml index 9cc6b79b91e63..c271016a87eb5 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ReadExceptionListItem x-codegen-enabled: true - summary: Gets an exception list item + summary: Get an exception list item + description: Get the details of an exception list item using the `id` or `item_id` field. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.schema.yaml index bae534bf3260b..b0627111e877f 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ReadExceptionListSummary x-codegen-enabled: true - summary: Retrieves an exception list summary + summary: Get an exception list summary + description: Get a summary of the specified exception list. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.schema.yaml index a58caeb465428..5e8f3dfd8b509 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: UpdateExceptionList x-codegen-enabled: true - summary: Updates an exception list + summary: Update an exception list + description: Update an exception list using the `id` or `list_id` field. requestBody: description: Exception list's properties required: true diff --git a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.schema.yaml b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.schema.yaml index 180d4865f887b..2b8182aeb5c34 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: UpdateExceptionListItem x-codegen-enabled: true - summary: Updates an exception list item + summary: Update an exception list item + description: Update an exception list item using the `id` or `item_id` field. requestBody: description: Exception list item's properties required: true diff --git a/packages/kbn-securitysolution-exceptions-common/docs/openapi/ess/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml b/packages/kbn-securitysolution-exceptions-common/docs/openapi/ess/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml index 8acc028520f11..a5a7896ede736 100644 --- a/packages/kbn-securitysolution-exceptions-common/docs/openapi/ess/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/docs/openapi/ess/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml @@ -7,15 +7,16 @@ info: title: Security Solution Exceptions API (Elastic Cloud and self-hosted) version: '2023-10-31' servers: - - url: 'http://{kibana_host}:{port}' + - url: http://{kibana_host}:{port} variables: kibana_host: default: localhost port: default: '5601' paths: - '/api/detection_engine/rules/{id}/exceptions': + /api/detection_engine/rules/{id}/exceptions: post: + description: Create exception items that apply to a single detection rule. operationId: CreateRuleExceptionListItems parameters: - description: Detection rule's identifier @@ -73,11 +74,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates rule exception list items + summary: Create rule exception list items tags: - Security Solution Exceptions API /api/exception_lists: delete: + description: Delete an exception list using the `id` or `list_id` field. operationId: DeleteExceptionList parameters: - description: Either `id` or `list_id` must be specified @@ -137,10 +139,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes an exception list + summary: Delete an exception list tags: - Security Solution Exceptions API get: + description: Get the details of an exception list using the `id` or `list_id` field. operationId: ReadExceptionList parameters: - description: Either `id` or `list_id` must be specified @@ -200,10 +203,23 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Retrieves an exception list using its `id` or `list_id` field + summary: Get exception list details tags: - Security Solution Exceptions API post: + description: > + An exception list groups exception items and can be associated with + detection rules. You can assign detection rules with multiple exception + lists. + + > info + + > All exception items added to the same list are evaluated using `OR` + logic. That is, if any of the items in a list evaluate to `true`, the + exception prevents the rule from generating an alert. Likewise, `OR` + logic is used for evaluating exceptions when more than one exception + list is assigned to a rule. To use the `AND` operator, you can define + multiple clauses (`entries`) in a single exception item. operationId: CreateExceptionList requestBody: content: @@ -277,10 +293,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates an exception list + summary: Create an exception list tags: - Security Solution Exceptions API put: + description: Update an exception list using the `id` or `list_id` field. operationId: UpdateExceptionList requestBody: content: @@ -357,11 +374,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates an exception list + summary: Update an exception list tags: - Security Solution Exceptions API /api/exception_lists/_duplicate: post: + description: Duplicate an existing exception list. operationId: DuplicateExceptionList parameters: - description: Exception list's human identifier @@ -426,12 +444,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Duplicates an exception list + summary: Duplicate an exception list tags: - Security Solution Exceptions API /api/exception_lists/_export: post: - description: Exports an exception list and its associated items to an .ndjson file + description: Export an exception list and its associated items to an NDJSON file. operationId: ExportExceptionList parameters: - description: Exception list's identifier @@ -506,11 +524,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Exports an exception list + summary: Export an exception list tags: - Security Solution Exceptions API /api/exception_lists/_find: get: + description: Get a list of all exception lists. operationId: FindExceptionLists parameters: - description: > @@ -565,7 +584,7 @@ paths: required: false schema: type: string - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -626,12 +645,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds exception lists + summary: Get exception lists tags: - Security Solution Exceptions API /api/exception_lists/_import: post: - description: Imports an exception list and associated items + description: Import an exception list and its associated items from an NDJSON file. operationId: ImportExceptionList parameters: - description: > @@ -742,11 +761,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Imports an exception list + summary: Import an exception list tags: - Security Solution Exceptions API /api/exception_lists/items: delete: + description: Delete an exception list item using the `id` or `item_id` field. operationId: DeleteExceptionListItem parameters: - description: Either `id` or `item_id` must be specified @@ -806,10 +826,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes an exception list item + summary: Delete an exception list item tags: - Security Solution Exceptions API get: + description: >- + Get the details of an exception list item using the `id` or `item_id` + field. operationId: ReadExceptionListItem parameters: - description: Either `id` or `item_id` must be specified @@ -869,10 +892,17 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Gets an exception list item + summary: Get an exception list item tags: - Security Solution Exceptions API post: + description: > + Create an exception item and associate it with the specified exception + list. + + > info + + > Before creating exception items, you must create an exception list. operationId: CreateExceptionListItem requestBody: content: @@ -956,10 +986,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates an exception list item + summary: Create an exception list item tags: - Security Solution Exceptions API put: + description: Update an exception list item using the `id` or `item_id` field. operationId: UpdateExceptionListItem requestBody: content: @@ -1047,11 +1078,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates an exception list item + summary: Update an exception list item tags: - Security Solution Exceptions API /api/exception_lists/items/_find: get: + description: Get a list of all exception list items in the specified list. operationId: FindExceptionListItems parameters: - description: List's id @@ -1114,7 +1146,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -1183,11 +1215,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds exception list items + summary: Get exception list items tags: - Security Solution Exceptions API /api/exception_lists/summary: get: + description: Get a summary of the specified exception list. operationId: ReadExceptionListSummary parameters: - description: Exception list's identifier generated upon creation @@ -1266,11 +1299,24 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Retrieves an exception list summary + summary: Get an exception list summary tags: - Security Solution Exceptions API /api/exceptions/shared: post: + description: > + An exception list groups exception items and can be associated with + detection rules. A shared exception list can apply to multiple detection + rules. + + > info + + > All exception items added to the same list are evaluated using `OR` + logic. That is, if any of the items in a list evaluate to `true`, the + exception prevents the rule from generating an alert. Likewise, `OR` + logic is used for evaluating exceptions when more than one exception + list is assigned to a rule. To use the `AND` operator, you can define + multiple clauses (`entries`) in a single exception item. operationId: CreateSharedExceptionList requestBody: content: @@ -1325,7 +1371,7 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates a shared exception list + summary: Create a shared exception list tags: - Security Solution Exceptions API components: @@ -1444,7 +1490,7 @@ components: type: string ExceptionListHumanId: $ref: '#/components/schemas/NonEmptyString' - description: 'Human readable string identifier, e.g. `trusted-linux-processes`' + description: Human readable string identifier, e.g. `trusted-linux-processes` ExceptionListId: $ref: '#/components/schemas/NonEmptyString' ExceptionListItem: diff --git a/packages/kbn-securitysolution-exceptions-common/docs/openapi/serverless/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml b/packages/kbn-securitysolution-exceptions-common/docs/openapi/serverless/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml index cd104baacda20..796216511a0d0 100644 --- a/packages/kbn-securitysolution-exceptions-common/docs/openapi/serverless/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml +++ b/packages/kbn-securitysolution-exceptions-common/docs/openapi/serverless/security_solution_exceptions_api_2023_10_31.bundled.schema.yaml @@ -7,15 +7,16 @@ info: title: Security Solution Exceptions API (Elastic Cloud Serverless) version: '2023-10-31' servers: - - url: 'http://{kibana_host}:{port}' + - url: http://{kibana_host}:{port} variables: kibana_host: default: localhost port: default: '5601' paths: - '/api/detection_engine/rules/{id}/exceptions': + /api/detection_engine/rules/{id}/exceptions: post: + description: Create exception items that apply to a single detection rule. operationId: CreateRuleExceptionListItems parameters: - description: Detection rule's identifier @@ -73,11 +74,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates rule exception list items + summary: Create rule exception list items tags: - Security Solution Exceptions API /api/exception_lists: delete: + description: Delete an exception list using the `id` or `list_id` field. operationId: DeleteExceptionList parameters: - description: Either `id` or `list_id` must be specified @@ -137,10 +139,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes an exception list + summary: Delete an exception list tags: - Security Solution Exceptions API get: + description: Get the details of an exception list using the `id` or `list_id` field. operationId: ReadExceptionList parameters: - description: Either `id` or `list_id` must be specified @@ -200,10 +203,23 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Retrieves an exception list using its `id` or `list_id` field + summary: Get exception list details tags: - Security Solution Exceptions API post: + description: > + An exception list groups exception items and can be associated with + detection rules. You can assign detection rules with multiple exception + lists. + + > info + + > All exception items added to the same list are evaluated using `OR` + logic. That is, if any of the items in a list evaluate to `true`, the + exception prevents the rule from generating an alert. Likewise, `OR` + logic is used for evaluating exceptions when more than one exception + list is assigned to a rule. To use the `AND` operator, you can define + multiple clauses (`entries`) in a single exception item. operationId: CreateExceptionList requestBody: content: @@ -277,10 +293,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates an exception list + summary: Create an exception list tags: - Security Solution Exceptions API put: + description: Update an exception list using the `id` or `list_id` field. operationId: UpdateExceptionList requestBody: content: @@ -357,11 +374,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates an exception list + summary: Update an exception list tags: - Security Solution Exceptions API /api/exception_lists/_duplicate: post: + description: Duplicate an existing exception list. operationId: DuplicateExceptionList parameters: - description: Exception list's human identifier @@ -426,12 +444,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Duplicates an exception list + summary: Duplicate an exception list tags: - Security Solution Exceptions API /api/exception_lists/_export: post: - description: Exports an exception list and its associated items to an .ndjson file + description: Export an exception list and its associated items to an NDJSON file. operationId: ExportExceptionList parameters: - description: Exception list's identifier @@ -506,11 +524,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Exports an exception list + summary: Export an exception list tags: - Security Solution Exceptions API /api/exception_lists/_find: get: + description: Get a list of all exception lists. operationId: FindExceptionLists parameters: - description: > @@ -565,7 +584,7 @@ paths: required: false schema: type: string - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -626,12 +645,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds exception lists + summary: Get exception lists tags: - Security Solution Exceptions API /api/exception_lists/_import: post: - description: Imports an exception list and associated items + description: Import an exception list and its associated items from an NDJSON file. operationId: ImportExceptionList parameters: - description: > @@ -742,11 +761,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Imports an exception list + summary: Import an exception list tags: - Security Solution Exceptions API /api/exception_lists/items: delete: + description: Delete an exception list item using the `id` or `item_id` field. operationId: DeleteExceptionListItem parameters: - description: Either `id` or `item_id` must be specified @@ -806,10 +826,13 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes an exception list item + summary: Delete an exception list item tags: - Security Solution Exceptions API get: + description: >- + Get the details of an exception list item using the `id` or `item_id` + field. operationId: ReadExceptionListItem parameters: - description: Either `id` or `item_id` must be specified @@ -869,10 +892,17 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Gets an exception list item + summary: Get an exception list item tags: - Security Solution Exceptions API post: + description: > + Create an exception item and associate it with the specified exception + list. + + > info + + > Before creating exception items, you must create an exception list. operationId: CreateExceptionListItem requestBody: content: @@ -956,10 +986,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates an exception list item + summary: Create an exception list item tags: - Security Solution Exceptions API put: + description: Update an exception list item using the `id` or `item_id` field. operationId: UpdateExceptionListItem requestBody: content: @@ -1047,11 +1078,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates an exception list item + summary: Update an exception list item tags: - Security Solution Exceptions API /api/exception_lists/items/_find: get: + description: Get a list of all exception list items in the specified list. operationId: FindExceptionListItems parameters: - description: List's id @@ -1114,7 +1146,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -1183,11 +1215,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds exception list items + summary: Get exception list items tags: - Security Solution Exceptions API /api/exception_lists/summary: get: + description: Get a summary of the specified exception list. operationId: ReadExceptionListSummary parameters: - description: Exception list's identifier generated upon creation @@ -1266,11 +1299,24 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Retrieves an exception list summary + summary: Get an exception list summary tags: - Security Solution Exceptions API /api/exceptions/shared: post: + description: > + An exception list groups exception items and can be associated with + detection rules. A shared exception list can apply to multiple detection + rules. + + > info + + > All exception items added to the same list are evaluated using `OR` + logic. That is, if any of the items in a list evaluate to `true`, the + exception prevents the rule from generating an alert. Likewise, `OR` + logic is used for evaluating exceptions when more than one exception + list is assigned to a rule. To use the `AND` operator, you can define + multiple clauses (`entries`) in a single exception item. operationId: CreateSharedExceptionList requestBody: content: @@ -1325,7 +1371,7 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates a shared exception list + summary: Create a shared exception list tags: - Security Solution Exceptions API components: @@ -1444,7 +1490,7 @@ components: type: string ExceptionListHumanId: $ref: '#/components/schemas/NonEmptyString' - description: 'Human readable string identifier, e.g. `trusted-linux-processes`' + description: Human readable string identifier, e.g. `trusted-linux-processes` ExceptionListId: $ref: '#/components/schemas/NonEmptyString' ExceptionListItem: diff --git a/packages/kbn-securitysolution-lists-common/api/create_list/create_list.schema.yaml b/packages/kbn-securitysolution-lists-common/api/create_list/create_list.schema.yaml index bae6565b0f1e0..191e973beba61 100644 --- a/packages/kbn-securitysolution-lists-common/api/create_list/create_list.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/create_list/create_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: CreateList x-codegen-enabled: true - summary: Creates a list + summary: Create a list + description: Create a new list. requestBody: description: List's properties required: true diff --git a/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.schema.yaml b/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.schema.yaml index dcb1baa3ee3d8..c775a9c7d873f 100644 --- a/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: CreateListIndex x-codegen-enabled: true - summary: Creates necessary list data streams + summary: Create list data streams + description: Create `.lists` and `.items` data streams in the relevant space. responses: 200: description: Successful response diff --git a/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.schema.yaml b/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.schema.yaml index 10fef88e7a042..01121d0143925 100644 --- a/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.schema.yaml @@ -8,7 +8,13 @@ paths: x-labels: [serverless, ess] operationId: CreateListItem x-codegen-enabled: true - summary: Creates a list item + summary: Create a list item + description: | + Create a list item and associate it with the specified list. + + All list items in the same list must be the same type. For example, each list item in an `ip` list must define a specific IP address. + > info + > Before creating a list item, you must create a list. requestBody: description: List item's properties required: true diff --git a/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.schema.yaml b/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.schema.yaml index 4a5974003918e..7098753636379 100644 --- a/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.schema.yaml @@ -8,7 +8,11 @@ paths: x-labels: [serverless, ess] operationId: DeleteList x-codegen-enabled: true - summary: Deletes a list + summary: Delete a list + description: | + Delete a list using the list ID. + > info + > When you delete a list, all of its list items are also deleted. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.schema.yaml b/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.schema.yaml index 34dcf91f548d0..4f4b0f00e8817 100644 --- a/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: DeleteListIndex x-codegen-enabled: true - summary: Deletes list data streams + summary: Delete list data streams + description: Delete the `.lists` and `.items` data streams. responses: 200: description: Successful response diff --git a/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.schema.yaml b/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.schema.yaml index 413c85b55dd3b..28913259387dd 100644 --- a/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: DeleteListItem x-codegen-enabled: true - summary: Deletes a list item + summary: Delete a list item + description: Delete a list item using its `id`, or its `list_id` and `value` fields. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.schema.yaml b/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.schema.yaml index 06eda41d042fb..8d185a23b64c9 100644 --- a/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.schema.yaml @@ -8,8 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ExportListItems x-codegen-enabled: true - summary: Exports list items - description: Exports list item values from the specified list + summary: Export list items + description: Export list item values from the specified list. parameters: - name: list_id in: query diff --git a/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.schema.yaml b/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.schema.yaml index b08e7b4719374..21cf4ffd61841 100644 --- a/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: FindListItems x-codegen-enabled: true - summary: Finds list items + summary: Get list items + description: Get all list items in the specified list. parameters: - name: list_id in: query diff --git a/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.schema.yaml b/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.schema.yaml index 071dba08254ec..3bb55decacff6 100644 --- a/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: FindLists x-codegen-enabled: true - summary: Finds lists + summary: Get lists + description: Get a paginated subset of lists. By default, the first page is returned, with 20 results per page. parameters: - name: page in: query diff --git a/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.schema.yaml b/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.schema.yaml index 895e222c05207..520213e949c1d 100644 --- a/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.schema.yaml @@ -8,9 +8,9 @@ paths: x-labels: [serverless, ess] operationId: ImportListItems x-codegen-enabled: true - summary: Imports list items + summary: Import list items description: | - Imports a list of items from a `.txt` or `.csv` file. The maximum file size is 9 million bytes. + Import list items from a TXT or CSV file. The maximum file size is 9 million bytes. You can import items to a new or existing list. requestBody: diff --git a/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.schema.yaml b/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.schema.yaml index 1ca568acb2bbc..b98b34e6347eb 100644 --- a/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: PatchList x-codegen-enabled: true - summary: Patches a list + summary: Patch a list + description: Update specific fields of an existing list using the list ID. requestBody: description: List's properties required: true diff --git a/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.schema.yaml b/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.schema.yaml index a17982db14452..f79efc4691dde 100644 --- a/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: PatchListItem x-codegen-enabled: true - summary: Patches a list item + summary: Patch a list item + description: Update specific fields of an existing list item using the list item ID. requestBody: description: List item's properties required: true diff --git a/packages/kbn-securitysolution-lists-common/api/quickstart_client.gen.ts b/packages/kbn-securitysolution-lists-common/api/quickstart_client.gen.ts index a6e314cd5d717..7bf343d935f2c 100644 --- a/packages/kbn-securitysolution-lists-common/api/quickstart_client.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/quickstart_client.gen.ts @@ -77,6 +77,9 @@ export class Client { this.kbnClient = options.kbnClient; this.log = options.log; } + /** + * Create a new list. + */ async createList(props: CreateListProps) { this.log.info(`${new Date().toISOString()} Calling API CreateList`); return this.kbnClient @@ -90,6 +93,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Create `.lists` and `.items` data streams in the relevant space. + */ async createListIndex() { this.log.info(`${new Date().toISOString()} Calling API CreateListIndex`); return this.kbnClient @@ -102,6 +108,14 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Create a list item and associate it with the specified list. + +All list items in the same list must be the same type. For example, each list item in an `ip` list must define a specific IP address. +> info +> Before creating a list item, you must create a list. + + */ async createListItem(props: CreateListItemProps) { this.log.info(`${new Date().toISOString()} Calling API CreateListItem`); return this.kbnClient @@ -115,6 +129,12 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Delete a list using the list ID. +> info +> When you delete a list, all of its list items are also deleted. + + */ async deleteList(props: DeleteListProps) { this.log.info(`${new Date().toISOString()} Calling API DeleteList`); return this.kbnClient @@ -129,6 +149,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Delete the `.lists` and `.items` data streams. + */ async deleteListIndex() { this.log.info(`${new Date().toISOString()} Calling API DeleteListIndex`); return this.kbnClient @@ -141,6 +164,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Delete a list item using its `id`, or its `list_id` and `value` fields. + */ async deleteListItem(props: DeleteListItemProps) { this.log.info(`${new Date().toISOString()} Calling API DeleteListItem`); return this.kbnClient @@ -156,7 +182,7 @@ export class Client { .catch(catchAxiosErrorFormatAndThrow); } /** - * Exports list item values from the specified list + * Export list item values from the specified list. */ async exportListItems(props: ExportListItemsProps) { this.log.info(`${new Date().toISOString()} Calling API ExportListItems`); @@ -172,6 +198,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get all list items in the specified list. + */ async findListItems(props: FindListItemsProps) { this.log.info(`${new Date().toISOString()} Calling API FindListItems`); return this.kbnClient @@ -186,6 +215,9 @@ export class Client { }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get a paginated subset of lists. By default, the first page is returned, with 20 results per page. + */ async findLists(props: FindListsProps) { this.log.info(`${new Date().toISOString()} Calling API FindLists`); return this.kbnClient @@ -201,7 +233,7 @@ export class Client { .catch(catchAxiosErrorFormatAndThrow); } /** - * Imports a list of items from a `.txt` or `.csv` file. The maximum file size is 9 million bytes. + * Import list items from a TXT or CSV file. The maximum file size is 9 million bytes. You can import items to a new or existing list. @@ -220,6 +252,9 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Update specific fields of an existing list using the list ID. + */ async patchList(props: PatchListProps) { this.log.info(`${new Date().toISOString()} Calling API PatchList`); return this.kbnClient @@ -233,6 +268,9 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Update specific fields of an existing list item using the list item ID. + */ async patchListItem(props: PatchListItemProps) { this.log.info(`${new Date().toISOString()} Calling API PatchListItem`); return this.kbnClient @@ -246,6 +284,9 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get the details of a list using the list ID. + */ async readList(props: ReadListProps) { this.log.info(`${new Date().toISOString()} Calling API ReadList`); return this.kbnClient @@ -260,6 +301,9 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Verify that `.lists` and `.items` data streams exist. + */ async readListIndex() { this.log.info(`${new Date().toISOString()} Calling API ReadListIndex`); return this.kbnClient @@ -272,6 +316,9 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Get the details of a list item. + */ async readListItem(props: ReadListItemProps) { this.log.info(`${new Date().toISOString()} Calling API ReadListItem`); return this.kbnClient @@ -298,6 +345,12 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Update a list using the list ID. The original list is replaced, and all unspecified fields are deleted. +> info +> You cannot modify the `id` value. + + */ async updateList(props: UpdateListProps) { this.log.info(`${new Date().toISOString()} Calling API UpdateList`); return this.kbnClient @@ -311,6 +364,12 @@ You can import items to a new or existing list. }) .catch(catchAxiosErrorFormatAndThrow); } + /** + * Update a list item using the list item ID. The original list item is replaced, and all unspecified fields are deleted. +> info +> You cannot modify the `id` value. + + */ async updateListItem(props: UpdateListItemProps) { this.log.info(`${new Date().toISOString()} Calling API UpdateListItem`); return this.kbnClient diff --git a/packages/kbn-securitysolution-lists-common/api/read_list/read_list.schema.yaml b/packages/kbn-securitysolution-lists-common/api/read_list/read_list.schema.yaml index 770c6fa8a9e7d..d932e16f528a5 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list/read_list.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/read_list/read_list.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ReadList x-codegen-enabled: true - summary: Retrieves a list using its id field + summary: Get list details + description: Get the details of a list using the list ID. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.schema.yaml b/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.schema.yaml index 3706563c008ce..b675264600157 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ReadListIndex x-codegen-enabled: true - summary: Get list data stream existence status + summary: Get status of list data streams + description: Verify that `.lists` and `.items` data streams exist. responses: 200: description: Successful response diff --git a/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.schema.yaml b/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.schema.yaml index fe4a6046f012c..4d686f5452e0c 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.schema.yaml @@ -8,7 +8,8 @@ paths: x-labels: [serverless, ess] operationId: ReadListItem x-codegen-enabled: true - summary: Gets a list item + summary: Get a list item + description: Get the details of a list item. parameters: - name: id in: query diff --git a/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.schema.yaml b/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.schema.yaml index fd22321c9ed29..ec8604e80694e 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.schema.yaml @@ -8,7 +8,7 @@ paths: x-labels: [serverless, ess] operationId: ReadListPrivileges x-codegen-enabled: true - summary: Gets list privileges + summary: Get list privileges responses: 200: description: Successful response diff --git a/packages/kbn-securitysolution-lists-common/api/update_list/update_list.schema.yaml b/packages/kbn-securitysolution-lists-common/api/update_list/update_list.schema.yaml index b31bea393c91b..c41b52427b63d 100644 --- a/packages/kbn-securitysolution-lists-common/api/update_list/update_list.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/update_list/update_list.schema.yaml @@ -8,7 +8,11 @@ paths: x-labels: [serverless, ess] operationId: UpdateList x-codegen-enabled: true - summary: Updates a list + summary: Update a list + description: | + Update a list using the list ID. The original list is replaced, and all unspecified fields are deleted. + > info + > You cannot modify the `id` value. requestBody: description: List's properties required: true diff --git a/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.schema.yaml b/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.schema.yaml index 95a4df349ff93..6b05e01f35aab 100644 --- a/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.schema.yaml @@ -8,7 +8,11 @@ paths: x-labels: [serverless, ess] operationId: UpdateListItem x-codegen-enabled: true - summary: Updates a list item + summary: Update a list item + description: | + Update a list item using the list item ID. The original list item is replaced, and all unspecified fields are deleted. + > info + > You cannot modify the `id` value. requestBody: description: List item's properties required: true diff --git a/packages/kbn-securitysolution-lists-common/docs/openapi/ess/security_solution_lists_api_2023_10_31.bundled.schema.yaml b/packages/kbn-securitysolution-lists-common/docs/openapi/ess/security_solution_lists_api_2023_10_31.bundled.schema.yaml index 7fdb215489101..d73091d6e5a1b 100644 --- a/packages/kbn-securitysolution-lists-common/docs/openapi/ess/security_solution_lists_api_2023_10_31.bundled.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/docs/openapi/ess/security_solution_lists_api_2023_10_31.bundled.schema.yaml @@ -1,10 +1,10 @@ openapi: 3.0.3 info: - description: 'Lists API allows you to manage lists of keywords, IPs or IP ranges items.' + description: Lists API allows you to manage lists of keywords, IPs or IP ranges items. title: Security Solution Lists API (Elastic Cloud and self-hosted) version: '2023-10-31' servers: - - url: 'http://{kibana_host}:{port}' + - url: http://{kibana_host}:{port} variables: kibana_host: default: localhost @@ -13,6 +13,10 @@ servers: paths: /api/lists: delete: + description: | + Delete a list using the list ID. + > info + > When you delete a list, all of its list items are also deleted. operationId: DeleteList parameters: - description: List's `id` value @@ -72,10 +76,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes a list + summary: Delete a list tags: - Security Solution Lists API get: + description: Get the details of a list using the list ID. operationId: ReadList parameters: - description: List's `id` value @@ -123,10 +128,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Retrieves a list using its id field + summary: Get list details tags: - Security Solution Lists API patch: + description: Update specific fields of an existing list using the list ID. operationId: PatchList requestBody: content: @@ -190,10 +196,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Patches a list + summary: Patch a list tags: - Security Solution Lists API post: + description: Create a new list. operationId: CreateList requestBody: content: @@ -264,10 +271,17 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates a list + summary: Create a list tags: - Security Solution Lists API put: + description: > + Update a list using the list ID. The original list is replaced, and all + unspecified fields are deleted. + + > info + + > You cannot modify the `id` value. operationId: UpdateList requestBody: content: @@ -333,11 +347,14 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates a list + summary: Update a list tags: - Security Solution Lists API /api/lists/_find: get: + description: >- + Get a paginated subset of lists. By default, the first page is returned, + with 20 results per page. operationId: FindLists parameters: - description: The page number to return @@ -358,7 +375,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -446,11 +463,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds lists + summary: Get lists tags: - Security Solution Lists API /api/lists/index: delete: + description: Delete the `.lists` and `.items` data streams. operationId: DeleteListIndex responses: '200': @@ -496,10 +514,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes list data streams + summary: Delete list data streams tags: - Security Solution Lists API get: + description: Verify that `.lists` and `.items` data streams exist. operationId: ReadListIndex responses: '200': @@ -548,10 +567,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Get list data stream existence status + summary: Get status of list data streams tags: - Security Solution Lists API post: + description: Create `.lists` and `.items` data streams in the relevant space. operationId: CreateListIndex responses: '200': @@ -597,11 +617,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates necessary list data streams + summary: Create list data streams tags: - Security Solution Lists API /api/lists/items: delete: + description: Delete a list item using its `id`, or its `list_id` and `value` fields. operationId: DeleteListItem parameters: - description: Required if `list_id` and `value` are not specified @@ -678,10 +699,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes a list item + summary: Delete a list item tags: - Security Solution Lists API get: + description: Get the details of a list item. operationId: ReadListItem parameters: - description: Required if `list_id` and `value` are not specified @@ -745,10 +767,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Gets a list item + summary: Get a list item tags: - Security Solution Lists API patch: + description: Update specific fields of an existing list item using the list item ID. operationId: PatchListItem requestBody: content: @@ -816,10 +839,20 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Patches a list item + summary: Patch a list item tags: - Security Solution Lists API post: + description: > + Create a list item and associate it with the specified list. + + + All list items in the same list must be the same type. For example, each + list item in an `ip` list must define a specific IP address. + + > info + + > Before creating a list item, you must create a list. operationId: CreateListItem requestBody: content: @@ -888,10 +921,17 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates a list item + summary: Create a list item tags: - Security Solution Lists API put: + description: > + Update a list item using the list item ID. The original list item is + replaced, and all unspecified fields are deleted. + + > info + + > You cannot modify the `id` value. operationId: UpdateListItem requestBody: content: @@ -951,12 +991,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates a list item + summary: Update a list item tags: - Security Solution Lists API /api/lists/items/_export: post: - description: Exports list item values from the specified list + description: Export list item values from the specified list. operationId: ExportListItems parameters: - description: List's id to export @@ -1006,11 +1046,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Exports list items + summary: Export list items tags: - Security Solution Lists API /api/lists/items/_find: get: + description: Get all list items in the specified list. operationId: FindListItems parameters: - description: List's id @@ -1037,7 +1078,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -1125,14 +1166,14 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds list items + summary: Get list items tags: - Security Solution Lists API /api/lists/items/_import: post: description: > - Imports a list of items from a `.txt` or `.csv` file. The maximum file - size is 9 million bytes. + Import list items from a TXT or CSV file. The maximum file size is 9 + million bytes. You can import items to a new or existing list. @@ -1232,7 +1273,7 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Imports list items + summary: Import list items tags: - Security Solution Lists API /api/lists/privileges: @@ -1282,7 +1323,7 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Gets list privileges + summary: Get list privileges tags: - Security Solution Lists API components: @@ -1521,5 +1562,5 @@ components: security: - BasicAuth: [] tags: - - description: 'Lists API allows you to manage lists of keywords, IPs or IP ranges items.' + - description: Lists API allows you to manage lists of keywords, IPs or IP ranges items. name: Security Solution Lists API diff --git a/packages/kbn-securitysolution-lists-common/docs/openapi/serverless/security_solution_lists_api_2023_10_31.bundled.schema.yaml b/packages/kbn-securitysolution-lists-common/docs/openapi/serverless/security_solution_lists_api_2023_10_31.bundled.schema.yaml index c55ffe963a607..971511110c41c 100644 --- a/packages/kbn-securitysolution-lists-common/docs/openapi/serverless/security_solution_lists_api_2023_10_31.bundled.schema.yaml +++ b/packages/kbn-securitysolution-lists-common/docs/openapi/serverless/security_solution_lists_api_2023_10_31.bundled.schema.yaml @@ -1,10 +1,10 @@ openapi: 3.0.3 info: - description: 'Lists API allows you to manage lists of keywords, IPs or IP ranges items.' + description: Lists API allows you to manage lists of keywords, IPs or IP ranges items. title: Security Solution Lists API (Elastic Cloud Serverless) version: '2023-10-31' servers: - - url: 'http://{kibana_host}:{port}' + - url: http://{kibana_host}:{port} variables: kibana_host: default: localhost @@ -13,6 +13,10 @@ servers: paths: /api/lists: delete: + description: | + Delete a list using the list ID. + > info + > When you delete a list, all of its list items are also deleted. operationId: DeleteList parameters: - description: List's `id` value @@ -72,10 +76,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes a list + summary: Delete a list tags: - Security Solution Lists API get: + description: Get the details of a list using the list ID. operationId: ReadList parameters: - description: List's `id` value @@ -123,10 +128,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Retrieves a list using its id field + summary: Get list details tags: - Security Solution Lists API patch: + description: Update specific fields of an existing list using the list ID. operationId: PatchList requestBody: content: @@ -190,10 +196,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Patches a list + summary: Patch a list tags: - Security Solution Lists API post: + description: Create a new list. operationId: CreateList requestBody: content: @@ -264,10 +271,17 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates a list + summary: Create a list tags: - Security Solution Lists API put: + description: > + Update a list using the list ID. The original list is replaced, and all + unspecified fields are deleted. + + > info + + > You cannot modify the `id` value. operationId: UpdateList requestBody: content: @@ -333,11 +347,14 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates a list + summary: Update a list tags: - Security Solution Lists API /api/lists/_find: get: + description: >- + Get a paginated subset of lists. By default, the first page is returned, + with 20 results per page. operationId: FindLists parameters: - description: The page number to return @@ -358,7 +375,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -446,11 +463,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds lists + summary: Get lists tags: - Security Solution Lists API /api/lists/index: delete: + description: Delete the `.lists` and `.items` data streams. operationId: DeleteListIndex responses: '200': @@ -496,10 +514,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes list data streams + summary: Delete list data streams tags: - Security Solution Lists API get: + description: Verify that `.lists` and `.items` data streams exist. operationId: ReadListIndex responses: '200': @@ -548,10 +567,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Get list data stream existence status + summary: Get status of list data streams tags: - Security Solution Lists API post: + description: Create `.lists` and `.items` data streams in the relevant space. operationId: CreateListIndex responses: '200': @@ -597,11 +617,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates necessary list data streams + summary: Create list data streams tags: - Security Solution Lists API /api/lists/items: delete: + description: Delete a list item using its `id`, or its `list_id` and `value` fields. operationId: DeleteListItem parameters: - description: Required if `list_id` and `value` are not specified @@ -678,10 +699,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Deletes a list item + summary: Delete a list item tags: - Security Solution Lists API get: + description: Get the details of a list item. operationId: ReadListItem parameters: - description: Required if `list_id` and `value` are not specified @@ -745,10 +767,11 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Gets a list item + summary: Get a list item tags: - Security Solution Lists API patch: + description: Update specific fields of an existing list item using the list item ID. operationId: PatchListItem requestBody: content: @@ -816,10 +839,20 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Patches a list item + summary: Patch a list item tags: - Security Solution Lists API post: + description: > + Create a list item and associate it with the specified list. + + + All list items in the same list must be the same type. For example, each + list item in an `ip` list must define a specific IP address. + + > info + + > Before creating a list item, you must create a list. operationId: CreateListItem requestBody: content: @@ -888,10 +921,17 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Creates a list item + summary: Create a list item tags: - Security Solution Lists API put: + description: > + Update a list item using the list item ID. The original list item is + replaced, and all unspecified fields are deleted. + + > info + + > You cannot modify the `id` value. operationId: UpdateListItem requestBody: content: @@ -951,12 +991,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Updates a list item + summary: Update a list item tags: - Security Solution Lists API /api/lists/items/_export: post: - description: Exports list item values from the specified list + description: Export list item values from the specified list. operationId: ExportListItems parameters: - description: List's id to export @@ -1006,11 +1046,12 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Exports list items + summary: Export list items tags: - Security Solution Lists API /api/lists/items/_find: get: + description: Get all list items in the specified list. operationId: FindListItems parameters: - description: List's id @@ -1037,7 +1078,7 @@ paths: required: false schema: $ref: '#/components/schemas/NonEmptyString' - - description: 'Determines the sort order, which can be `desc` or `asc`' + - description: Determines the sort order, which can be `desc` or `asc` in: query name: sort_order required: false @@ -1125,14 +1166,14 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Finds list items + summary: Get list items tags: - Security Solution Lists API /api/lists/items/_import: post: description: > - Imports a list of items from a `.txt` or `.csv` file. The maximum file - size is 9 million bytes. + Import list items from a TXT or CSV file. The maximum file size is 9 + million bytes. You can import items to a new or existing list. @@ -1232,7 +1273,7 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Imports list items + summary: Import list items tags: - Security Solution Lists API /api/lists/privileges: @@ -1282,7 +1323,7 @@ paths: schema: $ref: '#/components/schemas/SiemErrorResponse' description: Internal server error response - summary: Gets list privileges + summary: Get list privileges tags: - Security Solution Lists API components: @@ -1521,5 +1562,5 @@ components: security: - BasicAuth: [] tags: - - description: 'Lists API allows you to manage lists of keywords, IPs or IP ranges items.' + - description: Lists API allows you to manage lists of keywords, IPs or IP ranges items. name: Security Solution Lists API diff --git a/packages/kbn-test/src/functional_test_runner/lib/config/ftr_configs_manifest.ts b/packages/kbn-test/src/functional_test_runner/lib/config/ftr_configs_manifest.ts index 1afec50506790..f7648bb9ea556 100644 --- a/packages/kbn-test/src/functional_test_runner/lib/config/ftr_configs_manifest.ts +++ b/packages/kbn-test/src/functional_test_runner/lib/config/ftr_configs_manifest.ts @@ -45,9 +45,9 @@ export const getAllFtrConfigsAndManifests = () => { const allFtrConfigs: string[] = []; for (const manifestRelPath of manifestPaths.all) { - const manifest: FtrConfigsManifest = JsYaml.safeLoad( + const manifest = JsYaml.load( Fs.readFileSync(Path.resolve(REPO_ROOT, manifestRelPath), 'utf8') - ); + ) as FtrConfigsManifest; const ftrConfigsInManifest = [ Object.values(manifest.enabled ?? []), diff --git a/packages/kbn-text-based-editor/README.md b/packages/kbn-text-based-editor/README.md index 2bb9ae5887f24..ae7846a58d207 100644 --- a/packages/kbn-text-based-editor/README.md +++ b/packages/kbn-text-based-editor/README.md @@ -14,7 +14,6 @@ In order to enable text based languages on your unified search bar add `textBase ## Languages supported -- SQL: based on the Elasticsearch sql api - ESQL: based on the Elastisearch esql api diff --git a/packages/kbn-text-based-editor/package.json b/packages/kbn-text-based-editor/package.json index 3eeb282f953c2..47d3d426b21f2 100644 --- a/packages/kbn-text-based-editor/package.json +++ b/packages/kbn-text-based-editor/package.json @@ -5,10 +5,5 @@ "license": "Elastic License 2.0 OR AGPL-3.0-only OR SSPL-1.0", "sideEffects": [ "*.scss" - ], - "scripts": { - "make:docs": "ts-node --transpileOnly scripts/generate_esql_docs.ts", - "postmake:docs": "yarn run lint:fix", - "lint:fix": "cd ../.. && node ./scripts/eslint --fix ./packages/kbn-text-based-editor/src/inline_documentation/generated" - } + ] } diff --git a/packages/kbn-text-based-editor/src/ecs_metadata_helper.ts b/packages/kbn-text-based-editor/src/ecs_metadata_helper.ts deleted file mode 100644 index 702c998738e46..0000000000000 --- a/packages/kbn-text-based-editor/src/ecs_metadata_helper.ts +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import type { ESQLRealField } from '@kbn/esql-validation-autocomplete'; -import type { FieldsMetadataPublicStart } from '@kbn/fields-metadata-plugin/public'; -import { chunk } from 'lodash'; - -const removeKeywordSuffix = (name: string) => { - return name.endsWith('.keyword') ? name.slice(0, -8) : name; -}; - -/** - * Returns columns with the metadata/description (e.g ECS info) - * if available - * - * @param columns - * @param fieldsMetadata - * @returns - */ -export async function getColumnsWithMetadata( - columns: Array>, - fieldsMetadata?: FieldsMetadataPublicStart -): Promise { - if (!fieldsMetadata) return columns; - - try { - const fieldsMetadataClient = await fieldsMetadata?.getClient(); - if (fieldsMetadataClient) { - const fields = await fieldsMetadataClient.find({ - fieldNames: columns.map((c) => c.name), - attributes: ['description', 'type'], - }); - - if (fields?.fields) { - return columns.map((c) => { - // Metadata services gives description for - // 'ecs.version' but not 'ecs.version.keyword' - // but both should show description if available - const metadata = fields.fields[removeKeywordSuffix(c.name)]; - - // Need to convert metadata's type (e.g. keyword) to ES|QL type (e.g. string) to check if they are the same - if (!metadata || (metadata?.type && metadata.type !== c.type)) return c; - return { - ...c, - metadata: { description: metadata.description }, - }; - }); - } - } - } catch (error) { - // eslint-disable-next-line no-console - console.error('Unable to fetch field metadata', error); - } - return columns; -} -/** - * Returns columns with the metadata/description (e.g ECS info) - * if available. Safely partition the requests to avoid 400 payload too big errors. - * - * @param columns - * @param fieldsMetadata - * @returns - */ -export async function getRateLimitedColumnsWithMetadata( - columns: Array>, - fieldsMetadata?: FieldsMetadataPublicStart, - maxFieldsPerRequest = 250, - maxConcurrentRequests = 10 -): Promise { - if (!fieldsMetadata) return columns; - - try { - // Chunking requests here since we are calling fieldsMetadata.find with list of fields, - // and we need to make sure payload is not too big, or else get 400 error - const chunkedColumns = chunk(columns, maxFieldsPerRequest); - const result: Array> = []; - // Also only make max of n at a time to avoid too many concurrent requests - for (let i = 0; i < chunkedColumns.length; i += maxConcurrentRequests) { - const cols = chunkedColumns.slice(i, i + maxConcurrentRequests); - const chunkResult = await Promise.allSettled( - cols.map((c) => getColumnsWithMetadata(c, fieldsMetadata)) - ); - result.push(...chunkResult); - } - - return result.flatMap((r, idx) => (r.status === 'fulfilled' ? r.value : chunkedColumns[idx])); - } catch (error) { - // eslint-disable-next-line no-console - console.error('Unable to fetch field metadata', error); - } - return columns; -} diff --git a/packages/kbn-text-based-editor/src/editor_footer/index.tsx b/packages/kbn-text-based-editor/src/editor_footer/index.tsx index fa60eb1a32f44..6468a2c08a8bc 100644 --- a/packages/kbn-text-based-editor/src/editor_footer/index.tsx +++ b/packages/kbn-text-based-editor/src/editor_footer/index.tsx @@ -7,18 +7,25 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import React, { memo, useState, useCallback, useEffect, useMemo } from 'react'; +import React, { memo, useState, useCallback, useMemo } from 'react'; import { i18n } from '@kbn/i18n'; -import { EuiText, EuiFlexGroup, EuiFlexItem, EuiCode } from '@elastic/eui'; +import { + EuiText, + EuiFlexGroup, + EuiFlexItem, + EuiCode, + EuiButtonIcon, + EuiButtonEmpty, +} from '@elastic/eui'; import { Interpolation, Theme, css } from '@emotion/react'; import { useKibana } from '@kbn/kibana-react-plugin/public'; import { - LanguageDocumentationPopover, - type LanguageDocumentationSections, + LanguageDocumentationInline, + LanguageDocumentationFlyout, } from '@kbn/language-documentation-popover'; import { getLimitFromESQLQuery } from '@kbn/esql-utils'; -import { type MonacoMessage, getDocumentationSections } from '../helpers'; +import { type MonacoMessage } from '../helpers'; import { ErrorsWarningsFooterPopover } from './errors_warnings_popover'; import { QueryHistoryAction, QueryHistory } from './query_history'; import { SubmitFeedbackComponent } from './feedback_component'; @@ -43,8 +50,6 @@ interface EditorFooterProps { updateQuery: (qs: string) => void; isHistoryOpen: boolean; setIsHistoryOpen: (status: boolean) => void; - isHelpMenuOpen: boolean; - setIsHelpMenuOpen: (status: boolean) => void; measuredContainerWidth: number; hideRunQueryText?: boolean; editorIsInline?: boolean; @@ -52,6 +57,7 @@ interface EditorFooterProps { hideTimeFilterInfo?: boolean; hideQueryHistory?: boolean; isInCompactMode?: boolean; + displayDocumentationAsFlyout?: boolean; } export const EditorFooter = memo(function EditorFooter({ @@ -71,18 +77,15 @@ export const EditorFooter = memo(function EditorFooter({ setIsHistoryOpen, hideQueryHistory, isInCompactMode, + displayDocumentationAsFlyout, measuredContainerWidth, code, - isHelpMenuOpen, - setIsHelpMenuOpen, }: EditorFooterProps) { const kibana = useKibana(); const { docLinks } = kibana.services; - const [isErrorPopoverOpen, setIsErrorPopoverOpen] = useState(false); + const [isLanguageComponentOpen, setIsLanguageComponentOpen] = useState(false); const [isWarningPopoverOpen, setIsWarningPopoverOpen] = useState(false); - const [documentationSections, setDocumentationSections] = - useState(); const onUpdateAndSubmit = useCallback( (qs: string) => { @@ -98,17 +101,17 @@ export const EditorFooter = memo(function EditorFooter({ [runQuery, updateQuery] ); - const limit = useMemo(() => getLimitFromESQLQuery(code), [code]); + const toggleHistoryComponent = useCallback(() => { + setIsHistoryOpen(!isHistoryOpen); + setIsLanguageComponentOpen(false); + }, [isHistoryOpen, setIsHistoryOpen]); - useEffect(() => { - async function getDocumentation() { - const sections = await getDocumentationSections('esql'); - setDocumentationSections(sections); - } - if (!documentationSections) { - getDocumentation(); - } - }, [documentationSections]); + const toggleLanguageComponent = useCallback(async () => { + setIsLanguageComponentOpen(!isLanguageComponentOpen); + setIsHistoryOpen(false); + }, [isLanguageComponentOpen, setIsHistoryOpen]); + + const limit = useMemo(() => getLimitFromESQLQuery(code), [code]); return (
)} - {documentationSections && !editorIsInline && ( - - + toggleLanguageComponent()} + css={css` + cursor: pointer; + `} + /> + - + )} @@ -318,34 +318,14 @@ export const EditorFooter = memo(function EditorFooter({ {!hideQueryHistory && ( setIsHistoryOpen(!isHistoryOpen)} + toggleHistory={toggleHistoryComponent} isHistoryOpen={isHistoryOpen} isSpaceReduced={true} /> )} - {documentationSections && ( - - - - )} + + + @@ -362,6 +342,11 @@ export const EditorFooter = memo(function EditorFooter({ /> )} + {isLanguageComponentOpen && editorIsInline && ( + + + + )} ); }); diff --git a/packages/kbn-text-based-editor/src/helpers.ts b/packages/kbn-text-based-editor/src/helpers.ts index fb541c4fe39be..b1bb3aaf826a7 100644 --- a/packages/kbn-text-based-editor/src/helpers.ts +++ b/packages/kbn-text-based-editor/src/helpers.ts @@ -77,12 +77,14 @@ export const parseWarning = (warning: string): MonacoMessage[] => { startColumn = Number(encodedColumn); startLineNumber = Number(encodedLine.replace('Line ', '')); } - // extract the length of the "expression" within the message - // and try to guess the correct size for the editor marker to highlight - if (/\[.*\]/.test(warningMessage)) { - const [_, wordWithError] = warningMessage.split('['); - if (wordWithError) { - errorLength = wordWithError.length; + const openingSquareBracketIndex = warningMessage.indexOf('['); + if (openingSquareBracketIndex !== -1) { + const closingSquareBracketIndex = warningMessage.indexOf( + ']', + openingSquareBracketIndex + ); + if (closingSquareBracketIndex !== -1) { + errorLength = warningMessage.length - openingSquareBracketIndex - 1; } } } @@ -159,43 +161,6 @@ export const parseErrors = (errors: Error[], code: string): MonacoMessage[] => { }); }; -export const getDocumentationSections = async (language: string) => { - const groups: Array<{ - label: string; - description?: string; - items: Array<{ label: string; description?: JSX.Element }>; - }> = []; - if (language === 'esql') { - const { - sourceCommands, - processingCommands, - initialSection, - scalarFunctions, - aggregationFunctions, - groupingFunctions, - operators, - } = await import('./inline_documentation/esql_documentation_sections'); - groups.push({ - label: i18n.translate('textBasedEditor.query.textBasedLanguagesEditor.esql', { - defaultMessage: 'ES|QL', - }), - items: [], - }); - groups.push( - sourceCommands, - processingCommands, - scalarFunctions, - aggregationFunctions, - groupingFunctions, - operators - ); - return { - groups, - initialSection, - }; - } -}; - export const getIndicesList = async (dataViews: DataViewsPublicPluginStart) => { const indices = await dataViews.getIndices({ showAllIndices: false, diff --git a/packages/kbn-text-based-editor/src/text_based_languages_editor.test.tsx b/packages/kbn-text-based-editor/src/text_based_languages_editor.test.tsx index d8fe9512691a1..0855d0326263f 100644 --- a/packages/kbn-text-based-editor/src/text_based_languages_editor.test.tsx +++ b/packages/kbn-text-based-editor/src/text_based_languages_editor.test.tsx @@ -16,21 +16,6 @@ import { KibanaContextProvider } from '@kbn/kibana-react-plugin/public'; import { TextBasedLanguagesEditor } from './text_based_languages_editor'; import type { TextBasedLanguagesEditorProps } from './types'; import { ReactWrapper } from 'enzyme'; - -jest.mock('./helpers', () => { - const module = jest.requireActual('./helpers'); - return { - ...module, - getDocumentationSections: () => ({ - groups: [ - { - label: 'How it works', - items: [], - }, - ], - }), - }; -}); import { of } from 'rxjs'; describe('TextBasedLanguagesEditor', () => { @@ -133,9 +118,6 @@ describe('TextBasedLanguagesEditor', () => { expect( component!.find('[data-test-subj="TextBasedLangEditor-toggleWordWrap"]').length ).not.toBe(0); - expect(component!.find('[data-test-subj="TextBasedLangEditor-documentation"]').length).not.toBe( - 0 - ); }); it('should render the resize for the expanded code editor mode', async () => { @@ -156,6 +138,18 @@ describe('TextBasedLanguagesEditor', () => { expect(component.find('[data-test-subj="TextBasedLangEditor-run-query"]').length).not.toBe(0); }); + it('should render the doc icon if the displayDocumentationAsFlyout is true', async () => { + const newProps = { + ...props, + displayDocumentationAsFlyout: true, + editorIsInline: false, + }; + const component = mount(renderTextBasedLanguagesEditorComponent({ ...newProps })); + expect(component.find('[data-test-subj="TextBasedLangEditor-documentation"]').length).not.toBe( + 0 + ); + }); + it('should not render the run query text if the hideRunQueryText prop is set to true', async () => { const newProps = { ...props, diff --git a/packages/kbn-text-based-editor/src/text_based_languages_editor.tsx b/packages/kbn-text-based-editor/src/text_based_languages_editor.tsx index a01b452b378b1..2ebd5a42a966a 100644 --- a/packages/kbn-text-based-editor/src/text_based_languages_editor.tsx +++ b/packages/kbn-text-based-editor/src/text_based_languages_editor.tsx @@ -51,7 +51,6 @@ import { EDITOR_MIN_HEIGHT, textBasedLanguageEditorStyles, } from './text_based_languages_editor.styles'; -import { getRateLimitedColumnsWithMetadata } from './ecs_metadata_helper'; import type { TextBasedLanguagesEditorProps, TextBasedEditorDeps } from './types'; import './overwrite.scss'; @@ -79,6 +78,7 @@ export const TextBasedLanguagesEditor = memo(function TextBasedLanguagesEditor({ hideTimeFilterInfo, hideQueryHistory, hasOutline, + displayDocumentationAsFlyout, }: TextBasedLanguagesEditorProps) { const popoverRef = useRef(null); const datePickerOpenStatusRef = useRef(false); @@ -109,9 +109,9 @@ export const TextBasedLanguagesEditor = memo(function TextBasedLanguagesEditor({ const [isHistoryOpen, setIsHistoryOpen] = useState(false); const [isCodeEditorExpandedFocused, setIsCodeEditorExpandedFocused] = useState(false); - const [isLanguagePopoverOpen, setIsLanguagePopoverOpen] = useState(false); const [isQueryLoading, setIsQueryLoading] = useState(true); const [abortController, setAbortController] = useState(new AbortController()); + // contains both client side validation and server messages const [editorMessages, setEditorMessages] = useState<{ errors: MonacoMessage[]; @@ -353,7 +353,8 @@ export const TextBasedLanguagesEditor = memo(function TextBasedLanguagesEditor({ type: c.meta.esType as FieldType, }; }) || []; - return await getRateLimitedColumnsWithMetadata(columns, fieldsMetadata); + + return columns; } catch (e) { // no action yet } @@ -373,6 +374,8 @@ export const TextBasedLanguagesEditor = memo(function TextBasedLanguagesEditor({ histogramBarTarget, }; }, + // @ts-expect-error To prevent circular type import, type defined here is partial of full client + getFieldsMetadata: fieldsMetadata?.getClient(), }; return callbacks; }, [ @@ -386,8 +389,8 @@ export const TextBasedLanguagesEditor = memo(function TextBasedLanguagesEditor({ expressions, abortController, indexManagementApiService, - fieldsMetadata, histogramBarTarget, + fieldsMetadata, ]); const queryRunButtonProperties = useMemo(() => { @@ -735,8 +738,7 @@ export const TextBasedLanguagesEditor = memo(function TextBasedLanguagesEditor({ setIsHistoryOpen={toggleHistory} measuredContainerWidth={measuredEditorWidth} hideQueryHistory={hideHistoryComponent} - isHelpMenuOpen={isLanguagePopoverOpen} - setIsHelpMenuOpen={setIsLanguagePopoverOpen} + displayDocumentationAsFlyout={displayDocumentationAsFlyout} /> extends Record ? FromRouteMap : never; - -// const element = null as any; - -// const routes = { -// '/link-to/transaction/{transactionId}': { -// element, -// }, -// '/link-to/trace/{traceId}': { -// element, -// }, -// '/': { -// element, -// children: { -// '/settings': { -// element, -// children: { -// '/settings/agent-configuration': { -// element, -// }, -// '/settings/agent-configuration/create': { -// element, -// params: t.partial({ -// query: t.partial({ -// pageStep: t.string, -// }), -// }), -// }, -// '/settings/agent-configuration/edit': { -// element, -// params: t.partial({ -// query: t.partial({ -// pageStep: t.string, -// }), -// }), -// }, -// '/settings/apm-indices': { -// element, -// }, -// '/settings/custom-links': { -// element, -// }, -// '/settings/schema': { -// element, -// }, -// '/settings/anomaly-detection': { -// element, -// }, -// '/settings/agent-keys': { -// element, -// }, -// '/settings': { -// element, -// }, -// }, -// }, -// '/services/:serviceName': { -// element, -// params: t.intersection([ -// t.type({ -// path: t.type({ -// serviceName: t.string, -// }), -// }), -// t.partial({ -// query: t.partial({ -// environment: t.string, -// rangeFrom: t.string, -// rangeTo: t.string, -// comparisonEnabled: t.string, -// comparisonType: t.string, -// latencyAggregationType: t.string, -// transactionType: t.string, -// kuery: t.string, -// }), -// }), -// ]), -// children: { -// '/services/:serviceName/overview': { -// element, -// }, -// '/services/:serviceName/transactions': { -// element, -// }, -// '/services/:serviceName/transactions/view': { -// element, -// }, -// '/services/:serviceName/dependencies': { -// element, -// }, -// '/services/:serviceName/errors': { -// element, -// children: { -// '/services/:serviceName/errors/:groupId': { -// element, -// params: t.type({ -// path: t.type({ -// groupId: t.string, -// }), -// }), -// }, -// '/services/:serviceName/errors': { -// element, -// params: t.partial({ -// query: t.partial({ -// sortDirection: t.string, -// sortField: t.string, -// pageSize: t.string, -// page: t.string, -// }), -// }), -// }, -// }, -// }, -// '/services/:serviceName/metrics': { -// element, -// }, -// '/services/:serviceName/nodes': { -// element, -// children: { -// '/services/{serviceName}/nodes/{serviceNodeName}/metrics': { -// element, -// }, -// '/services/:serviceName/nodes': { -// element, -// }, -// }, -// }, -// '/services/:serviceName/service-map': { -// element, -// }, -// '/services/:serviceName/logs': { -// element, -// }, -// '/services/:serviceName/profiling': { -// element, -// }, -// '/services/:serviceName': { -// element, -// }, -// }, -// }, -// '/': { -// element, -// params: t.partial({ -// query: t.partial({ -// rangeFrom: t.string, -// rangeTo: t.string, -// }), -// }), -// children: { -// '/services': { -// element, -// }, -// '/traces': { -// element, -// }, -// '/service-map': { -// element, -// }, -// '/backends': { -// element, -// children: { -// '/backends/{backendName}/overview': { -// element, -// }, -// '/backends/overview': { -// element, -// }, -// '/backends': { -// element, -// }, -// }, -// }, -// '/': { -// element, -// }, -// }, -// }, -// }, -// }, -// }; - -// type Routes = typeof routes; - -// type Mapped = MapRoutes; -// type Paths = PathsOf; - -// type Bar = Match; -// type Foo = OutputOf; -// type Baz = OutputOf; - -// const { path }: Foo = {} as any; - -// function _useApmParams>(p: TPath): OutputOf { -// return {} as any; -// } - -// const { -// path: { serviceName }, -// query: { comparisonType }, -// } = _useApmParams('/services/:serviceName/nodes/*'); diff --git a/packages/kbn-unified-data-table/src/components/custom_toolbar/render_custom_toolbar.scss b/packages/kbn-unified-data-table/src/components/custom_toolbar/render_custom_toolbar.scss index fc6424e06ab62..0277e03c80e17 100644 --- a/packages/kbn-unified-data-table/src/components/custom_toolbar/render_custom_toolbar.scss +++ b/packages/kbn-unified-data-table/src/components/custom_toolbar/render_custom_toolbar.scss @@ -5,6 +5,7 @@ block-size: $euiSizeXL; border: $euiBorderThin; border-radius: $euiBorderRadiusSmall; + transition: transform $euiAnimSpeedNormal ease-in-out; // making the icons larger than the default size & svg { @@ -18,7 +19,6 @@ } // add toolbar control animation - transition: transform $euiAnimSpeedNormal ease-in-out; &:hover { transform: translateY(-1px); } diff --git a/packages/kbn-unified-field-list/src/components/field_list_grouped/field_list_grouped.scss b/packages/kbn-unified-field-list/src/components/field_list_grouped/field_list_grouped.scss index cd4b9ba2f6e22..2e67146fe2eff 100644 --- a/packages/kbn-unified-field-list/src/components/field_list_grouped/field_list_grouped.scss +++ b/packages/kbn-unified-field-list/src/components/field_list_grouped/field_list_grouped.scss @@ -3,12 +3,13 @@ */ .unifiedFieldList__fieldListGrouped { - @include euiOverflowShadow; - @include euiScrollBar; margin-left: -$euiSize; /* 1 */ position: relative; flex-grow: 1; overflow: auto; + + @include euiOverflowShadow; + @include euiScrollBar; } .unifiedFieldList__fieldListGrouped__container { diff --git a/packages/kbn-unified-field-list/src/components/field_stats/field_top_values_bucket.tsx b/packages/kbn-unified-field-list/src/components/field_stats/field_top_values_bucket.tsx index dcc647a21e113..77266edc2de07 100755 --- a/packages/kbn-unified-field-list/src/components/field_stats/field_top_values_bucket.tsx +++ b/packages/kbn-unified-field-list/src/components/field_stats/field_top_values_bucket.tsx @@ -70,6 +70,18 @@ const FieldTopValuesBucket: React.FC = ({ } = { ...fieldTopValuesBucketOverridableProps, ...overrides }; const fieldLabel = (field?.subType as IFieldSubTypeMulti)?.multi?.parent ?? field.name; + const filterForLabel = i18n.translate('unifiedFieldList.fieldStats.filterValueButtonAriaLabel', { + defaultMessage: 'Filter for {field}: "{value}"', + values: { value: formattedFieldValue, field: fieldLabel }, + }); + const filterOutLabel = i18n.translate( + 'unifiedFieldList.fieldStats.filterOutValueButtonAriaLabel', + { + defaultMessage: 'Filter out {field}: "{value}"', + values: { value: formattedFieldValue, field: fieldLabel }, + } + ); + return ( = ({ /> ) : (
- onAddFilter(field, fieldValue, '+')} - aria-label={i18n.translate( - 'unifiedFieldList.fieldStats.filterValueButtonAriaLabel', - { - defaultMessage: 'Filter for {field}: "{value}"', - values: { value: formattedFieldValue, field: fieldLabel }, - } - )} - data-test-subj={`plus-${fieldLabel}-${fieldValue}`} - style={{ - minHeight: 'auto', - minWidth: 'auto', - paddingRight: 2, - paddingLeft: 2, - paddingTop: 0, - paddingBottom: 0, - }} - /> - onAddFilter(field, fieldValue, '-')} - aria-label={i18n.translate( - 'unifiedFieldList.fieldStats.filterOutValueButtonAriaLabel', - { - defaultMessage: 'Filter out {field}: "{value}"', - values: { value: formattedFieldValue, field: fieldLabel }, - } - )} - data-test-subj={`minus-${fieldLabel}-${fieldValue}`} - style={{ - minHeight: 'auto', - minWidth: 'auto', - paddingTop: 0, - paddingBottom: 0, - paddingRight: 2, - paddingLeft: 2, - }} - /> + + onAddFilter(field, fieldValue, '+')} + aria-label={filterForLabel} + data-test-subj={`plus-${fieldLabel}-${fieldValue}`} + style={{ + minHeight: 'auto', + minWidth: 'auto', + paddingRight: 2, + paddingLeft: 2, + paddingTop: 0, + paddingBottom: 0, + }} + /> + + + onAddFilter(field, fieldValue, '-')} + aria-label={filterOutLabel} + data-test-subj={`minus-${fieldLabel}-${fieldValue}`} + style={{ + minHeight: 'auto', + minWidth: 'auto', + paddingTop: 0, + paddingBottom: 0, + paddingRight: 2, + paddingLeft: 2, + }} + /> +
)} diff --git a/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item.tsx b/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item.tsx index c6f301bbdf69f..658bf96dc76c9 100644 --- a/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item.tsx +++ b/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item.tsx @@ -14,6 +14,7 @@ import { UiCounterMetricType } from '@kbn/analytics'; import type { FieldsMetadataPublicStart } from '@kbn/fields-metadata-plugin/public'; import { Draggable } from '@kbn/dom-drag-drop'; import type { DataView, DataViewField } from '@kbn/data-views-plugin/public'; +import { Filter } from '@kbn/es-query'; import type { SearchMode } from '../../types'; import { FieldItemButton, type FieldItemButtonProps } from '../../components/field_item_button'; import { @@ -200,6 +201,10 @@ export interface UnifiedFieldListItemProps { * Item size */ size: FieldItemButtonProps['size']; + /** + * Custom filters to apply for the field list, ex: namespace custom filter + */ + additionalFilters?: Filter[]; } function UnifiedFieldListItemComponent({ @@ -223,6 +228,7 @@ function UnifiedFieldListItemComponent({ groupIndex, itemIndex, size, + additionalFilters, }: UnifiedFieldListItemProps) { const [infoIsOpen, setOpen] = useState(false); @@ -288,6 +294,7 @@ function UnifiedFieldListItemComponent({ multiFields={multiFields} dataView={dataView} onAddFilter={addFilterAndClosePopover} + additionalFilters={additionalFilters} /> {searchMode === 'documents' && multiFields && ( diff --git a/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item_stats.tsx b/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item_stats.tsx index c83a0694c7b67..223a5e15ca6e7 100644 --- a/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item_stats.tsx +++ b/packages/kbn-unified-field-list/src/containers/unified_field_list_item/field_list_item_stats.tsx @@ -27,10 +27,11 @@ export interface UnifiedFieldListItemStatsProps { dataView: DataView; multiFields?: Array<{ field: DataViewField; isSelected: boolean }>; onAddFilter: FieldStatsProps['onAddFilter']; + additionalFilters?: FieldStatsProps['filters']; } export const UnifiedFieldListItemStats: React.FC = React.memo( - ({ stateService, services, field, dataView, multiFields, onAddFilter }) => { + ({ stateService, services, field, dataView, multiFields, onAddFilter, additionalFilters }) => { const querySubscriberResult = useQuerySubscriber({ data: services.data, timeRangeUpdatesType: stateService.creationOptions.timeRangeUpdatesType, @@ -55,6 +56,11 @@ export const UnifiedFieldListItemStats: React.FC [services] ); + const filters = useMemo( + () => [...(querySubscriberResult.filters ?? []), ...(additionalFilters ?? [])], + [querySubscriberResult.filters, additionalFilters] + ); + if (!hasQuerySubscriberData(querySubscriberResult)) { return null; } @@ -63,7 +69,7 @@ export const UnifiedFieldListItemStats: React.FC & { /** * All fields: fields from data view and unmapped fields or columns from text-based search @@ -168,6 +169,7 @@ export const UnifiedFieldListSidebarComponent: React.FC { const { dataViews, core } = services; const useNewFieldsApi = useMemo( @@ -285,6 +287,7 @@ export const UnifiedFieldListSidebarComponent: React.FC ), @@ -304,6 +307,7 @@ export const UnifiedFieldListSidebarComponent: React.FC( createStateService({ options: getCreationOptions() }) @@ -151,11 +152,16 @@ const UnifiedFieldListSidebarContainer = memo( const searchMode: SearchMode | undefined = querySubscriberResult.searchMode; const isAffectedByGlobalFilter = Boolean(querySubscriberResult.filters?.length); + const filters = useMemo( + () => [...(querySubscriberResult.filters ?? []), ...(additionalFilters ?? [])], + [querySubscriberResult.filters, additionalFilters] + ); + const { isProcessing, refetchFieldsExistenceInfo } = useExistingFieldsFetcher({ disableAutoFetching: stateService.creationOptions.disableFieldsExistenceAutoFetching, dataViews: searchMode === 'documents' && dataView ? [dataView] : [], query: querySubscriberResult.query, - filters: querySubscriberResult.filters, + filters, fromDate: querySubscriberResult.fromDate, toDate: querySubscriberResult.toDate, services, diff --git a/packages/serverless/settings/observability_project/index.ts b/packages/serverless/settings/observability_project/index.ts index 85f6327bf0a07..f8bb8dbe12542 100644 --- a/packages/serverless/settings/observability_project/index.ts +++ b/packages/serverless/settings/observability_project/index.ts @@ -34,8 +34,8 @@ export const OBSERVABILITY_PROJECT_SETTINGS = [ settings.OBSERVABILITY_APM_ENABLE_TABLE_SEARCH_BAR, settings.OBSERVABILITY_APM_ENABLE_SERVICE_INVENTORY_TABLE_SEARCH_BAR, settings.OBSERVABILITY_ENTITY_CENTRIC_EXPERIENCE, - settings.OBSERVABILITY_AI_ASSISTANT_LOGS_INDEX_PATTERN_ID, settings.OBSERVABILITY_AI_ASSISTANT_SIMULATED_FUNCTION_CALLING, settings.OBSERVABILITY_AI_ASSISTANT_SEARCH_CONNECTOR_INDEX_PATTERN, + settings.OBSERVABILITY_LOGS_DATA_ACCESS_LOG_SOURCES_ID, settings.OBSERVABILITY_SEARCH_EXCLUDED_DATA_TIERS, ]; diff --git a/packages/shared-ux/chrome/navigation/src/services.tsx b/packages/shared-ux/chrome/navigation/src/services.tsx index fec11110f8b6a..1b0102533e53e 100644 --- a/packages/shared-ux/chrome/navigation/src/services.tsx +++ b/packages/shared-ux/chrome/navigation/src/services.tsx @@ -36,7 +36,7 @@ export const NavigationKibanaProvider: FC ({ diff --git a/packages/shared-ux/chrome/navigation/src/types.ts b/packages/shared-ux/chrome/navigation/src/types.ts index c7f882c3580a6..9db808e37799a 100644 --- a/packages/shared-ux/chrome/navigation/src/types.ts +++ b/packages/shared-ux/chrome/navigation/src/types.ts @@ -53,7 +53,9 @@ export interface NavigationKibanaDependencies { navLinks: { getNavLinks$: () => Observable>; }; - getIsSideNavCollapsed$: () => Observable; + sideNav: { + getIsCollapsed$: () => Observable; + }; }; http: { basePath: BasePathService; diff --git a/renovate.json b/renovate.json index 6f3b61c6e1b12..eeb91efd871bf 100644 --- a/renovate.json +++ b/renovate.json @@ -78,7 +78,22 @@ }, { "groupName": "LaunchDarkly", - "matchDepNames": ["launchdarkly-js-client-sdk", "@launchdarkly/node-server-sdk", "launchdarkly/find-code-references"], + "matchDepNames": [ + "launchdarkly-js-client-sdk", + "@openfeature/launchdarkly-client-provider", + "@launchdarkly/node-server-sdk", + "@launchdarkly/openfeature-node-server", + "launchdarkly/find-code-references" + ], + "reviewers": ["team:kibana-security", "team:kibana-core"], + "matchBaseBranches": ["main"], + "labels": ["release_note:skip", "Team:Security", "Team:Core", "backport:prev-minor"], + "minimumReleaseAge": "7 days", + "enabled": true + }, + { + "groupName": "OpenFeature", + "matchDepNames": ["@openfeature/core", "@openfeature/server-sdk", "@openfeature/web-sdk"], "reviewers": ["team:kibana-security", "team:kibana-core"], "matchBaseBranches": ["main"], "labels": ["release_note:skip", "Team:Security", "Team:Core", "backport:prev-minor"], @@ -493,6 +508,15 @@ "labels": ["Team: Sec Eng Productivity", "release_note:skip", "backport:all-open"], "minimumReleaseAge": "7 days", "enabled": true + }, + { + "groupName": "@mswjs/http-middleware", + "matchPackageNames": ["@mswjs/http-middleware"], + "reviewers": ["team:kibana-cloud-security-posture"], + "matchBaseBranches": ["main"], + "labels": ["Team:Cloud Security", "release_note:skip", "backport:skip"], + "minimumReleaseAge": "7 days", + "enabled": true } ], "customManagers": [ diff --git a/scripts/enabled_ftr_configs.js b/scripts/enabled_ftr_configs.js index 96439e0499145..37e947948888f 100644 --- a/scripts/enabled_ftr_configs.js +++ b/scripts/enabled_ftr_configs.js @@ -20,7 +20,7 @@ var allManifestPaths = Object.values(manifestsSource).flat(); try { for (var manifestRelPath of allManifestPaths) { - var manifest = yaml.safeLoad(fs.readFileSync(manifestRelPath, 'utf8')); + var manifest = yaml.load(fs.readFileSync(manifestRelPath, 'utf8')); if (manifest.enabled) { manifest.enabled.forEach(function (x) { console.log(x); diff --git a/src/cli/serve/integration_tests/reload_logging_config.test.ts b/src/cli/serve/integration_tests/reload_logging_config.test.ts index 6a90aa8416eb6..aed9204be9077 100644 --- a/src/cli/serve/integration_tests/reload_logging_config.test.ts +++ b/src/cli/serve/integration_tests/reload_logging_config.test.ts @@ -15,7 +15,7 @@ import Del from 'del'; import * as Rx from 'rxjs'; import { map, filter, take } from 'rxjs'; -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; import { getConfigFromFiles } from '@kbn/config'; const configFileLogConsole = follow( @@ -65,7 +65,7 @@ function createConfigManager(configPath: string) { return { modify(fn: (input: Record) => Record) { const oldContent = getConfigFromFiles([configPath]); - const yaml = safeDump(fn(oldContent)); + const yaml = dump(fn(oldContent)); Fs.writeFileSync(configPath, yaml); }, }; diff --git a/src/cli_encryption_keys/encryption_config.js b/src/cli_encryption_keys/encryption_config.js index 0e2f9bb419a9e..c255b3d72cf57 100644 --- a/src/cli_encryption_keys/encryption_config.js +++ b/src/cli_encryption_keys/encryption_config.js @@ -11,12 +11,12 @@ import crypto from 'crypto'; import { join } from 'path'; import { get } from 'lodash'; import { readFileSync } from 'fs'; -import { safeLoad } from 'js-yaml'; +import { load } from 'js-yaml'; import { getConfigDirectory } from '@kbn/utils'; export class EncryptionConfig { - #config = safeLoad(readFileSync(join(getConfigDirectory(), 'kibana.yml'))); + #config = load(readFileSync(join(getConfigDirectory(), 'kibana.yml'))); #encryptionKeyPaths = [ 'xpack.encryptedSavedObjects.encryptionKey', 'xpack.reporting.encryptionKey', diff --git a/src/cli_encryption_keys/generate.js b/src/cli_encryption_keys/generate.js index 162ee1fe101f1..e4830533b89cb 100644 --- a/src/cli_encryption_keys/generate.js +++ b/src/cli_encryption_keys/generate.js @@ -7,7 +7,7 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; import { isEmpty } from 'lodash'; import { interactive } from './interactive'; import { Logger } from '../cli/logger'; @@ -33,7 +33,7 @@ export async function generate(encryptionConfig, command) { await interactive(keys, encryptionConfig.docs({ comment: true }), logger); } else { if (!command.quiet) logger.log('Settings:'); - logger.log(safeDump(keys)); + logger.log(dump(keys)); } } } diff --git a/src/cli_encryption_keys/interactive.js b/src/cli_encryption_keys/interactive.js index 3602978d688fd..676bafe6073f2 100644 --- a/src/cli_encryption_keys/interactive.js +++ b/src/cli_encryption_keys/interactive.js @@ -11,7 +11,7 @@ import { writeFileSync } from 'fs'; import { join } from 'path'; import { confirm, question } from '../cli/keystore/utils'; import { getConfigDirectory } from '@kbn/utils'; -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; export async function interactive(keys, docs, logger) { const settings = Object.keys(keys); @@ -37,10 +37,10 @@ export async function interactive(keys, docs, logger) { `What filename should be used for the sample Kibana config file? [${defaultSaveLocation}])` ); const saveLocation = promptedSaveLocation || defaultSaveLocation; - writeFileSync(saveLocation, docs + safeDump(setKeys)); + writeFileSync(saveLocation, docs + dump(setKeys)); logger.log(`Wrote configuration to ${saveLocation}`); } else { logger.log('\nSettings:'); - logger.log(safeDump(setKeys)); + logger.log(dump(setKeys)); } } diff --git a/src/core/public/index.ts b/src/core/public/index.ts index 91320b8ade383..ecce03d0b5092 100644 --- a/src/core/public/index.ts +++ b/src/core/public/index.ts @@ -37,6 +37,11 @@ export type { FatalErrorsStart, FatalErrorInfo, } from '@kbn/core-fatal-errors-browser'; +export type { + EvaluationContext, + FeatureFlagsSetup, + FeatureFlagsStart, +} from '@kbn/core-feature-flags-browser'; export type { UiSettingsState, IUiSettingsClient, diff --git a/src/core/public/mocks.ts b/src/core/public/mocks.ts index dcd30a738d3d1..61b9f7759c50f 100644 --- a/src/core/public/mocks.ts +++ b/src/core/public/mocks.ts @@ -21,6 +21,7 @@ export { themeServiceMock } from '@kbn/core-theme-browser-mocks'; export { analyticsServiceMock } from '@kbn/core-analytics-browser-mocks'; export { chromeServiceMock } from '@kbn/core-chrome-browser-mocks'; export { executionContextServiceMock } from '@kbn/core-execution-context-browser-mocks'; +export { coreFeatureFlagsMock } from '@kbn/core-feature-flags-browser-mocks'; export { fatalErrorsServiceMock } from '@kbn/core-fatal-errors-browser-mocks'; export { httpServiceMock } from '@kbn/core-http-browser-mocks'; export { i18nServiceMock } from '@kbn/core-i18n-browser-mocks'; diff --git a/src/core/server/index.ts b/src/core/server/index.ts index e684c9565d9ed..5282f2048dd06 100644 --- a/src/core/server/index.ts +++ b/src/core/server/index.ts @@ -71,6 +71,11 @@ export type { export type { KibanaExecutionContext } from '@kbn/core-execution-context-common'; export type { IExecutionContextContainer } from '@kbn/core-execution-context-server'; +export type { + EvaluationContext, + FeatureFlagsStart, + FeatureFlagsSetup, +} from '@kbn/core-feature-flags-server'; export type { Capabilities } from '@kbn/core-capabilities-common'; export type { CapabilitiesProvider, diff --git a/src/core/server/integration_tests/config/check_dynamic_config.test.ts b/src/core/server/integration_tests/config/check_dynamic_config.test.ts index 8cb9ac2466b62..eaffd56ed1b16 100644 --- a/src/core/server/integration_tests/config/check_dynamic_config.test.ts +++ b/src/core/server/integration_tests/config/check_dynamic_config.test.ts @@ -129,6 +129,8 @@ describe('checking all opted-in dynamic config settings', () => { */ test('detecting all the settings that have opted-in for dynamic in-memory updates', () => { expect(getListOfDynamicConfigPaths()).toStrictEqual([ + // Making testing easier by having the ability of overriding the feature flags without the need to restart + 'feature_flags.overrides', // We need this for enriching our Perf tests with more valuable data regarding the steps of the test // Also helpful in Cloud & Serverless testing because we can't control the labels in those offerings 'telemetry.labels', diff --git a/src/core/server/mocks.ts b/src/core/server/mocks.ts index 0356d5e483103..0467b9c660db6 100644 --- a/src/core/server/mocks.ts +++ b/src/core/server/mocks.ts @@ -23,6 +23,7 @@ import { coreLifecycleMock, coreInternalLifecycleMock } from '@kbn/core-lifecycl import { securityServiceMock } from '@kbn/core-security-server-mocks'; import { userProfileServiceMock } from '@kbn/core-user-profile-server-mocks'; import type { SharedGlobalConfig, PluginInitializerContext } from '@kbn/core-plugins-server'; +import { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; export { configServiceMock, configDeprecationsMock } from '@kbn/config-mocks'; export { loggingSystemMock } from '@kbn/core-logging-server-mocks'; @@ -46,6 +47,7 @@ export { deprecationsServiceMock } from '@kbn/core-deprecations-server-mocks'; export { coreUsageDataServiceMock } from '@kbn/core-usage-data-server-mocks'; export { i18nServiceMock } from '@kbn/core-i18n-server-mocks'; export { executionContextServiceMock } from '@kbn/core-execution-context-server-mocks'; +export { coreFeatureFlagsMock } from '@kbn/core-feature-flags-server-mocks'; export { docLinksServiceMock } from '@kbn/core-doc-links-server-mocks'; export { analyticsServiceMock } from '@kbn/core-analytics-server-mocks'; export { securityServiceMock } from '@kbn/core-security-server-mocks'; @@ -120,6 +122,7 @@ function pluginInitializerContextMock(config: T = {} as T) { function createCoreRequestHandlerContextMock() { return { + featureFlags: coreFeatureFlagsMock.createRequestHandlerContext(), savedObjects: { client: savedObjectsClientMock.create(), typeRegistry: savedObjectsTypeRegistryMock.create(), diff --git a/src/core/tsconfig.json b/src/core/tsconfig.json index 870d648d4b2e1..92647e56fad82 100644 --- a/src/core/tsconfig.json +++ b/src/core/tsconfig.json @@ -169,6 +169,10 @@ "@kbn/core-user-profile-browser", "@kbn/core-metrics-server-internal", "@kbn/zod", + "@kbn/core-feature-flags-browser", + "@kbn/core-feature-flags-browser-mocks", + "@kbn/core-feature-flags-server", + "@kbn/core-feature-flags-server-mocks", ], "exclude": [ "target/**/*", diff --git a/src/dev/build/tasks/fleet/bundle_packages.ts b/src/dev/build/tasks/fleet/bundle_packages.ts index f1f5f8dbfb78b..0d54703bd64f4 100644 --- a/src/dev/build/tasks/fleet/bundle_packages.ts +++ b/src/dev/build/tasks/fleet/bundle_packages.ts @@ -11,7 +11,7 @@ import Fsp from 'fs/promises'; import Path from 'path'; import JSON5 from 'json5'; -import { safeLoad, safeDump } from 'js-yaml'; +import { load, dump } from 'js-yaml'; import { asyncForEach } from '@kbn/std'; import { ToolingLog } from '@kbn/tooling-log'; @@ -88,10 +88,10 @@ export async function bundleFleetPackages(pkgDir: string, log: ToolingLog, confi return; } - const manifestYml = await safeLoad(manifestEntry.buffer.toString('utf8')); + const manifestYml = await load(manifestEntry.buffer.toString('utf8')); manifestYml.version = stackVersion; - const newManifestYml = safeDump(manifestYml); + const newManifestYml = dump(manifestYml); manifestEntry.buffer = Buffer.from(newManifestYml, 'utf8'); // Update all paths to use the new version diff --git a/src/dev/build/tasks/os_packages/create_os_package_kibana_yml.ts b/src/dev/build/tasks/os_packages/create_os_package_kibana_yml.ts index ac20298c225c6..5a56d556e640e 100644 --- a/src/dev/build/tasks/os_packages/create_os_package_kibana_yml.ts +++ b/src/dev/build/tasks/os_packages/create_os_package_kibana_yml.ts @@ -9,7 +9,7 @@ import { readFileSync, writeFileSync } from 'fs'; import { resolve } from 'path'; -import { safeDump } from 'js-yaml'; +import { dump } from 'js-yaml'; import { Build, Config, mkdirp } from '../../lib'; export async function createOSPackageKibanaYML(config: Config, build: Build) { @@ -25,7 +25,7 @@ export async function createOSPackageKibanaYML(config: Config, build: Build) { [/#pid.file:.*/g, 'pid.file: /run/kibana/kibana.pid'], [ /#logging.appenders.default:.*kibana\.log\n/gs, - safeDump({ + dump({ logging: { appenders: { file: { diff --git a/src/dev/build/tasks/os_packages/docker_generator/run.ts b/src/dev/build/tasks/os_packages/docker_generator/run.ts index 23010717fe495..3dfdb01a88a9c 100644 --- a/src/dev/build/tasks/os_packages/docker_generator/run.ts +++ b/src/dev/build/tasks/os_packages/docker_generator/run.ts @@ -51,7 +51,7 @@ export async function runDockerGenerator( */ if (flags.baseImage === 'wolfi') baseImageName = - 'docker.elastic.co/wolfi/chainguard-base:latest@sha256:aad4cd4e5f6d849691748c6933761889db1a20a57231613b98bbff61fa7723ab'; + 'docker.elastic.co/wolfi/chainguard-base:latest@sha256:6fbf07849a440c8dca9aa7e9cb56ed3ecaa9eb40f8a4f36b39393d7b32d78ecc'; let imageFlavor = ''; if (flags.baseImage === 'ubi') imageFlavor += `-ubi`; diff --git a/src/dev/buildkite_migration/rewrite_buildkite_agent_rules.ts b/src/dev/buildkite_migration/rewrite_buildkite_agent_rules.ts index 2c929e79a736c..f4c41faeea648 100644 --- a/src/dev/buildkite_migration/rewrite_buildkite_agent_rules.ts +++ b/src/dev/buildkite_migration/rewrite_buildkite_agent_rules.ts @@ -142,7 +142,7 @@ async function rewriteFile(ymlPath: string, log: ToolingLog) { let file = await readFile(resolve(REPO_ROOT, ymlPath), 'utf-8'); log.info('Loading: ' + ymlPath); - const doc = yaml.safeLoad(file); + const doc = yaml.load(file); if (!doc.steps) { log.info('No steps, skipping: ' + ymlPath); @@ -153,7 +153,7 @@ async function rewriteFile(ymlPath: string, log: ToolingLog) { if (isQueueTargetingRule(step) && !step.agents.queue.startsWith('kb-static')) { log.info('Rewriting: ' + ymlPath, step); file = editYmlInPlace(file, ['agents:', `queue: ${step.agents.queue}`], () => { - return yaml.safeDump({ agents: getFullAgentTargetingRule(step.agents.queue) }).split('\n'); + return yaml.dump({ agents: getFullAgentTargetingRule(step.agents.queue) }).split('\n'); }); } } diff --git a/src/dev/performance/run_performance_cli.ts b/src/dev/performance/run_performance_cli.ts index bb4192779207a..df6020ba62a34 100644 --- a/src/dev/performance/run_performance_cli.ts +++ b/src/dev/performance/run_performance_cli.ts @@ -35,6 +35,20 @@ interface TestRunProps extends EsRunProps { kibanaInstallDir: string | undefined; } +interface JourneyTargetGroups { + [key: string]: string[]; +} + +const journeyTargetGroups: JourneyTargetGroups = { + kibanaStartAndLoad: ['login'], + crud: ['tags_listing_page', 'dashboard_listing_page'], + dashboard: ['ecommerce_dashboard', 'data_stress_test_lens', 'flight_dashboard'], + discover: ['many_fields_discover', 'many_fields_discover_esql'], + maps: ['ecommerce_dashboard_map_only'], + ml: ['aiops_log_rate_analysis', 'many_fields_transform', 'tsdb_logs_data_visualizer'], + esql: ['many_fields_discover_esql', 'web_logs_dashboard_esql'], +}; + const readFilesRecursively = (dir: string, callback: Function) => { const files = fs.readdirSync(dir); files.forEach((file) => { @@ -48,6 +62,44 @@ const readFilesRecursively = (dir: string, callback: Function) => { }); }; +const getAllJourneys = (dir: string) => { + const journeys: Journey[] = []; + + readFilesRecursively(dir, (filePath: string) => + journeys.push({ + name: path.parse(filePath).name, + path: path.resolve(dir, filePath), + }) + ); + + return journeys; +}; + +const getJourneysToRun = ({ journeyPath, group }: { journeyPath?: string; group?: string }) => { + if (group && typeof group === 'string') { + if (!(group in journeyTargetGroups)) { + throw createFlagError(`Group '${group}' is not defined, try again`); + } + + const fileNames = journeyTargetGroups[group]; + const dir = path.resolve(REPO_ROOT, JOURNEY_BASE_PATH); + + return getAllJourneys(dir).filter((journey) => fileNames.includes(journey.name)); + } + + if (journeyPath && !fs.existsSync(journeyPath)) { + throw createFlagError('--journey-path must be an existing path'); + } + + if (journeyPath && fs.statSync(journeyPath).isFile()) { + return [{ name: path.parse(journeyPath).name, path: journeyPath }]; + } else { + // default dir is x-pack/performance/journeys_e2e + const dir = journeyPath ?? path.resolve(REPO_ROOT, JOURNEY_BASE_PATH); + return getAllJourneys(dir); + } +}; + async function startEs(props: EsRunProps) { const { procRunner, log, logsDir } = props; await procRunner.run('es', { @@ -115,29 +167,17 @@ run( const skipWarmup = flagsReader.boolean('skip-warmup'); const kibanaInstallDir = flagsReader.path('kibana-install-dir'); const journeyPath = flagsReader.path('journey-path'); + const group = flagsReader.string('group'); - if (kibanaInstallDir && !fs.existsSync(kibanaInstallDir)) { - throw createFlagError('--kibana-install-dir must be an existing directory'); + if (group && journeyPath) { + throw createFlagError('--group and --journeyPath cannot be used simultaneously'); } - if (journeyPath && !fs.existsSync(journeyPath)) { - throw createFlagError('--journey-path must be an existing path'); + if (kibanaInstallDir && !fs.existsSync(kibanaInstallDir)) { + throw createFlagError('--kibana-install-dir must be an existing directory'); } - const journeys: Journey[] = []; - - if (journeyPath && fs.statSync(journeyPath).isFile()) { - journeys.push({ name: path.parse(journeyPath).name, path: journeyPath }); - } else { - // default dir is x-pack/performance/journeys_e2e - const dir = journeyPath ?? path.resolve(REPO_ROOT, JOURNEY_BASE_PATH); - readFilesRecursively(dir, (filePath: string) => - journeys.push({ - name: path.parse(filePath).name, - path: path.resolve(dir, filePath), - }) - ); - } + const journeys = getJourneysToRun({ journeyPath, group }); if (journeys.length === 0) { throw new Error('No journeys found'); @@ -191,13 +231,14 @@ run( }, { flags: { - string: ['kibana-install-dir', 'journey-path'], + string: ['kibana-install-dir', 'journey-path', 'group'], boolean: ['skip-warmup'], help: ` --kibana-install-dir=dir Run Kibana from existing install directory instead of from source --journey-path=path Define path to performance journey or directory with multiple journeys that should be executed. '${JOURNEY_BASE_PATH}' is run by default --skip-warmup Journey will be executed without warmup (TEST phase only) + --group Run subset of journeys, defined in the specified group `, }, } diff --git a/src/dev/precommit_hook/casing_check_config.js b/src/dev/precommit_hook/casing_check_config.js index 37ef5ebe6c233..1ddf99b0a1d49 100644 --- a/src/dev/precommit_hook/casing_check_config.js +++ b/src/dev/precommit_hook/casing_check_config.js @@ -121,6 +121,7 @@ export const IGNORE_DIRECTORY_GLOBS = [ 'x-pack/dev-tools', 'packages/kbn-optimizer/src/__fixtures__/mock_repo/x-pack', 'typings/*', + 'typings/**/*', ]; /** diff --git a/src/dev/storybook/aliases.ts b/src/dev/storybook/aliases.ts index 25aac790f08fe..c9680f9991955 100644 --- a/src/dev/storybook/aliases.ts +++ b/src/dev/storybook/aliases.ts @@ -22,7 +22,6 @@ export const storybookAliases = { language_documentation_popover: 'packages/kbn-language-documentation-popover/.storybook', chart_icons: 'packages/kbn-chart-icons/.storybook', content_management_examples: 'examples/content_management_examples/.storybook', - controls: 'src/plugins/controls/storybook', custom_icons: 'packages/kbn-custom-icons/.storybook', custom_integrations: 'src/plugins/custom_integrations/storybook', dashboard_enhanced: 'x-pack/plugins/dashboard_enhanced/.storybook', diff --git a/src/dev/stylelint/lint_files.js b/src/dev/stylelint/lint_files.js index 567a2dfd1e1dd..23288212309b9 100644 --- a/src/dev/stylelint/lint_files.js +++ b/src/dev/stylelint/lint_files.js @@ -9,13 +9,13 @@ import stylelint from 'stylelint'; import path from 'path'; -import { safeLoad } from 'js-yaml'; +import { load } from 'js-yaml'; import fs from 'fs'; import { createFailError } from '@kbn/dev-cli-errors'; // load the include globs from .stylelintrc and convert them to regular expressions for filtering files const stylelintPath = path.resolve(__dirname, '..', '..', '..', '.stylelintrc'); -const styleLintConfig = safeLoad(fs.readFileSync(stylelintPath)); +const styleLintConfig = load(fs.readFileSync(stylelintPath)); /** * Lints a list of files with eslint. eslint reports are written to the log diff --git a/src/dev/tsconfig.json b/src/dev/tsconfig.json index e028b31a931f7..87473c1e79e82 100644 --- a/src/dev/tsconfig.json +++ b/src/dev/tsconfig.json @@ -6,6 +6,7 @@ "include": [ "**/*.js", "**/*.ts", + "../../typings/**/*" ], "exclude": [ "target/**/*", diff --git a/src/plugins/console/common/constants/autocomplete_definitions.ts b/src/plugins/console/common/constants/autocomplete_definitions.ts index b2ef4f1375419..0ab69c1fa9528 100644 --- a/src/plugins/console/common/constants/autocomplete_definitions.ts +++ b/src/plugins/console/common/constants/autocomplete_definitions.ts @@ -17,3 +17,5 @@ export const AUTOCOMPLETE_DEFINITIONS_FOLDER = resolve( export const GENERATED_SUBFOLDER = 'generated'; export const OVERRIDES_SUBFOLDER = 'overrides'; export const MANUAL_SUBFOLDER = 'manual'; + +export const API_DOCS_LINK = 'https://www.elastic.co/docs/api'; diff --git a/src/plugins/console/common/constants/index.ts b/src/plugins/console/common/constants/index.ts index ea572db743ef4..a00bcebcf38cc 100644 --- a/src/plugins/console/common/constants/index.ts +++ b/src/plugins/console/common/constants/index.ts @@ -15,6 +15,7 @@ export { GENERATED_SUBFOLDER, OVERRIDES_SUBFOLDER, MANUAL_SUBFOLDER, + API_DOCS_LINK, } from './autocomplete_definitions'; export { DEFAULT_INPUT_VALUE } from './editor_input'; export { DEFAULT_LANGUAGE, AVAILABLE_LANGUAGES } from './copy_as'; diff --git a/src/plugins/console/public/application/components/console_menu.tsx b/src/plugins/console/public/application/components/console_menu.tsx index 3ed1d67c3602b..4dee3ff06df0a 100644 --- a/src/plugins/console/public/application/components/console_menu.tsx +++ b/src/plugins/console/public/application/components/console_menu.tsx @@ -11,13 +11,7 @@ import React, { Component } from 'react'; import { NotificationsSetup } from '@kbn/core/public'; -import { - EuiIcon, - EuiContextMenuPanel, - EuiContextMenuItem, - EuiPopover, - EuiLink, -} from '@elastic/eui'; +import { EuiContextMenuPanel, EuiContextMenuItem, EuiPopover, EuiButtonIcon } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n-react'; import { i18n } from '@kbn/i18n'; @@ -115,15 +109,15 @@ export class ConsoleMenu extends Component { render() { const button = ( - - - + iconType="boxesVertical" + iconSize="s" + /> ); const items = [ diff --git a/src/plugins/console/public/application/components/console_tour_step.tsx b/src/plugins/console/public/application/components/console_tour_step.tsx new file mode 100644 index 0000000000000..578d590bfff4a --- /dev/null +++ b/src/plugins/console/public/application/components/console_tour_step.tsx @@ -0,0 +1,64 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React, { ReactNode, ReactElement } from 'react'; +import { EuiTourStep, PopoverAnchorPosition } from '@elastic/eui'; + +export interface ConsoleTourStepProps { + step: number; + stepsTotal: number; + isStepOpen: boolean; + title: ReactNode; + content: ReactNode; + onFinish: () => void; + footerAction: ReactNode | ReactNode[]; + dataTestSubj: string; + anchorPosition: string; + maxWidth: number; + css?: any; +} + +interface Props { + tourStepProps: ConsoleTourStepProps; + children: ReactNode & ReactElement; +} + +export const ConsoleTourStep = ({ tourStepProps, children }: Props) => { + const { + step, + isStepOpen, + stepsTotal, + title, + content, + onFinish, + footerAction, + dataTestSubj, + anchorPosition, + maxWidth, + css, + } = tourStepProps; + + return ( + + {children} + + ); +}; diff --git a/src/plugins/console/public/application/components/editor_content_spinner.tsx b/src/plugins/console/public/application/components/editor_content_spinner.tsx index eecd9aebf67cc..a4d0ccc98b76c 100644 --- a/src/plugins/console/public/application/components/editor_content_spinner.tsx +++ b/src/plugins/console/public/application/components/editor_content_spinner.tsx @@ -8,12 +8,12 @@ */ import React, { FunctionComponent } from 'react'; -import { EuiSkeletonText, EuiPageSection } from '@elastic/eui'; +import { EuiLoadingSpinner, EuiPageSection } from '@elastic/eui'; export const EditorContentSpinner: FunctionComponent = () => { return ( - - + + ); }; diff --git a/src/plugins/console/public/application/components/editor_example.tsx b/src/plugins/console/public/application/components/editor_example.tsx deleted file mode 100644 index 6a5ab6333c3b5..0000000000000 --- a/src/plugins/console/public/application/components/editor_example.tsx +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { EuiScreenReaderOnly, withEuiTheme } from '@elastic/eui'; -import type { WithEuiThemeProps } from '@elastic/eui'; -import { i18n } from '@kbn/i18n'; -import React, { useEffect, useRef } from 'react'; -import { createReadOnlyAceEditor, CustomAceEditor } from '../models/sense_editor'; -// @ts-ignore -import { Mode as InputMode } from '../models/legacy_core_editor/mode/input'; -import { Mode as OutputMode } from '../models/legacy_core_editor/mode/output'; - -interface EditorExampleProps { - panel: string; - example?: string; - theme: WithEuiThemeProps['theme']; - linesOfExampleCode?: number; - mode?: string; -} - -const exampleText = ` -GET _search -{ - "query": { - "match_all": {} - } -} -`; - -const EditorExample = ({ - panel, - example, - theme, - linesOfExampleCode = 6, - mode = 'input', -}: EditorExampleProps) => { - const inputId = `help-example-${panel}-input`; - const wrapperDivRef = useRef(null); - const editorRef = useRef(); - - useEffect(() => { - if (wrapperDivRef.current) { - editorRef.current = createReadOnlyAceEditor(wrapperDivRef.current); - - const editor = editorRef.current; - const editorMode = mode === 'input' ? new InputMode() : new OutputMode(); - editor.update((example || exampleText).trim(), editorMode); - editor.session.setUseWorker(false); - editor.setHighlightActiveLine(false); - - const textareaElement = wrapperDivRef.current.querySelector('textarea'); - if (textareaElement) { - textareaElement.setAttribute('id', inputId); - textareaElement.setAttribute('readonly', 'true'); - } - } - - return () => { - if (editorRef.current) { - editorRef.current.destroy(); - } - }; - }, [example, inputId, mode]); - - const wrapperDivStyle = { - height: `${parseInt(theme.euiTheme.size.base, 10) * linesOfExampleCode}px`, - margin: `${theme.euiTheme.size.base} 0`, - }; - - return ( - <> - - - -
- - ); -}; - -// eslint-disable-next-line import/no-default-export -export default withEuiTheme(EditorExample); diff --git a/src/plugins/console/public/application/components/help_panel.tsx b/src/plugins/console/public/application/components/help_panel.tsx deleted file mode 100644 index 30a356e27002e..0000000000000 --- a/src/plugins/console/public/application/components/help_panel.tsx +++ /dev/null @@ -1,163 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import React from 'react'; -import { FormattedMessage } from '@kbn/i18n-react'; -import { - EuiText, - EuiFlyout, - EuiFlyoutHeader, - EuiFlyoutBody, - EuiTitle, - EuiSpacer, - EuiLink, -} from '@elastic/eui'; -import EditorExample from './editor_example'; -import { useServicesContext } from '../contexts'; - -interface Props { - onClose: () => void; -} - -export function HelpPanel(props: Props) { - const { docLinks } = useServicesContext(); - - return ( - - - -

- -

-
-
- - -

- -

-

- -

-

- - Console - - ), - queryDsl: ( - - Query DSL - - ), - }} - /> -

- -

- -

- -
-
Ctrl/Cmd + I
-
- -
-
Ctrl/Cmd + /
-
- -
-
Ctrl + Space
-
- -
-
Ctrl/Cmd + Enter
-
- -
-
Ctrl/Cmd + Up/Down
-
- -
-
Ctrl/Cmd + Alt + L
-
- -
-
Ctrl/Cmd + Option + 0
-
- -
-
Down arrow
-
- -
-
Enter/Tab
-
- -
-
Ctrl/Cmd + L
-
- -
-
Esc
-
- -
-
-
-
-
- ); -} diff --git a/src/plugins/console/public/application/components/help_popover.tsx b/src/plugins/console/public/application/components/help_popover.tsx new file mode 100644 index 0000000000000..16e9465d4d388 --- /dev/null +++ b/src/plugins/console/public/application/components/help_popover.tsx @@ -0,0 +1,136 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { i18n } from '@kbn/i18n'; +import { + EuiPopover, + EuiTitle, + EuiText, + EuiFlexGroup, + EuiFlexItem, + EuiButtonIcon, + EuiSpacer, +} from '@elastic/eui'; +import { useServicesContext } from '../contexts'; + +interface HelpPopoverProps { + button: any; + isOpen: boolean; + closePopover: () => void; + resetTour: () => void; +} + +export const HelpPopover = ({ button, isOpen, closePopover, resetTour }: HelpPopoverProps) => { + const { docLinks } = useServicesContext(); + + return ( + + +

+ {i18n.translate('console.helpPopover.title', { + defaultMessage: 'Elastic Console', + })} +

+
+ + + + +

+ {i18n.translate('console.helpPopover.description', { + defaultMessage: + 'Console is an interactive UI for calling Elasticsearch and Kibana APIs and viewing their responses. Search your data, manage settings, and more, using Query DSL and REST API syntax.', + })} +

+
+ + + + + + + +

+ {i18n.translate('console.helpPopover.aboutConsoleLabel', { + defaultMessage: 'About Console', + })} +

+
+ + + +
+
+ + + + +

+ {i18n.translate('console.helpPopover.aboutQueryDSLLabel', { + defaultMessage: 'About Query DSL', + })} +

+
+ + + +
+
+ + + + +

+ {i18n.translate('console.helpPopover.rerunTourLabel', { + defaultMessage: 'Re-run feature tour', + })} +

+
+ + + +
+
+
+
+ ); +}; diff --git a/src/plugins/console/public/application/components/index.ts b/src/plugins/console/public/application/components/index.ts index e091fb5f2f8a5..111778d8fa776 100644 --- a/src/plugins/console/public/application/components/index.ts +++ b/src/plugins/console/public/application/components/index.ts @@ -7,50 +7,14 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import React from 'react'; -import { withSuspense } from '@kbn/shared-ux-utility'; - export { NetworkRequestStatusBar } from './network_request_status_bar'; export { SomethingWentWrongCallout } from './something_went_wrong_callout'; export type { TopNavMenuItem } from './top_nav_menu'; export { TopNavMenu } from './top_nav_menu'; export { ConsoleMenu } from './console_menu'; -export { WelcomePanel } from './welcome_panel'; -export type { AutocompleteOptions } from './settings_modal'; -export { HelpPanel } from './help_panel'; export { EditorContentSpinner } from './editor_content_spinner'; -export type { DevToolsVariable } from './variables'; - -/** - * The Lazily-loaded `DevToolsSettingsModal` component. Consumers should use `React.Suspense` or - * the withSuspense` HOC to load this component. - */ -export const DevToolsSettingsModalLazy = React.lazy(() => - import('./settings_modal').then(({ DevToolsSettingsModal }) => ({ - default: DevToolsSettingsModal, - })) -); - -/** - * A `DevToolsSettingsModal` component that is wrapped by the `withSuspense` HOC. This component can - * be used directly by consumers and will load the `DevToolsSettingsModalLazy` component lazily with - * a predefined fallback and error boundary. - */ -export const DevToolsSettingsModal = withSuspense(DevToolsSettingsModalLazy); - -/** - * The Lazily-loaded `DevToolsVariablesFlyout` component. Consumers should use `React.Suspense` or - * the withSuspense` HOC to load this component. - */ -export const DevToolsVariablesFlyoutLazy = React.lazy(() => - import('./variables').then(({ DevToolsVariablesFlyout }) => ({ - default: DevToolsVariablesFlyout, - })) -); - -/** - * A `DevToolsVariablesFlyout` component that is wrapped by the `withSuspense` HOC. This component can - * be used directly by consumers and will load the `DevToolsVariablesFlyoutLazy` component lazily with - * a predefined fallback and error boundary. - */ -export const DevToolsVariablesFlyout = withSuspense(DevToolsVariablesFlyoutLazy); +export { OutputPanelEmptyState } from './output_panel_empty_state'; +export { HelpPopover } from './help_popover'; +export { ShortcutsPopover } from './shortcuts_popover'; +export type { DevToolsVariable } from './variables/types'; +export { ConsoleTourStep, type ConsoleTourStepProps } from './console_tour_step'; diff --git a/src/plugins/console/public/application/components/output_panel_empty_state.tsx b/src/plugins/console/public/application/components/output_panel_empty_state.tsx new file mode 100644 index 0000000000000..6fdda1b5e3c5f --- /dev/null +++ b/src/plugins/console/public/application/components/output_panel_empty_state.tsx @@ -0,0 +1,57 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React, { FunctionComponent } from 'react'; +import { EuiEmptyPrompt, EuiTitle, EuiLink } from '@elastic/eui'; +import { FormattedMessage } from '@kbn/i18n-react'; +import { useServicesContext } from '../contexts'; + +export const OutputPanelEmptyState: FunctionComponent = () => { + const { docLinks } = useServicesContext(); + + return ( + + + + } + body={ +

+ +

+ } + footer={ + <> + +

+ +

+
+ + + + + } + data-test-subj="consoleOutputPanelEmptyState" + /> + ); +}; diff --git a/src/plugins/console/public/application/components/settings/index.ts b/src/plugins/console/public/application/components/settings/index.ts new file mode 100644 index 0000000000000..b446307a04a01 --- /dev/null +++ b/src/plugins/console/public/application/components/settings/index.ts @@ -0,0 +1,31 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { withSuspense } from '@kbn/shared-ux-utility'; + +export { type Props } from './settings_editor'; +export { type AutocompleteOptions } from './types'; + +/** + * The Lazily-loaded `SettingsEditorLazy` component. Consumers should use `React.Suspense` or + * the withSuspense` HOC to load this component. + */ +export const SettingsEditorLazy = React.lazy(() => + import('./settings_editor').then(({ SettingsEditor }) => ({ + default: SettingsEditor, + })) +); + +/** + * A `SettingsEditor` component that is wrapped by the `withSuspense` HOC. This component can + * be used directly by consumers and will load the `SettingsEditorLazy` component lazily with + * a predefined fallback and error boundary. + */ +export const SettingsEditor = withSuspense(SettingsEditorLazy); diff --git a/src/plugins/console/public/application/components/settings/settings_editor.tsx b/src/plugins/console/public/application/components/settings/settings_editor.tsx new file mode 100644 index 0000000000000..6f2bef834a559 --- /dev/null +++ b/src/plugins/console/public/application/components/settings/settings_editor.tsx @@ -0,0 +1,371 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { debounce } from 'lodash'; +import React, { useState, useCallback, useEffect, useRef } from 'react'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n-react'; + +import { + EuiButton, + EuiFieldNumber, + EuiSwitch, + EuiSuperSelect, + EuiTitle, + EuiSpacer, + EuiText, +} from '@elastic/eui'; + +import { SettingsGroup } from './settings_group'; +import { SettingsFormRow } from './settings_form_row'; +import { DevToolsSettings } from '../../../services'; + +const DEBOUNCE_DELAY = 500; +const ON_LABEL = i18n.translate('console.settingsPage.onLabel', { defaultMessage: 'On' }); +const OFF_LABEL = i18n.translate('console.settingsPage.offLabel', { defaultMessage: 'Off' }); + +const onceTimeInterval = () => + i18n.translate('console.settingsPage.refreshInterval.onceTimeInterval', { + defaultMessage: 'Once, when console loads', + }); + +const everyNMinutesTimeInterval = (value: number) => + i18n.translate('console.settingsPage.refreshInterval.everyNMinutesTimeInterval', { + defaultMessage: 'Every {value} {value, plural, one {minute} other {minutes}}', + values: { value }, + }); + +const everyHourTimeInterval = () => + i18n.translate('console.settingsPage.refreshInterval.everyHourTimeInterval', { + defaultMessage: 'Every hour', + }); + +const PRESETS_IN_MINUTES = [0, 1, 10, 20, 60]; +const intervalOptions = PRESETS_IN_MINUTES.map((value) => ({ + value: (value * 60000).toString(), + inputDisplay: + value === 0 + ? onceTimeInterval() + : value === 60 + ? everyHourTimeInterval() + : everyNMinutesTimeInterval(value), +})); + +export interface Props { + onSaveSettings: (newSettings: DevToolsSettings) => void; + refreshAutocompleteSettings: (selectedSettings: DevToolsSettings['autocomplete']) => void; + settings: DevToolsSettings; +} + +export const SettingsEditor = (props: Props) => { + const isMounted = useRef(false); + + const [fontSize, setFontSize] = useState(props.settings.fontSize); + const [wrapMode, setWrapMode] = useState(props.settings.wrapMode); + const [fields, setFields] = useState(props.settings.autocomplete.fields); + const [indices, setIndices] = useState(props.settings.autocomplete.indices); + const [templates, setTemplates] = useState(props.settings.autocomplete.templates); + const [dataStreams, setDataStreams] = useState(props.settings.autocomplete.dataStreams); + const [polling, setPolling] = useState(props.settings.polling); + const [pollInterval, setPollInterval] = useState(props.settings.pollInterval); + const [tripleQuotes, setTripleQuotes] = useState(props.settings.tripleQuotes); + const [isHistoryEnabled, setIsHistoryEnabled] = useState(props.settings.isHistoryEnabled); + const [isKeyboardShortcutsEnabled, setIsKeyboardShortcutsEnabled] = useState( + props.settings.isKeyboardShortcutsEnabled + ); + const [isAccessibilityOverlayEnabled, setIsAccessibilityOverlayEnabled] = useState( + props.settings.isAccessibilityOverlayEnabled + ); + + const autoCompleteCheckboxes = [ + { + id: 'fields', + label: i18n.translate('console.settingsPage.fieldsLabelText', { + defaultMessage: 'Fields', + }), + stateSetter: setFields, + checked: fields, + }, + { + id: 'indices', + label: i18n.translate('console.settingsPage.indicesAndAliasesLabelText', { + defaultMessage: 'Indices and aliases', + }), + stateSetter: setIndices, + checked: indices, + }, + { + id: 'templates', + label: i18n.translate('console.settingsPage.templatesLabelText', { + defaultMessage: 'Templates', + }), + stateSetter: setTemplates, + checked: templates, + }, + { + id: 'dataStreams', + label: i18n.translate('console.settingsPage.dataStreamsLabelText', { + defaultMessage: 'Data streams', + }), + stateSetter: setDataStreams, + checked: dataStreams, + }, + ]; + + const saveSettings = () => { + props.onSaveSettings({ + fontSize, + wrapMode, + autocomplete: { + fields, + indices, + templates, + dataStreams, + }, + polling, + pollInterval, + tripleQuotes, + isHistoryEnabled, + isKeyboardShortcutsEnabled, + isAccessibilityOverlayEnabled, + }); + }; + const debouncedSaveSettings = debounce(saveSettings, DEBOUNCE_DELAY); + + useEffect(() => { + if (isMounted.current) { + debouncedSaveSettings(); + } else { + isMounted.current = true; + } + }, [ + fontSize, + wrapMode, + fields, + indices, + templates, + dataStreams, + polling, + pollInterval, + tripleQuotes, + isHistoryEnabled, + isKeyboardShortcutsEnabled, + isAccessibilityOverlayEnabled, + debouncedSaveSettings, + ]); + + const onPollingIntervalChange = useCallback((value: string) => { + const sanitizedValue = parseInt(value, 10); + + setPolling(!!sanitizedValue); + setPollInterval(sanitizedValue); + }, []); + + const toggleKeyboardShortcuts = useCallback((isEnabled: boolean) => { + setIsKeyboardShortcutsEnabled(isEnabled); + }, []); + + const toggleAccessibilityOverlay = useCallback( + (isEnabled: boolean) => setIsAccessibilityOverlayEnabled(isEnabled), + [] + ); + + const toggleSavingToHistory = useCallback( + (isEnabled: boolean) => setIsHistoryEnabled(isEnabled), + [] + ); + + return ( + <> + +

+ +

+
+ + +

+ +

+
+ + {/* GENERAL SETTINGS */} + + + toggleSavingToHistory(e.target.checked)} + /> + + + toggleKeyboardShortcuts(e.target.checked)} + /> + + + toggleAccessibilityOverlay(e.target.checked)} + /> + + + {/* DISPLAY SETTINGS */} + + + { + const val = parseInt(e.target.value, 10); + if (!val) return; + setFontSize(val); + }} + /> + + + setWrapMode(e.target.checked)} + id="wrapLines" + /> + + + setTripleQuotes(e.target.checked)} + id="tripleQuotes" + /> + + + {/* AUTOCOMPLETE SETTINGS */} + + {autoCompleteCheckboxes.map((opts) => ( + + opts.stateSetter(e.target.checked)} + /> + + ))} + + {/* AUTOCOMPLETE REFRESH SETTINGS */} + {(fields || indices || templates || dataStreams) && ( + <> + + + + + + + { + // Only refresh the currently selected settings. + props.refreshAutocompleteSettings({ + fields, + indices, + templates, + dataStreams, + }); + }} + > + + + + + )} + + ); +}; diff --git a/src/plugins/console/public/application/components/settings/settings_form_row.tsx b/src/plugins/console/public/application/components/settings/settings_form_row.tsx new file mode 100644 index 0000000000000..383eabfb93bd2 --- /dev/null +++ b/src/plugins/console/public/application/components/settings/settings_form_row.tsx @@ -0,0 +1,33 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; + +import { EuiFlexGroup, EuiFlexItem, EuiFormRow } from '@elastic/eui'; + +export interface DevToolsSettingsModalProps { + label: string; + children: React.ReactNode; +} + +export const SettingsFormRow = ({ label, children }: DevToolsSettingsModalProps) => { + return ( + + + + + {label} + + + + {children} + + + ); +}; diff --git a/src/plugins/console/public/application/components/settings/settings_group.tsx b/src/plugins/console/public/application/components/settings/settings_group.tsx new file mode 100644 index 0000000000000..d6feb8af1c90a --- /dev/null +++ b/src/plugins/console/public/application/components/settings/settings_group.tsx @@ -0,0 +1,37 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; + +import { EuiTitle, EuiSpacer, EuiText, EuiHorizontalRule } from '@elastic/eui'; + +export interface DevToolsSettingsModalProps { + title: string; + description?: string; +} + +export const SettingsGroup = ({ title, description }: DevToolsSettingsModalProps) => { + return ( + <> + + +

{title}

+
+ {description && ( + <> + + +

{description}

+
+ + )} + + + ); +}; diff --git a/src/plugins/controls/storybook/main.ts b/src/plugins/console/public/application/components/settings/types.ts similarity index 85% rename from src/plugins/controls/storybook/main.ts rename to src/plugins/console/public/application/components/settings/types.ts index e3b5b1c6c596a..f524e37124746 100644 --- a/src/plugins/controls/storybook/main.ts +++ b/src/plugins/console/public/application/components/settings/types.ts @@ -7,6 +7,4 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { defaultConfig } from '@kbn/storybook'; - -module.exports = defaultConfig; +export type AutocompleteOptions = 'fields' | 'indices' | 'templates'; diff --git a/src/plugins/console/public/application/components/settings_modal.tsx b/src/plugins/console/public/application/components/settings_modal.tsx deleted file mode 100644 index 9b7740b4affdf..0000000000000 --- a/src/plugins/console/public/application/components/settings_modal.tsx +++ /dev/null @@ -1,391 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import _ from 'lodash'; -import React, { Fragment, useState, useCallback } from 'react'; -import { i18n } from '@kbn/i18n'; -import { FormattedMessage } from '@kbn/i18n-react'; - -import { - EuiButton, - EuiButtonEmpty, - EuiFieldNumber, - EuiFormRow, - EuiCheckboxGroup, - EuiModal, - EuiModalBody, - EuiModalFooter, - EuiModalHeader, - EuiModalHeaderTitle, - EuiSwitch, - EuiSuperSelect, -} from '@elastic/eui'; - -import { DevToolsSettings } from '../../services'; -import { unregisterCommands } from '../containers/editor/legacy/console_editor/keyboard_shortcuts'; -import type { SenseEditor } from '../models'; - -export type AutocompleteOptions = 'fields' | 'indices' | 'templates'; - -const onceTimeInterval = () => - i18n.translate('console.settingsPage.refreshInterval.onceTimeInterval', { - defaultMessage: 'Once, when console loads', - }); - -const everyNMinutesTimeInterval = (value: number) => - i18n.translate('console.settingsPage.refreshInterval.everyNMinutesTimeInterval', { - defaultMessage: 'Every {value} {value, plural, one {minute} other {minutes}}', - values: { value }, - }); - -const everyHourTimeInterval = () => - i18n.translate('console.settingsPage.refreshInterval.everyHourTimeInterval', { - defaultMessage: 'Every hour', - }); - -const PRESETS_IN_MINUTES = [0, 1, 10, 20, 60]; -const intervalOptions = PRESETS_IN_MINUTES.map((value) => ({ - value: (value * 60000).toString(), - inputDisplay: - value === 0 - ? onceTimeInterval() - : value === 60 - ? everyHourTimeInterval() - : everyNMinutesTimeInterval(value), -})); - -export interface DevToolsSettingsModalProps { - onSaveSettings: (newSettings: DevToolsSettings) => void; - onClose: () => void; - refreshAutocompleteSettings: (selectedSettings: DevToolsSettings['autocomplete']) => void; - settings: DevToolsSettings; - editorInstance: SenseEditor | null; -} - -export const DevToolsSettingsModal = (props: DevToolsSettingsModalProps) => { - const [fontSize, setFontSize] = useState(props.settings.fontSize); - const [wrapMode, setWrapMode] = useState(props.settings.wrapMode); - const [fields, setFields] = useState(props.settings.autocomplete.fields); - const [indices, setIndices] = useState(props.settings.autocomplete.indices); - const [templates, setTemplates] = useState(props.settings.autocomplete.templates); - const [dataStreams, setDataStreams] = useState(props.settings.autocomplete.dataStreams); - const [polling, setPolling] = useState(props.settings.polling); - const [pollInterval, setPollInterval] = useState(props.settings.pollInterval); - const [tripleQuotes, setTripleQuotes] = useState(props.settings.tripleQuotes); - const [isHistoryEnabled, setIsHistoryEnabled] = useState(props.settings.isHistoryEnabled); - const [isKeyboardShortcutsEnabled, setIsKeyboardShortcutsEnabled] = useState( - props.settings.isKeyboardShortcutsEnabled - ); - const [isAccessibilityOverlayEnabled, setIsAccessibilityOverlayEnabled] = useState( - props.settings.isAccessibilityOverlayEnabled - ); - - const autoCompleteCheckboxes = [ - { - id: 'fields', - label: i18n.translate('console.settingsPage.fieldsLabelText', { - defaultMessage: 'Fields', - }), - stateSetter: setFields, - }, - { - id: 'indices', - label: i18n.translate('console.settingsPage.indicesAndAliasesLabelText', { - defaultMessage: 'Indices and aliases', - }), - stateSetter: setIndices, - }, - { - id: 'templates', - label: i18n.translate('console.settingsPage.templatesLabelText', { - defaultMessage: 'Templates', - }), - stateSetter: setTemplates, - }, - { - id: 'dataStreams', - label: i18n.translate('console.settingsPage.dataStreamsLabelText', { - defaultMessage: 'Data streams', - }), - stateSetter: setDataStreams, - }, - ]; - - const checkboxIdToSelectedMap = { - fields, - indices, - templates, - dataStreams, - }; - - const onAutocompleteChange = (optionId: AutocompleteOptions) => { - const option = _.find(autoCompleteCheckboxes, (item) => item.id === optionId); - if (option) { - option.stateSetter(!checkboxIdToSelectedMap[optionId]); - } - }; - - function saveSettings() { - props.onSaveSettings({ - fontSize, - wrapMode, - autocomplete: { - fields, - indices, - templates, - dataStreams, - }, - polling, - pollInterval, - tripleQuotes, - isHistoryEnabled, - isKeyboardShortcutsEnabled, - isAccessibilityOverlayEnabled, - }); - } - - const onPollingIntervalChange = useCallback((value: string) => { - const sanitizedValue = parseInt(value, 10); - - setPolling(!!sanitizedValue); - setPollInterval(sanitizedValue); - }, []); - - const toggleKeyboardShortcuts = useCallback( - (isEnabled: boolean) => { - if (props.editorInstance) { - unregisterCommands(props.editorInstance); - } - - setIsKeyboardShortcutsEnabled(isEnabled); - }, - [props.editorInstance] - ); - - const toggleAccessibilityOverlay = useCallback( - (isEnabled: boolean) => setIsAccessibilityOverlayEnabled(isEnabled), - [] - ); - - const toggleSavingToHistory = useCallback( - (isEnabled: boolean) => setIsHistoryEnabled(isEnabled), - [] - ); - - // It only makes sense to show polling options if the user needs to fetch any data. - const pollingFields = - fields || indices || templates || dataStreams ? ( - - - } - helpText={ - - } - > - - - - { - // Only refresh the currently selected settings. - props.refreshAutocompleteSettings({ - fields, - indices, - templates, - dataStreams, - }); - }} - > - - - - ) : undefined; - - return ( - - - - - - - - - - } - > - { - const val = parseInt(e.target.value, 10); - if (!val) return; - setFontSize(val); - }} - /> - - - - - } - onChange={(e) => setWrapMode(e.target.checked)} - /> - - - - } - > - - } - onChange={(e) => setTripleQuotes(e.target.checked)} - /> - - - - } - > - - } - onChange={(e) => toggleSavingToHistory(e.target.checked)} - /> - - - - } - > - - } - onChange={(e) => toggleKeyboardShortcuts(e.target.checked)} - /> - - - - } - > - - } - onChange={(e) => toggleAccessibilityOverlay(e.target.checked)} - /> - - - - } - > - { - const { stateSetter, ...rest } = opts; - return rest; - })} - idToSelectedMap={checkboxIdToSelectedMap} - onChange={(e: unknown) => { - onAutocompleteChange(e as AutocompleteOptions); - }} - /> - - - {pollingFields} - - - - - - - - - - - - - ); -}; diff --git a/src/plugins/console/public/application/containers/console_history/index.ts b/src/plugins/console/public/application/components/shortcuts_popover/index.ts similarity index 89% rename from src/plugins/console/public/application/containers/console_history/index.ts rename to src/plugins/console/public/application/components/shortcuts_popover/index.ts index d89006d5f4c13..67b91a4e6dffb 100644 --- a/src/plugins/console/public/application/containers/console_history/index.ts +++ b/src/plugins/console/public/application/components/shortcuts_popover/index.ts @@ -7,4 +7,4 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export { ConsoleHistory } from './console_history'; +export { ShortcutsPopover } from './shortcuts_popover'; diff --git a/src/plugins/console/public/application/components/shortcuts_popover/keys.tsx b/src/plugins/console/public/application/components/shortcuts_popover/keys.tsx new file mode 100644 index 0000000000000..9a4a0329cbf5c --- /dev/null +++ b/src/plugins/console/public/application/components/shortcuts_popover/keys.tsx @@ -0,0 +1,69 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiIcon } from '@elastic/eui'; + +export const KEYS = { + keyCtrlCmd: i18n.translate('console.shortcutKeys.keyCtrlCmd', { + defaultMessage: 'Ctrl/Cmd', + }), + keyEnter: i18n.translate('console.shortcutKeys.keyEnter', { + defaultMessage: 'Enter', + }), + keyAltOption: i18n.translate('console.shortcutKeys.keyAltOption', { + defaultMessage: 'Alt/Option', + }), + keyOption: i18n.translate('console.shortcutKeys.keyOption', { + defaultMessage: 'Option', + }), + keyShift: i18n.translate('console.shortcutKeys.keyShift', { + defaultMessage: 'Shift', + }), + keyTab: i18n.translate('console.shortcutKeys.keyTab', { + defaultMessage: 'Tab', + }), + keyEsc: i18n.translate('console.shortcutKeys.keyEsc', { + defaultMessage: 'Esc', + }), + keyUp: ( + + ), + keyDown: ( + + ), + keySlash: i18n.translate('console.shortcutKeys.keySlash', { + defaultMessage: '/', + }), + keySpace: i18n.translate('console.shortcutKeys.keySpace', { + defaultMessage: 'Space', + }), + keyI: i18n.translate('console.shortcutKeys.keyI', { + defaultMessage: 'I', + }), + keyO: i18n.translate('console.shortcutKeys.keyO', { + defaultMessage: 'O', + }), + keyL: i18n.translate('console.shortcutKeys.keyL', { + defaultMessage: 'L', + }), +}; diff --git a/src/plugins/console/public/application/components/shortcuts_popover/shortcut_line.tsx b/src/plugins/console/public/application/components/shortcuts_popover/shortcut_line.tsx new file mode 100644 index 0000000000000..a57c256ce3ce5 --- /dev/null +++ b/src/plugins/console/public/application/components/shortcuts_popover/shortcut_line.tsx @@ -0,0 +1,65 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import { EuiCode, EuiFlexGroup, EuiFlexItem, EuiText } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import React from 'react'; + +interface ShortcutLineFlexItemProps { + id: string; + description: string; + keys: any[]; + alternativeKeys?: any[]; +} + +const renderKeys = (keys: string[]) => { + return keys.map((key, index) => ( + + {index > 0 && ' + '} + {key} + + )); +}; + +export const ShortcutLineFlexItem = ({ + id, + description, + keys, + alternativeKeys, +}: ShortcutLineFlexItemProps) => { + return ( + + + + + {i18n.translate('console.shortcutDescription.' + id, { + defaultMessage: description, + })} + + + + + {renderKeys(keys)} + {alternativeKeys && ( + <> + + {' '} + {i18n.translate('console.shortcuts.alternativeKeysOrDivider', { + defaultMessage: 'or', + })}{' '} + + {renderKeys(alternativeKeys)} + + )} + + + + + ); +}; diff --git a/src/plugins/console/public/application/components/shortcuts_popover/shortcuts_popover.tsx b/src/plugins/console/public/application/components/shortcuts_popover/shortcuts_popover.tsx new file mode 100644 index 0000000000000..9ceaf13dc5dba --- /dev/null +++ b/src/plugins/console/public/application/components/shortcuts_popover/shortcuts_popover.tsx @@ -0,0 +1,114 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { EuiPopover, EuiTitle, EuiHorizontalRule, EuiFlexGroup, EuiSpacer } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { ShortcutLineFlexItem } from './shortcut_line'; +import { KEYS } from './keys'; + +interface ShortcutsPopoverProps { + button: any; + isOpen: boolean; + closePopover: () => void; +} + +export const ShortcutsPopover = ({ button, isOpen, closePopover }: ShortcutsPopoverProps) => { + return ( + + +
+ {i18n.translate('console.shortcuts.navigationShortcutsSubtitle', { + defaultMessage: 'Navigation shortcuts', + })} +
+
+ + + + + + + +
+ {i18n.translate('console.shortcuts.requestShortcutsSubtitle', { + defaultMessage: 'Request shortcuts', + })} +
+
+ + + + + + + + + + + +
+ {i18n.translate('console.shortcuts.autocompleteShortcutsSubtitle', { + defaultMessage: 'Autocomplete menu shortcuts', + })} +
+
+ + + + + + +
+ ); +}; diff --git a/src/plugins/console/public/application/components/top_nav_menu.tsx b/src/plugins/console/public/application/components/top_nav_menu.tsx index cddbe95f8f1b5..2309c01afc18a 100644 --- a/src/plugins/console/public/application/components/top_nav_menu.tsx +++ b/src/plugins/console/public/application/components/top_nav_menu.tsx @@ -9,6 +9,7 @@ import React, { FunctionComponent } from 'react'; import { EuiTabs, EuiTab } from '@elastic/eui'; +import { ConsoleTourStep, ConsoleTourStepProps } from './console_tour_step'; export interface TopNavMenuItem { id: string; @@ -16,28 +17,42 @@ export interface TopNavMenuItem { description: string; onClick: () => void; testId: string; + isSelected: boolean; + tourStep?: number; } interface Props { disabled?: boolean; items: TopNavMenuItem[]; + tourStepProps: ConsoleTourStepProps[]; } -export const TopNavMenu: FunctionComponent = ({ items, disabled }) => { +export const TopNavMenu: FunctionComponent = ({ items, disabled, tourStepProps }) => { return ( - + {items.map((item, idx) => { - return ( + const tab = ( {item.label} ); + + if (item.tourStep) { + return ( + + {tab} + + ); + } + + return tab; })} ); diff --git a/src/plugins/console/public/application/components/variables/index.ts b/src/plugins/console/public/application/components/variables/index.ts index 108befce39f51..8051ed2ddaa93 100644 --- a/src/plugins/console/public/application/components/variables/index.ts +++ b/src/plugins/console/public/application/components/variables/index.ts @@ -7,5 +7,25 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export * from './variables_flyout'; -export * from './utils'; +import React from 'react'; +import { withSuspense } from '@kbn/shared-ux-utility'; + +export { type Props } from './variables_editor'; +export { type DevToolsVariable } from './types'; + +/** + * The Lazily-loaded `VariablesEditorLazy` component. Consumers should use `React.Suspense` or + * the withSuspense` HOC to load this component. + */ +export const VariablesEditorLazy = React.lazy(() => + import('./variables_editor').then(({ VariablesEditor }) => ({ + default: VariablesEditor, + })) +); + +/** + * A `VariablesEditor` component that is wrapped by the `withSuspense` HOC. This component can + * be used directly by consumers and will load the `VariablesEditorLazy` component lazily with + * a predefined fallback and error boundary. + */ +export const VariablesEditor = withSuspense(VariablesEditorLazy); diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/index.ts b/src/plugins/console/public/application/components/variables/types.ts similarity index 84% rename from src/plugins/console/public/application/containers/editor/legacy/console_editor/index.ts rename to src/plugins/console/public/application/components/variables/types.ts index 3df103aa3be70..40a2ac86c361f 100644 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/index.ts +++ b/src/plugins/console/public/application/components/variables/types.ts @@ -7,5 +7,8 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export { Editor } from './editor'; -export { EditorOutput } from './editor_output'; +export interface DevToolsVariable { + id: string; + name: string; + value: string; +} diff --git a/src/plugins/console/public/application/components/variables/utils.ts b/src/plugins/console/public/application/components/variables/utils.ts index 50664e0a99cf6..b636b9b0a6266 100644 --- a/src/plugins/console/public/application/components/variables/utils.ts +++ b/src/plugins/console/public/application/components/variables/utils.ts @@ -7,38 +7,18 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import { v4 as uuidv4 } from 'uuid'; -import type { DevToolsVariable } from './variables_flyout'; +import { type DevToolsVariable } from './types'; -export const editVariable = ( - name: string, - value: string, - id: string, - variables: DevToolsVariable[] -) => { - const index = variables.findIndex((v) => v.id === id); - - if (index === -1) { - return variables; - } - - return [ - ...variables.slice(0, index), - { ...variables[index], [name]: value }, - ...variables.slice(index + 1), - ]; +export const editVariable = (newVariable: DevToolsVariable, variables: DevToolsVariable[]) => { + return variables.map((variable: DevToolsVariable) => { + return variable.id === newVariable.id ? newVariable : variable; + }); }; export const deleteVariable = (variables: DevToolsVariable[], id: string) => { return variables.filter((v) => v.id !== id); }; -export const generateEmptyVariableField = (): DevToolsVariable => ({ - id: uuidv4(), - name: '', - value: '', -}); - export const isValidVariableName = (name: string) => { /* * MUST avoid characters that get URL-encoded, because they'll result in unusable variable names. diff --git a/src/plugins/console/public/application/components/variables/variables_editor.tsx b/src/plugins/console/public/application/components/variables/variables_editor.tsx new file mode 100644 index 0000000000000..197fdec7f49c7 --- /dev/null +++ b/src/plugins/console/public/application/components/variables/variables_editor.tsx @@ -0,0 +1,255 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React, { useState, useCallback, useEffect, useRef } from 'react'; +import { BehaviorSubject } from 'rxjs'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n-react'; + +import { + EuiTitle, + EuiButton, + EuiBasicTable, + EuiButtonIcon, + EuiSpacer, + EuiText, + EuiCode, + useGeneratedHtmlId, + EuiConfirmModal, + type EuiBasicTableColumn, +} from '@elastic/eui'; + +import { VariableEditorForm } from './variables_editor_form'; +import * as utils from './utils'; +import { type DevToolsVariable } from './types'; + +export interface Props { + onSaveVariables: (newVariables: DevToolsVariable[]) => void; + variables: []; +} + +export const VariablesEditor = (props: Props) => { + const isMounted = useRef(false); + const [isAddingVariable, setIsAddingVariable] = useState(false); + const [deleteModalForVariable, setDeleteModalForVariable] = useState(null); + const [variables, setVariables] = useState(props.variables); + const deleteModalTitleId = useGeneratedHtmlId(); + + // Use a ref to persist the BehaviorSubject across renders + const itemIdToExpandedRowMap$ = useRef(new BehaviorSubject>({})); + // Subscribe to the BehaviorSubject and update local state on change + const [itemIdToExpandedRowMap, setItemIdToExpandedRowMap] = useState< + Record + >({}); + // Clear the expanded row map and dispose all the expanded rows + const collapseExpandedRows = () => itemIdToExpandedRowMap$.current.next({}); + + // Subscribe to the BehaviorSubject on mount + useEffect(() => { + const subscription = itemIdToExpandedRowMap$.current.subscribe(setItemIdToExpandedRowMap); + return () => subscription.unsubscribe(); + }, []); + + // Always save variables when they change + useEffect(() => { + if (isMounted.current) { + props.onSaveVariables(variables); + } else { + isMounted.current = true; + } + }, [variables, props]); + + const toggleDetails = (variableId: string) => { + const currentMap = itemIdToExpandedRowMap$.current.getValue(); + let itemIdToExpandedRowMapValues = { ...currentMap }; + + if (itemIdToExpandedRowMapValues[variableId]) { + delete itemIdToExpandedRowMapValues[variableId]; + } else { + // Always close the add variable form when editing a variable + setIsAddingVariable(false); + // We only allow one expanded row at a time + itemIdToExpandedRowMapValues = {}; + itemIdToExpandedRowMapValues[variableId] = ( + { + const updatedVariables = utils.editVariable(data, variables); + setVariables(updatedVariables); + collapseExpandedRows(); + }} + onCancel={() => { + collapseExpandedRows(); + }} + defaultValue={variables.find((v) => v.id === variableId)} + /> + ); + } + + // Update the BehaviorSubject with the new state + itemIdToExpandedRowMap$.current.next(itemIdToExpandedRowMapValues); + }; + + const deleteVariable = useCallback( + (id: string) => { + const updatedVariables = utils.deleteVariable(variables, id); + setVariables(updatedVariables); + setDeleteModalForVariable(null); + }, + [variables, setDeleteModalForVariable] + ); + + const onAddVariable = (data: DevToolsVariable) => { + setVariables((v: DevToolsVariable[]) => [...v, data]); + setIsAddingVariable(false); + }; + + const columns: Array> = [ + { + field: 'name', + name: i18n.translate('console.variablesPage.variablesTable.columns.variableHeader', { + defaultMessage: 'Variable name', + }), + 'data-test-subj': 'variableNameCell', + render: (name: string) => { + return {`\$\{${name}\}`}; + }, + }, + { + field: 'value', + name: i18n.translate('console.variablesPage.variablesTable.columns.valueHeader', { + defaultMessage: 'Value', + }), + 'data-test-subj': 'variableValueCell', + render: (value: string) => {value}, + }, + { + field: 'id', + name: '', + width: '40px', + isExpander: true, + render: (id: string, variable: DevToolsVariable) => { + const itemIdToExpandedRowMapValues = { ...itemIdToExpandedRowMap }; + + return ( + toggleDetails(id)} + data-test-subj="variableEditButton" + /> + ); + }, + }, + { + field: 'id', + name: '', + width: '40px', + render: (id: string, variable: DevToolsVariable) => ( + setDeleteModalForVariable(id)} + data-test-subj="variablesRemoveButton" + /> + ), + }, + ]; + + return ( + <> + +

+ +

+
+ + +

+ +

+
+ + + + + {isAddingVariable && ( + setIsAddingVariable(false)} /> + )} + + + +
+ { + setIsAddingVariable(true); + collapseExpandedRows(); + }} + disabled={isAddingVariable} + > + + +
+ + {deleteModalForVariable && ( + setDeleteModalForVariable(null)} + onConfirm={() => deleteVariable(deleteModalForVariable)} + cancelButtonText={i18n.translate('console.variablesPage.deleteModal.cancelButtonText', { + defaultMessage: 'Cancel', + })} + confirmButtonText={i18n.translate('console.variablesPage.deleteModal.confirmButtonText', { + defaultMessage: 'Delete variable', + })} + buttonColor="danger" + > +

+ +

+
+ )} + + ); +}; diff --git a/src/plugins/console/public/application/components/variables/variables_editor_form.tsx b/src/plugins/console/public/application/components/variables/variables_editor_form.tsx new file mode 100644 index 0000000000000..446aaab0d4e94 --- /dev/null +++ b/src/plugins/console/public/application/components/variables/variables_editor_form.tsx @@ -0,0 +1,184 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { i18n } from '@kbn/i18n'; +import { v4 as uuidv4 } from 'uuid'; +import { FormattedMessage } from '@kbn/i18n-react'; + +import { + EuiTitle, + EuiFlexGroup, + EuiFlexItem, + EuiButton, + EuiSpacer, + EuiPanel, + EuiButtonEmpty, +} from '@elastic/eui'; + +import { + useForm, + Form, + UseField, + TextField, + FieldConfig, + fieldValidators, + FormConfig, + ValidationFuncArg, +} from '../../../shared_imports'; + +import { type DevToolsVariable } from './types'; +import { isValidVariableName } from './utils'; + +export interface VariableEditorFormProps { + onSubmit: (data: DevToolsVariable) => void; + onCancel: () => void; + defaultValue?: DevToolsVariable; + title?: string; +} + +const fieldsConfig: Record = { + variableName: { + label: i18n.translate('console.variablesPage.form.variableNameFieldLabel', { + defaultMessage: 'Variable name', + }), + validations: [ + { + validator: ({ value }: ValidationFuncArg) => { + if (value.trim() === '') { + return { + message: i18n.translate('console.variablesPage.form.variableNameRequiredLabel', { + defaultMessage: 'This is a required field', + }), + }; + } + + if (!isValidVariableName(value)) { + return { + message: i18n.translate('console.variablesPage.form.variableNameInvalidLabel', { + defaultMessage: 'Only letters, numbers and underscores are allowed', + }), + }; + } + }, + }, + ], + }, + value: { + label: i18n.translate('console.variablesPage.form.valueFieldLabel', { + defaultMessage: 'Value', + }), + validations: [ + { + validator: fieldValidators.emptyField( + i18n.translate('console.variablesPage.form.valueRequiredLabel', { + defaultMessage: 'Value is required', + }) + ), + }, + ], + }, +}; + +export const VariableEditorForm = (props: VariableEditorFormProps) => { + const onSubmit: FormConfig['onSubmit'] = async (data, isValid) => { + if (isValid) { + props.onSubmit({ + ...props.defaultValue, + ...data, + ...(props.defaultValue ? {} : { id: uuidv4() }), + } as DevToolsVariable); + } + }; + + const { form } = useForm({ onSubmit, defaultValue: props.defaultValue }); + + return ( + <> + + +

+ {props.title ?? ( + + )} +

+
+ + +
+ + + + + + + + + props.onCancel()}> + + + + + + + + + + + +
+ + ); +}; diff --git a/src/plugins/console/public/application/components/variables/variables_flyout.tsx b/src/plugins/console/public/application/components/variables/variables_flyout.tsx deleted file mode 100644 index 9211d2a7e524f..0000000000000 --- a/src/plugins/console/public/application/components/variables/variables_flyout.tsx +++ /dev/null @@ -1,215 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import React, { useState, useCallback, ChangeEvent, FormEvent } from 'react'; -import { i18n } from '@kbn/i18n'; -import { FormattedMessage } from '@kbn/i18n-react'; - -import { - EuiFlyout, - EuiFlyoutHeader, - EuiTitle, - EuiFlyoutBody, - EuiFlyoutFooter, - EuiFlexGroup, - EuiFlexItem, - EuiButton, - EuiButtonEmpty, - EuiBasicTable, - EuiFieldText, - useGeneratedHtmlId, - EuiForm, - EuiFormRow, - EuiButtonIcon, - EuiSpacer, - EuiText, - type EuiBasicTableColumn, -} from '@elastic/eui'; - -import * as utils from './utils'; - -export interface DevToolsVariablesFlyoutProps { - onClose: () => void; - onSaveVariables: (newVariables: DevToolsVariable[]) => void; - variables: []; -} - -export interface DevToolsVariable { - id: string; - name: string; - value: string; -} - -export const DevToolsVariablesFlyout = (props: DevToolsVariablesFlyoutProps) => { - const [variables, setVariables] = useState(props.variables); - const formId = useGeneratedHtmlId({ prefix: '__console' }); - - const addNewVariable = useCallback(() => { - setVariables((v) => [...v, utils.generateEmptyVariableField()]); - }, []); - - const deleteVariable = useCallback( - (id: string) => { - const updatedVariables = utils.deleteVariable(variables, id); - setVariables(updatedVariables); - }, - [variables] - ); - - const onSubmit = useCallback( - (e: FormEvent) => { - e.preventDefault(); - props.onSaveVariables(variables.filter(({ name, value }) => name.trim() && value)); - }, - [props, variables] - ); - - const onChange = useCallback( - (event: ChangeEvent, id: string) => { - const { name, value } = event.target; - const editedVariables = utils.editVariable(name, value, id, variables); - setVariables(editedVariables); - }, - [variables] - ); - - const columns: Array> = [ - { - field: 'name', - name: i18n.translate('console.variablesPage.variablesTable.columns.variableHeader', { - defaultMessage: 'Variable name', - }), - render: (name, { id }) => { - const isInvalid = !utils.isValidVariableName(name); - return ( - , - ]} - fullWidth={true} - css={{ flexGrow: 1 }} - > - onChange(e, id)} - isInvalid={isInvalid} - fullWidth={true} - aria-label={i18n.translate( - 'console.variablesPage.variablesTable.variableInput.ariaLabel', - { - defaultMessage: 'Variable name', - } - )} - /> - - ); - }, - }, - { - field: 'value', - name: i18n.translate('console.variablesPage.variablesTable.columns.valueHeader', { - defaultMessage: 'Value', - }), - render: (value, { id }) => ( - onChange(e, id)} - value={value} - aria-label={i18n.translate('console.variablesPage.variablesTable.valueInput.ariaLabel', { - defaultMessage: 'Variable value', - })} - /> - ), - }, - { - field: 'id', - name: '', - width: '5%', - render: (id: string) => ( - deleteVariable(id)} - data-test-subj="variablesRemoveButton" - /> - ), - }, - ]; - - return ( - - - -

- -

-
- - -

- - - - ), - }} - /> -

-
-
- - - - - - - - - - - - - - - - - - - - - - -
- ); -}; diff --git a/src/plugins/console/public/application/components/welcome_panel.tsx b/src/plugins/console/public/application/components/welcome_panel.tsx deleted file mode 100644 index 967d173821e65..0000000000000 --- a/src/plugins/console/public/application/components/welcome_panel.tsx +++ /dev/null @@ -1,167 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import React from 'react'; -import { FormattedMessage } from '@kbn/i18n-react'; - -import { - EuiFlyout, - EuiFlyoutHeader, - EuiFlyoutBody, - EuiTitle, - EuiButton, - EuiText, - EuiFlyoutFooter, - EuiCode, -} from '@elastic/eui'; -import EditorExample from './editor_example'; -import * as examples from '../../../common/constants/welcome_panel'; - -interface Props { - onDismiss: () => void; -} - -export function WelcomePanel(props: Props) { - return ( - - - -

- -

-
-
- - -

- -

- -

- kbn:, - }} - /> -

- -

- -

-

- -

- - -

- -

-

- #, - doubleSlash: //, - slashAsterisk: /*, - asteriskSlash: */, - }} - /> -

- -

- -

-

- ${variableName}, - }} - /> -

- -
    -
  1. - Variables, - }} - /> -
  2. -
  3. - -
  4. -
- -
-
- - - - - -
- ); -} diff --git a/src/plugins/console/public/application/containers/config/config.tsx b/src/plugins/console/public/application/containers/config/config.tsx new file mode 100644 index 0000000000000..503fdbd9c7354 --- /dev/null +++ b/src/plugins/console/public/application/containers/config/config.tsx @@ -0,0 +1,47 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the "Elastic License + * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side + * Public License v 1"; you may not use this file except in compliance with, at + * your election, the "Elastic License 2.0", the "GNU Affero General Public + * License v3.0 only", or the "Server Side Public License, v 1". + */ + +import React from 'react'; +import { EuiFlexGroup, EuiFlexItem, EuiPanel, EuiSpacer } from '@elastic/eui'; + +import { Settings } from './settings'; +import { Variables } from './variables'; + +export interface Props { + isVerticalLayout: boolean; +} + +export function Config({ isVerticalLayout }: Props) { + return ( + + + + + + + + + + + + + ); +} diff --git a/src/plugins/console/public/application/containers/editor/utilities/index.ts b/src/plugins/console/public/application/containers/config/index.ts similarity index 93% rename from src/plugins/console/public/application/containers/editor/utilities/index.ts rename to src/plugins/console/public/application/containers/config/index.ts index 7561f02006235..b582701ab4481 100644 --- a/src/plugins/console/public/application/containers/editor/utilities/index.ts +++ b/src/plugins/console/public/application/containers/config/index.ts @@ -7,4 +7,4 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export * from './output_data'; +export { Config } from './config'; diff --git a/src/plugins/console/public/application/containers/settings.tsx b/src/plugins/console/public/application/containers/config/settings.tsx similarity index 88% rename from src/plugins/console/public/application/containers/settings.tsx rename to src/plugins/console/public/application/containers/config/settings.tsx index 2c952f4c5d7f9..d5e10f4d2c337 100644 --- a/src/plugins/console/public/application/containers/settings.tsx +++ b/src/plugins/console/public/application/containers/config/settings.tsx @@ -9,11 +9,10 @@ import React from 'react'; -import { AutocompleteOptions, DevToolsSettingsModal } from '../components'; +import { AutocompleteOptions, SettingsEditor } from '../../components/settings'; -import { useServicesContext, useEditorActionContext } from '../contexts'; -import { DevToolsSettings, Settings as SettingsService } from '../../services'; -import type { SenseEditor } from '../models'; +import { useServicesContext, useEditorActionContext } from '../../contexts'; +import { DevToolsSettings, Settings as SettingsService } from '../../../services'; const getAutocompleteDiff = ( newSettings: DevToolsSettings, @@ -25,12 +24,7 @@ const getAutocompleteDiff = ( }) as AutocompleteOptions[]; }; -export interface Props { - onClose: () => void; - editorInstance: SenseEditor | null; -} - -export function Settings({ onClose, editorInstance }: Props) { +export function Settings() { const { services: { settings, autocompleteInfo }, } = useServicesContext(); @@ -92,18 +86,15 @@ export function Settings({ onClose, editorInstance }: Props) { type: 'updateSettings', payload: newSettings, }); - onClose(); }; return ( - refreshAutocompleteSettings(settings, selectedSettings) } settings={settings.toJSON()} - editorInstance={editorInstance} /> ); } diff --git a/src/plugins/console/public/application/containers/variables.tsx b/src/plugins/console/public/application/containers/config/variables.tsx similarity index 66% rename from src/plugins/console/public/application/containers/variables.tsx rename to src/plugins/console/public/application/containers/config/variables.tsx index 54e191d04a9de..32b9615f529aa 100644 --- a/src/plugins/console/public/application/containers/variables.tsx +++ b/src/plugins/console/public/application/containers/config/variables.tsx @@ -8,27 +8,22 @@ */ import React from 'react'; -import { DevToolsVariablesFlyout, DevToolsVariable } from '../components'; -import { useServicesContext } from '../contexts'; -import { StorageKeys } from '../../services'; -import { DEFAULT_VARIABLES } from '../../../common/constants'; +import { type DevToolsVariable, VariablesEditor } from '../../components/variables'; +import { useServicesContext } from '../../contexts'; +import { StorageKeys } from '../../../services'; +import { DEFAULT_VARIABLES } from '../../../../common/constants'; -interface VariablesProps { - onClose: () => void; -} - -export function Variables({ onClose }: VariablesProps) { +export function Variables() { const { services: { storage }, } = useServicesContext(); const onSaveVariables = (newVariables: DevToolsVariable[]) => { storage.set(StorageKeys.VARIABLES, newVariables); - onClose(); }; + return ( - diff --git a/src/plugins/console/public/application/containers/console_history/console_history.tsx b/src/plugins/console/public/application/containers/console_history/console_history.tsx deleted file mode 100644 index 220e0b6a998aa..0000000000000 --- a/src/plugins/console/public/application/containers/console_history/console_history.tsx +++ /dev/null @@ -1,242 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import React, { useCallback, useEffect, useMemo, useState, useRef } from 'react'; -import { i18n } from '@kbn/i18n'; -import { memoize } from 'lodash'; -import moment from 'moment'; -import { - keys, - EuiSpacer, - EuiIcon, - EuiTitle, - EuiFlexItem, - EuiFlexGroup, - EuiButtonEmpty, - EuiButton, -} from '@elastic/eui'; - -import { useServicesContext } from '../../contexts'; -import { HistoryViewer } from './history_viewer'; -import { HistoryViewer as HistoryViewerMonaco } from './history_viewer_monaco'; -import { useEditorReadContext } from '../../contexts/editor_context'; -import { useRestoreRequestFromHistory } from '../../hooks'; - -interface Props { - close: () => void; -} - -const CHILD_ELEMENT_PREFIX = 'historyReq'; - -export function ConsoleHistory({ close }: Props) { - const { - services: { history }, - config: { isMonacoEnabled }, - } = useServicesContext(); - - const { settings: readOnlySettings } = useEditorReadContext(); - - const [requests, setPastRequests] = useState(history.getHistory()); - - const clearHistory = useCallback(() => { - history.clearHistory(); - setPastRequests(history.getHistory()); - }, [history]); - - const listRef = useRef(null); - - const [viewingReq, setViewingReq] = useState(null); - const [selectedIndex, setSelectedIndex] = useState(0); - const selectedReq = useRef(null); - - const describeReq = useMemo(() => { - const _describeReq = (req: { endpoint: string; time: string }) => { - const endpoint = req.endpoint; - const date = moment(req.time); - - let formattedDate = date.format('MMM D'); - if (date.diff(moment(), 'days') > -7) { - formattedDate = date.fromNow(); - } - - return `${endpoint} (${formattedDate})`; - }; - - (_describeReq as any).cache = new WeakMap(); - - return memoize(_describeReq); - }, []); - - const scrollIntoView = useCallback((idx: number) => { - const activeDescendant = listRef.current!.querySelector(`#${CHILD_ELEMENT_PREFIX}${idx}`); - if (activeDescendant) { - activeDescendant.scrollIntoView(); - } - }, []); - - const initialize = useCallback(() => { - const nextSelectedIndex = 0; - (describeReq as any).cache = new WeakMap(); - setViewingReq(requests[nextSelectedIndex]); - selectedReq.current = requests[nextSelectedIndex]; - setSelectedIndex(nextSelectedIndex); - scrollIntoView(nextSelectedIndex); - }, [describeReq, requests, scrollIntoView]); - - const clear = () => { - clearHistory(); - initialize(); - }; - - const restoreRequestFromHistory = useRestoreRequestFromHistory(isMonacoEnabled); - - useEffect(() => { - initialize(); - }, [initialize]); - - useEffect(() => { - const done = history.change(setPastRequests); - return () => done(); - }, [history]); - - /* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role,jsx-a11y/click-events-have-key-events */ - return ( - <> -
- -

{i18n.translate('console.historyPage.pageTitle', { defaultMessage: 'History' })}

-
- -
-
    { - if (ev.key === keys.ENTER) { - restoreRequestFromHistory(selectedReq.current); - return; - } - - let currentIdx = selectedIndex; - - if (ev.key === keys.ARROW_UP) { - ev.preventDefault(); - --currentIdx; - } else if (ev.key === keys.ARROW_DOWN) { - ev.preventDefault(); - ++currentIdx; - } - - const nextSelectedIndex = Math.min(Math.max(0, currentIdx), requests.length - 1); - - setViewingReq(requests[nextSelectedIndex]); - selectedReq.current = requests[nextSelectedIndex]; - setSelectedIndex(nextSelectedIndex); - scrollIntoView(nextSelectedIndex); - }} - role="listbox" - className="list-group conHistory__reqs" - tabIndex={0} - aria-activedescendant={`${CHILD_ELEMENT_PREFIX}${selectedIndex}`} - aria-label={i18n.translate('console.historyPage.requestListAriaLabel', { - defaultMessage: 'History of sent requests', - })} - > - {requests.map((req, idx) => { - const reqDescription = describeReq(req); - const isSelected = viewingReq === req; - return ( - // Ignore a11y issues on li's -
  • { - setViewingReq(req); - selectedReq.current = req; - setSelectedIndex(idx); - }} - role="option" - onMouseEnter={() => setViewingReq(req)} - onMouseLeave={() => setViewingReq(selectedReq.current)} - onDoubleClick={() => restoreRequestFromHistory(selectedReq.current)} - aria-label={i18n.translate('console.historyPage.itemOfRequestListAriaLabel', { - defaultMessage: 'Request: {historyItem}', - values: { historyItem: reqDescription }, - })} - aria-selected={isSelected} - > - {reqDescription} - - - -
  • - ); - })} -
- -
- - {isMonacoEnabled ? ( - - ) : ( - - )} -
- - - - - - clear()} - > - {i18n.translate('console.historyPage.clearHistoryButtonLabel', { - defaultMessage: 'Clear', - })} - - - - - - - close()} - > - {i18n.translate('console.historyPage.closehistoryButtonLabel', { - defaultMessage: 'Close', - })} - - - - - restoreRequestFromHistory(selectedReq.current)} - > - {i18n.translate('console.historyPage.applyHistoryButtonLabel', { - defaultMessage: 'Apply', - })} - - - - - -
- - - ); -} diff --git a/src/plugins/console/public/application/containers/console_history/history_viewer.tsx b/src/plugins/console/public/application/containers/console_history/history_viewer.tsx deleted file mode 100644 index 92d58e557cd89..0000000000000 --- a/src/plugins/console/public/application/containers/console_history/history_viewer.tsx +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import React, { useEffect, useRef } from 'react'; -import { i18n } from '@kbn/i18n'; - -import { DevToolsSettings } from '../../../services'; -import { subscribeResizeChecker } from '../editor/legacy/subscribe_console_resize_checker'; - -import * as InputMode from '../../models/legacy_core_editor/mode/input'; -const inputMode = new InputMode.Mode(); -import * as editor from '../../models/legacy_core_editor'; -import { applyCurrentSettings } from '../editor/legacy/console_editor/apply_editor_settings'; -import { formatRequestBodyDoc } from '../../../lib/utils'; - -interface Props { - settings: DevToolsSettings; - req: { method: string; endpoint: string; data: string; time: string } | null; -} - -export function HistoryViewer({ settings, req }: Props) { - const divRef = useRef(null); - const viewerRef = useRef(null); - - useEffect(() => { - const viewer = editor.createReadOnlyAceEditor(divRef.current!); - viewerRef.current = viewer; - const unsubscribe = subscribeResizeChecker(divRef.current!, viewer); - return () => unsubscribe(); - }, []); - - useEffect(() => { - applyCurrentSettings(viewerRef.current!, settings); - }, [settings]); - - if (viewerRef.current) { - const { current: viewer } = viewerRef; - if (req) { - const indent = true; - const formattedData = req.data ? formatRequestBodyDoc([req.data], indent).data : ''; - const s = req.method + ' ' + req.endpoint + '\n' + formattedData; - viewer.update(s, inputMode); - viewer.clearSelection(); - } else { - viewer.update( - i18n.translate('console.historyPage.noHistoryTextMessage', { - defaultMessage: 'No history available', - }), - inputMode - ); - } - } - - return
; -} diff --git a/src/plugins/console/public/application/containers/editor/monaco/components/context_menu/context_menu.tsx b/src/plugins/console/public/application/containers/editor/components/context_menu/context_menu.tsx similarity index 90% rename from src/plugins/console/public/application/containers/editor/monaco/components/context_menu/context_menu.tsx rename to src/plugins/console/public/application/containers/editor/components/context_menu/context_menu.tsx index 34001018900b5..3860f0b7bc704 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/components/context_menu/context_menu.tsx +++ b/src/plugins/console/public/application/containers/editor/components/context_menu/context_menu.tsx @@ -9,7 +9,7 @@ import React, { useState } from 'react'; import { - EuiIcon, + EuiButtonIcon, EuiContextMenuPanel, EuiContextMenuItem, EuiPopover, @@ -18,16 +18,17 @@ import { EuiLink, EuiLoadingSpinner, } from '@elastic/eui'; +import { css } from '@emotion/react'; import { NotificationsSetup } from '@kbn/core/public'; import { FormattedMessage } from '@kbn/i18n-react'; import { i18n } from '@kbn/i18n'; import { LanguageSelectorModal } from './language_selector_modal'; -import { convertRequestToLanguage } from '../../../../../../services'; +import { convertRequestToLanguage } from '../../../../../services'; import type { EditorRequest } from '../../types'; -import { useServicesContext } from '../../../../../contexts'; -import { StorageKeys } from '../../../../../../services'; -import { DEFAULT_LANGUAGE, AVAILABLE_LANGUAGES } from '../../../../../../../common/constants'; +import { useServicesContext } from '../../../../contexts'; +import { StorageKeys } from '../../../../../services'; +import { DEFAULT_LANGUAGE, AVAILABLE_LANGUAGES } from '../../../../../../common/constants'; interface Props { getRequests: () => Promise; @@ -36,6 +37,20 @@ interface Props { notifications: NotificationsSetup; } +const styles = { + // Remove the default underline on hover for the context menu items since it + // will also be applied to the language selector button, and apply it only to + // the text in the context menu item. + button: css` + &:hover { + text-decoration: none !important; + .languageSelector { + text-decoration: underline; + } + } + `, +}; + const DELAY_FOR_HIDING_SPINNER = 500; const getLanguageLabelByValue = (value: string) => { @@ -158,15 +173,15 @@ export const ContextMenu = ({ }; const button = ( - setIsPopoverOpen((prev) => !prev)} data-test-subj="toggleConsoleMenu" aria-label={i18n.translate('console.requestOptionsButtonAriaLabel', { defaultMessage: 'Request options', })} - > - - + iconType="boxesVertical" + iconSize="s" + /> ); const items = [ @@ -187,10 +202,11 @@ export const ContextMenu = ({ onCopyAsSubmit(); }} icon="copyClipboard" + css={styles.button} > - + void; diff --git a/src/plugins/console/public/application/containers/editor/monaco/components/index.ts b/src/plugins/console/public/application/containers/editor/components/index.ts similarity index 100% rename from src/plugins/console/public/application/containers/editor/monaco/components/index.ts rename to src/plugins/console/public/application/containers/editor/components/index.ts diff --git a/src/plugins/console/public/application/containers/editor/editor.tsx b/src/plugins/console/public/application/containers/editor/editor.tsx index 3eff2d97b3499..c999deee78637 100644 --- a/src/plugins/console/public/application/containers/editor/editor.tsx +++ b/src/plugins/console/public/application/containers/editor/editor.tsx @@ -7,95 +7,283 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import React, { useCallback, memo, useEffect, useState } from 'react'; +import React, { useRef, useCallback, memo, useEffect, useState } from 'react'; import { debounce } from 'lodash'; -import { EuiProgress } from '@elastic/eui'; +import { + EuiProgress, + EuiSplitPanel, + EuiFlexGroup, + EuiFlexItem, + EuiButtonEmpty, + EuiResizableContainer, +} from '@elastic/eui'; +import { euiThemeVars } from '@kbn/ui-theme'; -import { EditorContentSpinner } from '../../components'; -import { Panel, PanelsContainer } from '..'; -import { Editor as EditorUI, EditorOutput } from './legacy/console_editor'; +import { i18n } from '@kbn/i18n'; +import { TextObject } from '../../../../common/text_object'; + +import { + EditorContentSpinner, + OutputPanelEmptyState, + NetworkRequestStatusBar, +} from '../../components'; import { getAutocompleteInfo, StorageKeys } from '../../../services'; -import { useEditorReadContext, useServicesContext, useRequestReadContext } from '../../contexts'; -import type { SenseEditor } from '../../models'; -import { MonacoEditor, MonacoEditorOutput } from './monaco'; +import { + useEditorReadContext, + useServicesContext, + useRequestReadContext, + useRequestActionContext, + useEditorActionContext, +} from '../../contexts'; +import { MonacoEditor } from './monaco_editor'; +import { MonacoEditorOutput } from './monaco_editor_output'; +import { getResponseWithMostSevereStatusCode } from '../../../lib/utils'; -const INITIAL_PANEL_WIDTH = 50; -const PANEL_MIN_WIDTH = '100px'; +const INITIAL_PANEL_SIZE = 50; +const PANEL_MIN_SIZE = '20%'; +const DEBOUNCE_DELAY = 500; interface Props { loading: boolean; - setEditorInstance: (instance: SenseEditor) => void; + isVerticalLayout: boolean; + inputEditorValue: string; + setInputEditorValue: (value: string) => void; } -export const Editor = memo(({ loading, setEditorInstance }: Props) => { - const { - services: { storage }, - config: { isMonacoEnabled } = {}, - } = useServicesContext(); - - const { currentTextObject } = useEditorReadContext(); - const { requestInFlight } = useRequestReadContext(); - - const [fetchingMappings, setFetchingMappings] = useState(false); - - useEffect(() => { - const subscription = getAutocompleteInfo().mapping.isLoading$.subscribe(setFetchingMappings); - return () => { - subscription.unsubscribe(); - }; - }, []); - - const [firstPanelWidth, secondPanelWidth] = storage.get(StorageKeys.WIDTH, [ - INITIAL_PANEL_WIDTH, - INITIAL_PANEL_WIDTH, - ]); - - /* eslint-disable-next-line react-hooks/exhaustive-deps */ - const onPanelWidthChange = useCallback( - debounce((widths: number[]) => { - storage.set(StorageKeys.WIDTH, widths); - }, 300), - [] - ); - - if (!currentTextObject) return null; - - return ( - <> - {requestInFlight || fetchingMappings ? ( -
- -
- ) : null} - - - {loading ? ( - - ) : isMonacoEnabled ? ( - - ) : ( - - )} - - { + const { + services: { storage, objectStorageClient }, + } = useServicesContext(); + + const editorValueRef = useRef(null); + const { currentTextObject } = useEditorReadContext(); + const { + requestInFlight, + lastResult: { data: requestData, error: requestError }, + } = useRequestReadContext(); + + const dispatch = useRequestActionContext(); + const editorDispatch = useEditorActionContext(); + + const [fetchingAutocompleteEntities, setFetchingAutocompleteEntities] = useState(false); + + useEffect(() => { + const debouncedSetFechingAutocompleteEntities = debounce( + setFetchingAutocompleteEntities, + DEBOUNCE_DELAY + ); + const subscription = getAutocompleteInfo().isLoading$.subscribe( + debouncedSetFechingAutocompleteEntities + ); + + return () => { + subscription.unsubscribe(); + debouncedSetFechingAutocompleteEntities.cancel(); + }; + }, []); + + const [firstPanelSize, secondPanelSize] = storage.get(StorageKeys.SIZE, [ + INITIAL_PANEL_SIZE, + INITIAL_PANEL_SIZE, + ]); + + /* eslint-disable-next-line react-hooks/exhaustive-deps */ + const onPanelSizeChange = useCallback( + debounce((sizes) => { + storage.set(StorageKeys.SIZE, Object.values(sizes)); + }, 300), + [] + ); + + /* eslint-disable-next-line react-hooks/exhaustive-deps */ + const debouncedUpdateLocalStorageValue = useCallback( + debounce((textObject: TextObject) => { + editorValueRef.current = textObject; + objectStorageClient.text.update(textObject); + }, DEBOUNCE_DELAY), + [] + ); + + useEffect(() => { + return () => { + editorDispatch({ + type: 'setCurrentTextObject', + payload: editorValueRef.current!, + }); + }; + }, [editorDispatch]); + + // Always keep the localstorage in sync with the value in the editor + // to avoid losing the text object when the user navigates away from the shell + useEffect(() => { + // Only update when its not empty, this is to avoid setting the localstorage value + // to an empty string that will then be replaced by the example request. + if (inputEditorValue !== '') { + const textObject = { + ...currentTextObject, + text: inputEditorValue, + updatedAt: Date.now(), + } as TextObject; + + debouncedUpdateLocalStorageValue(textObject); + } + /* eslint-disable-next-line react-hooks/exhaustive-deps */ + }, [inputEditorValue, debouncedUpdateLocalStorageValue]); + + const data = getResponseWithMostSevereStatusCode(requestData) ?? requestError; + const isLoading = loading || requestInFlight; + + if (!currentTextObject) return null; + + return ( + <> + {fetchingAutocompleteEntities ? ( +
+ +
+ ) : null} + onPanelSizeChange(sizes)} + data-test-subj="consoleEditorContainer" > - {loading ? ( - - ) : isMonacoEnabled ? ( - - ) : ( - + {(EuiResizablePanel, EuiResizableButton) => ( + <> + + + + {loading ? ( + + ) : ( + + )} + + + {!loading && ( + + setInputEditorValue('')} + > + {i18n.translate('console.editor.clearConsoleInputButton', { + defaultMessage: 'Clear this input', + })} + + + )} + + + + + + + + + {data ? ( + + ) : isLoading ? ( + + ) : ( + + )} + + + {(data || isLoading) && ( + + + + dispatch({ type: 'cleanRequest', payload: undefined })} + > + {i18n.translate('console.editor.clearConsoleOutputButton', { + defaultMessage: 'Clear this output', + })} + + + + + + + + + )} + + + )} -
-
- - ); -}); + + + ); + } +); diff --git a/src/plugins/console/public/application/containers/editor/monaco/hooks/index.ts b/src/plugins/console/public/application/containers/editor/hooks/index.ts similarity index 100% rename from src/plugins/console/public/application/containers/editor/monaco/hooks/index.ts rename to src/plugins/console/public/application/containers/editor/hooks/index.ts diff --git a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_register_keyboard_commands.ts b/src/plugins/console/public/application/containers/editor/hooks/use_register_keyboard_commands.ts similarity index 100% rename from src/plugins/console/public/application/containers/editor/monaco/hooks/use_register_keyboard_commands.ts rename to src/plugins/console/public/application/containers/editor/hooks/use_register_keyboard_commands.ts diff --git a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_resize_checker_utils.ts b/src/plugins/console/public/application/containers/editor/hooks/use_resize_checker_utils.ts similarity index 100% rename from src/plugins/console/public/application/containers/editor/monaco/hooks/use_resize_checker_utils.ts rename to src/plugins/console/public/application/containers/editor/hooks/use_resize_checker_utils.ts diff --git a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_set_initial_value.ts b/src/plugins/console/public/application/containers/editor/hooks/use_set_initial_value.ts similarity index 91% rename from src/plugins/console/public/application/containers/editor/monaco/hooks/use_set_initial_value.ts rename to src/plugins/console/public/application/containers/editor/hooks/use_set_initial_value.ts index 41a3b77a105cd..961ea586bc291 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_set_initial_value.ts +++ b/src/plugins/console/public/application/containers/editor/hooks/use_set_initial_value.ts @@ -13,7 +13,7 @@ import { IToasts } from '@kbn/core-notifications-browser'; import { decompressFromEncodedURIComponent } from 'lz-string'; import { i18n } from '@kbn/i18n'; import { useEffect } from 'react'; -import { DEFAULT_INPUT_VALUE } from '../../../../../../common/constants'; +import { DEFAULT_INPUT_VALUE } from '../../../../../common/constants'; interface QueryParams { load_from: string; @@ -21,7 +21,7 @@ interface QueryParams { interface SetInitialValueParams { /** The text value that is initially in the console editor. */ - initialTextValue?: string; + localStorageValue?: string; /** The function that sets the state of the value in the console editor. */ setValue: (value: string) => void; /** The toasts service. */ @@ -45,7 +45,7 @@ export const readLoadFromParam = () => { * @param params The {@link SetInitialValueParams} to use. */ export const useSetInitialValue = (params: SetInitialValueParams) => { - const { initialTextValue, setValue, toasts } = params; + const { localStorageValue, setValue, toasts } = params; useEffect(() => { const loadBufferFromRemote = async (url: string) => { @@ -61,7 +61,7 @@ export const useSetInitialValue = (params: SetInitialValueParams) => { if (parsedURL.origin === 'https://www.elastic.co') { const resp = await fetch(parsedURL); const data = await resp.text(); - setValue(`${initialTextValue}\n\n${data}`); + setValue(`${localStorageValue}\n\n${data}`); } else { toasts.addWarning( i18n.translate('console.monaco.loadFromDataUnrecognizedUrlErrorMessage', { @@ -107,11 +107,11 @@ export const useSetInitialValue = (params: SetInitialValueParams) => { if (loadFromParam) { loadBufferFromRemote(loadFromParam); } else { - setValue(initialTextValue || DEFAULT_INPUT_VALUE); + setValue(localStorageValue || DEFAULT_INPUT_VALUE); } return () => { window.removeEventListener('hashchange', onHashChange); }; - }, [initialTextValue, setValue, toasts]); + }, [localStorageValue, setValue, toasts]); }; diff --git a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_setup_autocomplete_polling.ts b/src/plugins/console/public/application/containers/editor/hooks/use_setup_autocomplete_polling.ts similarity index 94% rename from src/plugins/console/public/application/containers/editor/monaco/hooks/use_setup_autocomplete_polling.ts rename to src/plugins/console/public/application/containers/editor/hooks/use_setup_autocomplete_polling.ts index 1a1a5bb77dd1e..4785be4054ee0 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_setup_autocomplete_polling.ts +++ b/src/plugins/console/public/application/containers/editor/hooks/use_setup_autocomplete_polling.ts @@ -8,7 +8,7 @@ */ import { useEffect } from 'react'; -import { AutocompleteInfo, Settings } from '../../../../../services'; +import { AutocompleteInfo, Settings } from '../../../../services'; interface SetupAutocompletePollingParams { /** The Console autocomplete service. */ diff --git a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_setup_autosave.ts b/src/plugins/console/public/application/containers/editor/hooks/use_setup_autosave.ts similarity index 96% rename from src/plugins/console/public/application/containers/editor/monaco/hooks/use_setup_autosave.ts rename to src/plugins/console/public/application/containers/editor/hooks/use_setup_autosave.ts index 6f46b8ce6589d..8b4bfaa888649 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/hooks/use_setup_autosave.ts +++ b/src/plugins/console/public/application/containers/editor/hooks/use_setup_autosave.ts @@ -8,7 +8,7 @@ */ import { useEffect, useRef } from 'react'; -import { useSaveCurrentTextObject } from '../../../../hooks'; +import { useSaveCurrentTextObject } from '../../../hooks'; import { readLoadFromParam } from './use_set_initial_value'; interface SetupAutosaveParams { diff --git a/src/plugins/console/public/application/containers/editor/index.ts b/src/plugins/console/public/application/containers/editor/index.ts index c9fbe97f01d8d..696806097badd 100644 --- a/src/plugins/console/public/application/containers/editor/index.ts +++ b/src/plugins/console/public/application/containers/editor/index.ts @@ -7,5 +7,4 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -export { autoIndent, getDocumentation } from './legacy'; export { Editor } from './editor'; diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/apply_editor_settings.ts b/src/plugins/console/public/application/containers/editor/legacy/console_editor/apply_editor_settings.ts deleted file mode 100644 index 75e2516a52a7a..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/apply_editor_settings.ts +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { DevToolsSettings } from '../../../../../services'; -import { CoreEditor } from '../../../../../types'; -import { CustomAceEditor } from '../../../../models/legacy_core_editor'; - -export function applyCurrentSettings( - editor: CoreEditor | CustomAceEditor, - settings: DevToolsSettings -) { - if ((editor as { setStyles?: Function }).setStyles) { - (editor as CoreEditor).setStyles({ - wrapLines: settings.wrapMode, - fontSize: settings.fontSize + 'px', - }); - } else { - (editor as CustomAceEditor).getSession().setUseWrapMode(settings.wrapMode); - (editor as CustomAceEditor).container.style.fontSize = settings.fontSize + 'px'; - } -} diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.mock.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.mock.tsx deleted file mode 100644 index f0371562a77bb..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.mock.tsx +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -// TODO(jbudz): should be removed when upgrading to TS@4.8 -// this is a skip for the errors created when typechecking with isolatedModules -export {}; - -jest.mock('../../../../contexts/editor_context/editor_registry', () => ({ - instance: { - setInputEditor: () => {}, - getInputEditor: () => ({ - getRequestsInRange: async () => [{ test: 'test' }], - getCoreEditor: () => ({ getCurrentPosition: jest.fn() }), - }), - }, -})); -jest.mock('../../../../components/editor_example', () => {}); -jest.mock('../../../../models/sense_editor', () => { - return { - create: () => ({ - getCoreEditor: () => ({ - registerKeyboardShortcut: jest.fn(), - setStyles: jest.fn(), - getContainer: () => ({ - focus: () => {}, - }), - on: jest.fn(), - addFoldsAtRanges: jest.fn(), - getAllFoldRanges: jest.fn(), - }), - update: jest.fn(), - commands: { - addCommand: () => {}, - }, - }), - }; -}); - -jest.mock('../../../../hooks/use_send_current_request/send_request', () => ({ - sendRequest: jest.fn(), -})); -jest.mock('../../../../../lib/autocomplete/get_endpoint_from_position', () => ({ - getEndpointFromPosition: jest.fn(), -})); diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx deleted file mode 100644 index 589be10596b9b..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -jest.mock('../../../../../lib/utils', () => ({ replaceVariables: jest.fn() })); - -import './editor.test.mock'; - -import React from 'react'; -import { mount } from 'enzyme'; -import { I18nProvider } from '@kbn/i18n-react'; -import { act } from 'react-dom/test-utils'; -import * as sinon from 'sinon'; - -import { serviceContextMock } from '../../../../contexts/services_context.mock'; - -import { nextTick } from '@kbn/test-jest-helpers'; -import { - ServicesContextProvider, - EditorContextProvider, - RequestContextProvider, - ContextValue, -} from '../../../../contexts'; - -// Mocked functions -import { sendRequest } from '../../../../hooks/use_send_current_request/send_request'; -import { getEndpointFromPosition } from '../../../../../lib/autocomplete/get_endpoint_from_position'; -import type { DevToolsSettings } from '../../../../../services'; -import * as consoleMenuActions from '../console_menu_actions'; -import { Editor } from './editor'; -import * as utils from '../../../../../lib/utils'; - -describe('Legacy (Ace) Console Editor Component Smoke Test', () => { - let mockedAppContextValue: ContextValue; - const sandbox = sinon.createSandbox(); - - const doMount = () => - mount( - - - - - {}} /> - - - - - ); - - beforeEach(() => { - document.queryCommandSupported = sinon.fake(() => true); - mockedAppContextValue = serviceContextMock.create(); - (utils.replaceVariables as jest.Mock).mockReturnValue(['test']); - }); - - afterEach(() => { - jest.clearAllMocks(); - sandbox.restore(); - }); - - it('calls send current request', async () => { - (getEndpointFromPosition as jest.Mock).mockReturnValue({ patterns: [] }); - (sendRequest as jest.Mock).mockRejectedValue({}); - const editor = doMount(); - act(() => { - editor.find('button[data-test-subj~="sendRequestButton"]').simulate('click'); - }); - await nextTick(); - expect(sendRequest).toBeCalledTimes(1); - }); - - it('opens docs', () => { - const stub = sandbox.stub(consoleMenuActions, 'getDocumentation'); - const editor = doMount(); - const consoleMenuToggle = editor.find('[data-test-subj~="toggleConsoleMenu"]').last(); - consoleMenuToggle.simulate('click'); - - const docsButton = editor.find('[data-test-subj~="consoleMenuOpenDocs"]').last(); - docsButton.simulate('click'); - - expect(stub.callCount).toBe(1); - }); - - it('prompts auto-indent', () => { - const stub = sandbox.stub(consoleMenuActions, 'autoIndent'); - const editor = doMount(); - const consoleMenuToggle = editor.find('[data-test-subj~="toggleConsoleMenu"]').last(); - consoleMenuToggle.simulate('click'); - - const autoIndentButton = editor.find('[data-test-subj~="consoleMenuAutoIndent"]').last(); - autoIndentButton.simulate('click'); - - expect(stub.callCount).toBe(1); - }); -}); diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx deleted file mode 100644 index a0119ac2ec8fa..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx +++ /dev/null @@ -1,343 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { - EuiFlexGroup, - EuiFlexItem, - EuiIcon, - EuiLink, - EuiScreenReaderOnly, - EuiToolTip, -} from '@elastic/eui'; -import { i18n } from '@kbn/i18n'; -import { debounce } from 'lodash'; -import { decompressFromEncodedURIComponent } from 'lz-string'; -import { parse } from 'query-string'; -import React, { CSSProperties, useCallback, useEffect, useRef, useState } from 'react'; -import { ace } from '@kbn/es-ui-shared-plugin/public'; -import { ConsoleMenu } from '../../../../components'; -import { useEditorReadContext, useServicesContext } from '../../../../contexts'; -import { - useSaveCurrentTextObject, - useSendCurrentRequest, - useSetInputEditor, -} from '../../../../hooks'; -import * as senseEditor from '../../../../models/sense_editor'; -import { autoIndent, getDocumentation } from '../console_menu_actions'; -import { subscribeResizeChecker } from '../subscribe_console_resize_checker'; -import { applyCurrentSettings } from './apply_editor_settings'; -import { registerCommands } from './keyboard_shortcuts'; -import type { SenseEditor } from '../../../../models/sense_editor'; -import { StorageKeys } from '../../../../../services'; -import { DEFAULT_INPUT_VALUE } from '../../../../../../common/constants'; - -const { useUIAceKeyboardMode } = ace; - -export interface EditorProps { - initialTextValue: string; - setEditorInstance: (instance: SenseEditor) => void; -} - -interface QueryParams { - load_from: string; -} - -const abs: CSSProperties = { - position: 'absolute', - top: '0', - left: '0', - bottom: '0', - right: '0', -}; - -const inputId = 'ConAppInputTextarea'; - -function EditorUI({ initialTextValue, setEditorInstance }: EditorProps) { - const { - services: { - history, - notifications, - settings: settingsService, - esHostService, - http, - autocompleteInfo, - storage, - }, - docLinkVersion, - ...startServices - } = useServicesContext(); - - const { settings } = useEditorReadContext(); - const setInputEditor = useSetInputEditor(); - const sendCurrentRequest = useSendCurrentRequest(); - const saveCurrentTextObject = useSaveCurrentTextObject(); - - const editorRef = useRef(null); - const editorInstanceRef = useRef(null); - - const [textArea, setTextArea] = useState(null); - useUIAceKeyboardMode(textArea, startServices, settings.isAccessibilityOverlayEnabled); - - const openDocumentation = useCallback(async () => { - const documentation = await getDocumentation(editorInstanceRef.current!, docLinkVersion); - if (!documentation) { - return; - } - window.open(documentation, '_blank'); - }, [docLinkVersion]); - - useEffect(() => { - editorInstanceRef.current = senseEditor.create(editorRef.current!); - const editor = editorInstanceRef.current; - const textareaElement = editorRef.current!.querySelector('textarea'); - - if (textareaElement) { - textareaElement.setAttribute('id', inputId); - textareaElement.setAttribute('data-test-subj', 'console-textarea'); - } - - const readQueryParams = () => { - const [, queryString] = (window.location.hash || window.location.search || '').split('?'); - - return parse(queryString || '', { sort: false }) as Required; - }; - - const loadBufferFromRemote = (url: string) => { - const coreEditor = editor.getCoreEditor(); - // Normalize and encode the URL to avoid issues with spaces and other special characters. - const encodedUrl = new URL(url).toString(); - if (/^https?:\/\//.test(encodedUrl)) { - const loadFrom: Record = { - url, - // Having dataType here is required as it doesn't allow jQuery to `eval` content - // coming from the external source thereby preventing XSS attack. - dataType: 'text', - kbnXsrfToken: false, - }; - - if (/https?:\/\/api\.github\.com/.test(url)) { - loadFrom.headers = { Accept: 'application/vnd.github.v3.raw' }; - } - - // Fire and forget. - $.ajax(loadFrom).done(async (data) => { - // when we load data from another Api we also must pass history - await editor.update(`${initialTextValue}\n ${data}`, true); - editor.moveToNextRequestEdge(false); - coreEditor.clearSelection(); - editor.highlightCurrentRequestsAndUpdateActionBar(); - coreEditor.getContainer().focus(); - }); - } - - // If we have a data URI instead of HTTP, LZ-decode it. This enables - // opening requests in Console from anywhere in Kibana. - if (/^data:/.test(url)) { - const data = decompressFromEncodedURIComponent(url.replace(/^data:text\/plain,/, '')); - - // Show a toast if we have a failure - if (data === null || data === '') { - notifications.toasts.addWarning( - i18n.translate('console.loadFromDataUriErrorMessage', { - defaultMessage: 'Unable to load data from the load_from query parameter in the URL', - }) - ); - return; - } - - editor.update(data, true); - editor.moveToNextRequestEdge(false); - coreEditor.clearSelection(); - editor.highlightCurrentRequestsAndUpdateActionBar(); - coreEditor.getContainer().focus(); - } - }; - - // Support for loading a console snippet from a remote source, like support docs. - const onHashChange = debounce(() => { - const { load_from: url } = readQueryParams(); - if (!url) { - return; - } - loadBufferFromRemote(url); - }, 200); - window.addEventListener('hashchange', onHashChange); - - const initialQueryParams = readQueryParams(); - - if (initialQueryParams.load_from) { - loadBufferFromRemote(initialQueryParams.load_from); - } else { - editor.update(initialTextValue || DEFAULT_INPUT_VALUE); - } - - function setupAutosave() { - let timer: number; - const saveDelay = 500; - - editor.getCoreEditor().on('change', () => { - if (timer) { - clearTimeout(timer); - } - timer = window.setTimeout(saveCurrentState, saveDelay); - }); - } - - function saveCurrentState() { - try { - const content = editor.getCoreEditor().getValue(); - saveCurrentTextObject(content); - } catch (e) { - // Ignoring saving error - } - } - - function restoreFolds() { - if (editor) { - const foldRanges = storage.get(StorageKeys.FOLDS, []); - editor.getCoreEditor().addFoldsAtRanges(foldRanges); - } - } - - restoreFolds(); - - function saveFoldsOnChange() { - if (editor) { - editor.getCoreEditor().on('changeFold', () => { - const foldRanges = editor.getCoreEditor().getAllFoldRanges(); - storage.set(StorageKeys.FOLDS, foldRanges); - }); - } - } - - saveFoldsOnChange(); - - setInputEditor(editor); - setTextArea(editorRef.current!.querySelector('textarea')); - - autocompleteInfo.retrieve(settingsService, settingsService.getAutocomplete()); - - const unsubscribeResizer = subscribeResizeChecker(editorRef.current!, editor); - if (!initialQueryParams.load_from) { - // Don't setup autosaving editor content when we pre-load content - // This prevents losing the user's current console content when - // `loadFrom` query param is used for a console session - setupAutosave(); - } - - return () => { - unsubscribeResizer(); - autocompleteInfo.clearSubscriptions(); - window.removeEventListener('hashchange', onHashChange); - if (editorInstanceRef.current) { - // Close autocomplete popup on unmount - editorInstanceRef.current?.getCoreEditor().detachCompleter(); - editorInstanceRef.current.getCoreEditor().destroy(); - } - }; - }, [ - notifications.toasts, - saveCurrentTextObject, - initialTextValue, - history, - setInputEditor, - settingsService, - http, - autocompleteInfo, - storage, - ]); - - useEffect(() => { - const { current: editor } = editorInstanceRef; - applyCurrentSettings(editor!.getCoreEditor(), settings); - // Preserve legacy focus behavior after settings have updated. - editor!.getCoreEditor().getContainer().focus(); - }, [settings]); - - useEffect(() => { - const { isKeyboardShortcutsEnabled } = settings; - if (isKeyboardShortcutsEnabled) { - registerCommands({ - senseEditor: editorInstanceRef.current!, - sendCurrentRequest, - openDocumentation, - }); - } - }, [openDocumentation, settings, sendCurrentRequest]); - - useEffect(() => { - const { current: editor } = editorInstanceRef; - if (editor) { - setEditorInstance(editor); - } - }, [setEditorInstance]); - - return ( -
-
-
    - - - - - - - - - - { - return editorInstanceRef.current!.getRequestsAsCURL(esHostService.getHost()); - }} - getDocumentation={() => { - return getDocumentation(editorInstanceRef.current!, docLinkVersion); - }} - autoIndent={(event) => { - autoIndent(editorInstanceRef.current!, event); - }} - notifications={notifications} - /> - - - - - - -
    -
    -
- ); -} - -export const Editor = React.memo(EditorUI); diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx deleted file mode 100644 index 09cdf02cbab98..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { VectorTile } from '@mapbox/vector-tile'; -import Protobuf from 'pbf'; -import { EuiScreenReaderOnly } from '@elastic/eui'; -import { i18n } from '@kbn/i18n'; -import React, { useEffect, useRef } from 'react'; -import { convertMapboxVectorTileToJson } from './mapbox_vector_tile'; -import { Mode } from '../../../../models/legacy_core_editor/mode/output'; - -// Ensure the modes we might switch to dynamically are available -import 'brace/mode/text'; -import 'brace/mode/hjson'; -import 'brace/mode/yaml'; - -import { - useEditorReadContext, - useRequestReadContext, - useServicesContext, -} from '../../../../contexts'; -import { createReadOnlyAceEditor, CustomAceEditor } from '../../../../models/legacy_core_editor'; -import { subscribeResizeChecker } from '../subscribe_console_resize_checker'; -import { applyCurrentSettings } from './apply_editor_settings'; -import { isJSONContentType, isMapboxVectorTile, safeExpandLiteralStrings } from '../../utilities'; - -function modeForContentType(contentType?: string) { - if (!contentType) { - return 'ace/mode/text'; - } - if (isJSONContentType(contentType) || isMapboxVectorTile(contentType)) { - // Using hjson will allow us to use comments in editor output and solves the problem with error markers - return 'ace/mode/hjson'; - } else if (contentType.indexOf('application/yaml') >= 0) { - return 'ace/mode/yaml'; - } - return 'ace/mode/text'; -} - -function EditorOutputUI() { - const editorRef = useRef(null); - const editorInstanceRef = useRef(null); - const { services } = useServicesContext(); - const { settings: readOnlySettings } = useEditorReadContext(); - const { - lastResult: { data, error }, - } = useRequestReadContext(); - const inputId = 'ConAppOutputTextarea'; - - useEffect(() => { - editorInstanceRef.current = createReadOnlyAceEditor(editorRef.current!); - const unsubscribe = subscribeResizeChecker(editorRef.current!, editorInstanceRef.current); - const textarea = editorRef.current!.querySelector('textarea')!; - textarea.setAttribute('id', inputId); - textarea.setAttribute('readonly', 'true'); - - return () => { - unsubscribe(); - editorInstanceRef.current!.destroy(); - }; - }, [services.settings]); - - useEffect(() => { - const editor = editorInstanceRef.current!; - if (data) { - const isMultipleRequest = data.length > 1; - const mode = isMultipleRequest - ? new Mode() - : modeForContentType(data[0].response.contentType); - editor.update( - data - .map((result) => { - const { value, contentType } = result.response; - - let editorOutput; - if (readOnlySettings.tripleQuotes && isJSONContentType(contentType)) { - editorOutput = safeExpandLiteralStrings(value as string); - } else if (isMapboxVectorTile(contentType)) { - const vectorTile = new VectorTile(new Protobuf(value as ArrayBuffer)); - const vectorTileJson = convertMapboxVectorTileToJson(vectorTile); - editorOutput = safeExpandLiteralStrings(vectorTileJson as string); - } else { - editorOutput = value; - } - - return editorOutput; - }) - .join('\n'), - mode - ); - } else if (error) { - const mode = modeForContentType(error.response.contentType); - editor.update(error.response.value as string, mode); - } else { - editor.update(''); - } - }, [readOnlySettings, data, error]); - - useEffect(() => { - applyCurrentSettings(editorInstanceRef.current!, readOnlySettings); - }, [readOnlySettings]); - - return ( - <> - - - -
-
-
- - ); -} - -export const EditorOutput = React.memo(EditorOutputUI); diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts b/src/plugins/console/public/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts deleted file mode 100644 index daad4bbdb7dbd..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { throttle } from 'lodash'; -import { SenseEditor } from '../../../../models/sense_editor'; - -interface Actions { - senseEditor: SenseEditor; - sendCurrentRequest: () => void; - openDocumentation: () => void; -} - -const COMMANDS = { - SEND_TO_ELASTICSEARCH: 'send to Elasticsearch', - OPEN_DOCUMENTATION: 'open documentation', - AUTO_INDENT_REQUEST: 'auto indent request', - MOVE_TO_PREVIOUS_REQUEST: 'move to previous request start or end', - MOVE_TO_NEXT_REQUEST: 'move to next request start or end', - GO_TO_LINE: 'gotoline', -}; - -export function registerCommands({ senseEditor, sendCurrentRequest, openDocumentation }: Actions) { - const throttledAutoIndent = throttle(() => senseEditor.autoIndent(), 500, { - leading: true, - trailing: true, - }); - const coreEditor = senseEditor.getCoreEditor(); - - coreEditor.registerKeyboardShortcut({ - keys: { win: 'Ctrl-Enter', mac: 'Command-Enter' }, - name: COMMANDS.SEND_TO_ELASTICSEARCH, - fn: () => { - sendCurrentRequest(); - }, - }); - - coreEditor.registerKeyboardShortcut({ - name: COMMANDS.OPEN_DOCUMENTATION, - keys: { win: 'Ctrl-/', mac: 'Command-/' }, - fn: () => { - openDocumentation(); - }, - }); - - coreEditor.registerKeyboardShortcut({ - name: COMMANDS.AUTO_INDENT_REQUEST, - keys: { win: 'Ctrl-I', mac: 'Command-I' }, - fn: () => { - throttledAutoIndent(); - }, - }); - - coreEditor.registerKeyboardShortcut({ - name: COMMANDS.MOVE_TO_PREVIOUS_REQUEST, - keys: { win: 'Ctrl-Up', mac: 'Command-Up' }, - fn: () => { - senseEditor.moveToPreviousRequestEdge(); - }, - }); - - coreEditor.registerKeyboardShortcut({ - name: COMMANDS.MOVE_TO_NEXT_REQUEST, - keys: { win: 'Ctrl-Down', mac: 'Command-Down' }, - fn: () => { - senseEditor.moveToNextRequestEdge(false); - }, - }); - - coreEditor.registerKeyboardShortcut({ - name: COMMANDS.GO_TO_LINE, - keys: { win: 'Ctrl-L', mac: 'Command-L' }, - fn: (editor) => { - const line = parseInt(prompt('Enter line number') ?? '', 10); - if (!isNaN(line)) { - editor.gotoLine(line); - } - }, - }); -} - -export function unregisterCommands(senseEditor: SenseEditor) { - const coreEditor = senseEditor.getCoreEditor(); - Object.values(COMMANDS).forEach((command) => { - coreEditor.unregisterKeyboardShortcut(command); - }); -} diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_menu_actions.ts b/src/plugins/console/public/application/containers/editor/legacy/console_menu_actions.ts deleted file mode 100644 index c65efbc0d82f5..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/console_menu_actions.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { getEndpointFromPosition } from '../../../../lib/autocomplete/get_endpoint_from_position'; -import { SenseEditor } from '../../../models/sense_editor'; - -export async function autoIndent(editor: SenseEditor, event: React.MouseEvent) { - event.preventDefault(); - await editor.autoIndent(); - editor.getCoreEditor().getContainer().focus(); -} - -export function getDocumentation( - editor: SenseEditor, - docLinkVersion: string -): Promise { - return editor.getRequestsInRange().then((requests) => { - if (!requests || requests.length === 0) { - return null; - } - const position = requests[0].range.end; - position.column = position.column - 1; - const endpoint = getEndpointFromPosition(editor.getCoreEditor(), position, editor.parser); - if (endpoint && endpoint.documentation && endpoint.documentation.indexOf('http') !== -1) { - return endpoint.documentation - .replace('/master/', `/${docLinkVersion}/`) - .replace('/current/', `/${docLinkVersion}/`) - .replace('/{branch}/', `/${docLinkVersion}/`); - } else { - return null; - } - }); -} diff --git a/src/plugins/console/public/application/containers/editor/legacy/subscribe_console_resize_checker.ts b/src/plugins/console/public/application/containers/editor/legacy/subscribe_console_resize_checker.ts deleted file mode 100644 index 6511d7ad3cc3b..0000000000000 --- a/src/plugins/console/public/application/containers/editor/legacy/subscribe_console_resize_checker.ts +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { ResizeChecker } from '@kbn/kibana-utils-plugin/public'; - -export function subscribeResizeChecker(el: HTMLElement, ...editors: any[]) { - const checker = new ResizeChecker(el); - checker.on('resize', () => - editors.forEach((e) => { - if (e.getCoreEditor) { - e.getCoreEditor().resize(); - } else { - e.resize(); - } - - if (e.updateActionsBar) { - e.updateActionsBar(); - } - }) - ); - return () => checker.destroy(); -} diff --git a/src/plugins/console/public/application/containers/editor/monaco/utils/status_code_decoration_utils.ts b/src/plugins/console/public/application/containers/editor/monaco/utils/status_code_decoration_utils.ts deleted file mode 100644 index f9d88a90e1fa2..0000000000000 --- a/src/plugins/console/public/application/containers/editor/monaco/utils/status_code_decoration_utils.ts +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -import { monaco } from '@kbn/monaco'; -import { RequestResult } from '../../../../hooks/use_send_current_request/send_request'; -import { - DEFAULT_STATUS_BADGE_CLASSNAME, - SUCCESS_STATUS_BADGE_CLASSNAME, - PRIMARY_STATUS_BADGE_CLASSNAME, - WARNING_STATUS_BADGE_CLASSNAME, - DANGER_STATUS_BADGE_CLASSNAME, -} from './constants'; - -const getStatusCodeClassName = (statusCode: number) => { - if (statusCode <= 199) { - return DEFAULT_STATUS_BADGE_CLASSNAME; - } - if (statusCode <= 299) { - return SUCCESS_STATUS_BADGE_CLASSNAME; - } - if (statusCode <= 399) { - return PRIMARY_STATUS_BADGE_CLASSNAME; - } - if (statusCode <= 499) { - return WARNING_STATUS_BADGE_CLASSNAME; - } - return DANGER_STATUS_BADGE_CLASSNAME; -}; - -export const getStatusCodeDecorations = (data: RequestResult[]) => { - const decorations: monaco.editor.IModelDeltaDecoration[] = []; - let lastResponseEndLine = 0; - - data.forEach(({ response }) => { - if (response?.value) { - const totalStatus = - response.statusCode && response.statusText - ? response.statusCode + ' ' + response.statusText - : ''; - const startColumn = (response.value as string).indexOf(totalStatus) + 1; - if (totalStatus && startColumn !== 0) { - const range = { - startLineNumber: lastResponseEndLine + 1, - startColumn, - endLineNumber: lastResponseEndLine + 1, - endColumn: startColumn + totalStatus.length, - }; - decorations.push({ - range, - options: { - inlineClassName: getStatusCodeClassName(response.statusCode), - }, - }); - } - lastResponseEndLine += (response.value as string).split(/\\n|\n/).length; - } - }); - - return decorations; -}; diff --git a/src/plugins/console/public/application/containers/editor/monaco/monaco_editor.tsx b/src/plugins/console/public/application/containers/editor/monaco_editor.tsx similarity index 79% rename from src/plugins/console/public/application/containers/editor/monaco/monaco_editor.tsx rename to src/plugins/console/public/application/containers/editor/monaco_editor.tsx index ca6e66a8ba66f..bc174b772bb1c 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/monaco_editor.tsx +++ b/src/plugins/console/public/application/containers/editor/monaco_editor.tsx @@ -8,18 +8,19 @@ */ import React, { CSSProperties, useCallback, useMemo, useRef, useState, useEffect } from 'react'; -import { EuiFlexGroup, EuiFlexItem, EuiIcon, EuiLink, EuiToolTip } from '@elastic/eui'; +import { EuiFlexGroup, EuiFlexItem, EuiButtonIcon, EuiToolTip } from '@elastic/eui'; import { css } from '@emotion/react'; import { CodeEditor } from '@kbn/code-editor'; import { CONSOLE_LANG_ID, CONSOLE_THEME_ID, monaco } from '@kbn/monaco'; import { i18n } from '@kbn/i18n'; -import { useSetInputEditor } from '../../../hooks'; +import { useSetInputEditor } from '../../hooks'; import { ContextMenu } from './components'; import { useServicesContext, useEditorReadContext, useRequestActionContext, -} from '../../../contexts'; + useEditorActionContext, +} from '../../contexts'; import { useSetInitialValue, useSetupAutocompletePolling, @@ -32,10 +33,12 @@ import { MonacoEditorActionsProvider } from './monaco_editor_actions_provider'; import { getSuggestionProvider } from './monaco_editor_suggestion_provider'; export interface EditorProps { - initialTextValue: string; + localStorageValue: string | undefined; + value: string; + setValue: (value: string) => void; } -export const MonacoEditor = ({ initialTextValue }: EditorProps) => { +export const MonacoEditor = ({ localStorageValue, value, setValue }: EditorProps) => { const context = useServicesContext(); const { services: { notifications, settings: settingsService, autocompleteInfo }, @@ -43,7 +46,11 @@ export const MonacoEditor = ({ initialTextValue }: EditorProps) => { config: { isDevMode }, } = context; const { toasts } = notifications; - const { settings } = useEditorReadContext(); + const { + settings, + restoreRequestFromHistory: requestToRestoreFromHistory, + fileToImport, + } = useEditorReadContext(); const [editorInstance, setEditorInstace] = useState< monaco.editor.IStandaloneCodeEditor | undefined >(); @@ -53,6 +60,7 @@ export const MonacoEditor = ({ initialTextValue }: EditorProps) => { const { registerKeyboardCommands, unregisterKeyboardCommands } = useKeyboardCommandsUtils(); const dispatch = useRequestActionContext(); + const editorDispatch = useEditorActionContext(); const actionsProvider = useRef(null); const [editorActionsCss, setEditorActionsCss] = useState({}); @@ -117,18 +125,40 @@ export const MonacoEditor = ({ initialTextValue }: EditorProps) => { const suggestionProvider = useMemo(() => { return getSuggestionProvider(actionsProvider); }, []); - const [value, setValue] = useState(initialTextValue); - useSetInitialValue({ initialTextValue, setValue, toasts }); + useSetInitialValue({ localStorageValue, setValue, toasts }); useSetupAutocompletePolling({ autocompleteInfo, settingsService }); useSetupAutosave({ value }); + // Restore the request from history if there is one + const updateEditor = useCallback(async () => { + if (requestToRestoreFromHistory) { + editorDispatch({ type: 'clearRequestToRestore' }); + await actionsProvider.current?.appendRequestToEditor( + requestToRestoreFromHistory, + dispatch, + context + ); + } + + // Import a request file if one is provided + if (fileToImport) { + editorDispatch({ type: 'setFileToImport', payload: null }); + await actionsProvider.current?.importRequestsToEditor(fileToImport); + } + }, [fileToImport, requestToRestoreFromHistory, dispatch, context, editorDispatch]); + + useEffect(() => { + updateEditor(); + }, [updateEditor]); + return (
{ - + - - - + iconSize={'s'} + /> - + { }; }); -jest.mock('../../../../services', () => { +jest.mock('../../../services', () => { return { getStorage: () => ({ get: () => [], @@ -40,7 +40,7 @@ jest.mock('../../../../services', () => { }; }); -jest.mock('../../../../lib/autocomplete/engine', () => { +jest.mock('../../../lib/autocomplete/engine', () => { return { populateContext: (...args: any) => { mockPopulateContext(args); diff --git a/src/plugins/console/public/application/containers/editor/monaco/monaco_editor_actions_provider.ts b/src/plugins/console/public/application/containers/editor/monaco_editor_actions_provider.ts similarity index 86% rename from src/plugins/console/public/application/containers/editor/monaco/monaco_editor_actions_provider.ts rename to src/plugins/console/public/application/containers/editor/monaco_editor_actions_provider.ts index 14be049c8ab26..8c66d31b2b57e 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/monaco_editor_actions_provider.ts +++ b/src/plugins/console/public/application/containers/editor/monaco_editor_actions_provider.ts @@ -13,11 +13,11 @@ import { ConsoleParsedRequestsProvider, getParsedRequestsProvider, monaco } from import { i18n } from '@kbn/i18n'; import { toMountPoint } from '@kbn/react-kibana-mount'; import { XJson } from '@kbn/es-ui-shared-plugin/public'; -import { isQuotaExceededError } from '../../../../services/history'; -import { DEFAULT_VARIABLES } from '../../../../../common/constants'; -import { getStorage, StorageKeys } from '../../../../services'; -import { sendRequest } from '../../../hooks'; -import { Actions } from '../../../stores/request'; +import { isQuotaExceededError } from '../../../services/history'; +import { DEFAULT_VARIABLES } from '../../../../common/constants'; +import { getStorage, StorageKeys } from '../../../services'; +import { sendRequest } from '../../hooks'; +import { Actions } from '../../stores/request'; import { AutocompleteType, @@ -40,8 +40,9 @@ import { } from './utils'; import type { AdjustedParsedRequest } from './types'; -import { StorageQuotaError } from '../../../components/storage_quota_error'; -import { ContextValue } from '../../../contexts'; +import { type RequestToRestore, RestoreMethod } from '../../../types'; +import { StorageQuotaError } from '../../components/storage_quota_error'; +import { ContextValue } from '../../contexts'; import { containsComments, indentData } from './utils/requests_utils'; const AUTO_INDENTATION_ACTION_LABEL = 'Apply indentations'; @@ -120,7 +121,8 @@ export class MonacoEditorActionsProvider { const offset = this.editor.getTopForLineNumber(lineNumber) - this.editor.getScrollTop(); this.setEditorActionsCss({ visibility: 'visible', - top: offset, + // Move position down by 1 px so that the action buttons panel doesn't cover the top border of the selected block + top: offset + 1, }); } } @@ -147,7 +149,7 @@ export class MonacoEditorActionsProvider { range: selectedRange, options: { isWholeLine: true, - className: SELECTED_REQUESTS_CLASSNAME, + blockClassName: SELECTED_REQUESTS_CLASSNAME, }, }, ]); @@ -160,6 +162,11 @@ export class MonacoEditorActionsProvider { private async getSelectedParsedRequests(): Promise { const model = this.editor.getModel(); + + if (!model) { + return []; + } + const selection = this.editor.getSelection(); if (!model || !selection) { return Promise.resolve([]); @@ -173,6 +180,9 @@ export class MonacoEditorActionsProvider { startLineNumber: number, endLineNumber: number ): Promise { + if (!model) { + return []; + } const parsedRequests = await this.parsedRequestsProvider.getRequests(); const selectedRequests: AdjustedParsedRequest[] = []; for (const [index, parsedRequest] of parsedRequests.entries()) { @@ -243,9 +253,17 @@ export class MonacoEditorActionsProvider { const { toasts } = notifications; try { const allRequests = await this.getRequests(); - // if any request doesnt have a method then we gonna treat it as a non-valid - // request - const requests = allRequests.filter((request) => request.method); + const selectedRequests = await this.getSelectedParsedRequests(); + + const requests = allRequests + // if any request doesnt have a method then we gonna treat it as a non-valid + // request + .filter((request) => request.method) + // map the requests to the original line number + .map((request, index) => ({ + ...request, + lineNumber: selectedRequests[index].startLineNumber, + })); // If we do have requests but none have methods we are not sending the request if (allRequests.length > 0 && !requests.length) { @@ -479,9 +497,6 @@ export class MonacoEditorActionsProvider { return this.getSuggestions(model, position, context); } - /* - * This function inserts a request from the history into the editor - */ public async restoreRequestFromHistory(request: string) { const model = this.editor.getModel(); if (!model) { @@ -679,4 +694,82 @@ export class MonacoEditorActionsProvider { this.editor.trigger(TRIGGER_SUGGESTIONS_ACTION_LABEL, TRIGGER_SUGGESTIONS_HANDLER_ID, {}); } } + + /* + * This function cleares out the editor content and replaces it with the provided requests + */ + public async importRequestsToEditor(requestsToImport: string) { + const model = this.editor.getModel(); + + if (!model) { + return; + } + + const edit: monaco.editor.IIdentifiedSingleEditOperation = { + range: model.getFullModelRange(), + text: requestsToImport, + forceMoveMarkers: true, + }; + + this.editor.executeEdits('restoreFromHistory', [edit]); + } + + /* + * This function inserts a request after the last request in the editor + */ + public async appendRequestToEditor( + req: RequestToRestore, + dispatch: Dispatch, + context: ContextValue + ) { + const model = this.editor.getModel(); + + if (!model) { + return; + } + + // 1 - Create an edit operation to insert the request after the last request + const lastLineNumber = model.getLineCount(); + const column = model.getLineMaxColumn(lastLineNumber); + const edit: monaco.editor.IIdentifiedSingleEditOperation = { + range: { + startLineNumber: lastLineNumber, + startColumn: column, + endLineNumber: lastLineNumber, + endColumn: column, + }, + text: `\n\n${req.request}`, + forceMoveMarkers: true, + }; + this.editor.executeEdits('restoreFromHistory', [edit]); + + // 2 - Since we add two new lines, the cursor should be at the beginning of the new request + const beginningOfNewReq = lastLineNumber + 2; + const selectedRequests = await this.getRequestsBetweenLines( + model, + beginningOfNewReq, + beginningOfNewReq + ); + // We can assume that there is only one request given that we only add one + // request at a time. + const restoredRequest = selectedRequests[0]; + + // 3 - Set the cursor to the beginning of the new request, + this.editor.setSelection({ + startLineNumber: restoredRequest.startLineNumber, + startColumn: 1, + endLineNumber: restoredRequest.startLineNumber, + endColumn: 1, + }); + + // 4 - Scroll to the beginning of the new request + this.editor.setScrollPosition({ + scrollTop: this.editor.getTopForLineNumber(restoredRequest.startLineNumber), + }); + + // 5 - Optionally send the request + if (req.restoreMethod === RestoreMethod.RESTORE_AND_EXECUTE) { + this.sendRequests(dispatch, context); + } + } } diff --git a/src/plugins/console/public/application/containers/editor/monaco/monaco_editor_output.tsx b/src/plugins/console/public/application/containers/editor/monaco_editor_output.tsx similarity index 60% rename from src/plugins/console/public/application/containers/editor/monaco/monaco_editor_output.tsx rename to src/plugins/console/public/application/containers/editor/monaco_editor_output.tsx index 9de6748b62b6c..b9e3f3e6f9885 100644 --- a/src/plugins/console/public/application/containers/editor/monaco/monaco_editor_output.tsx +++ b/src/plugins/console/public/application/containers/editor/monaco_editor_output.tsx @@ -7,26 +7,44 @@ * License v3.0 only", or the "Server Side Public License, v 1". */ -import React, { FunctionComponent, useCallback, useEffect, useRef, useState } from 'react'; +import React, { + CSSProperties, + FunctionComponent, + useCallback, + useEffect, + useRef, + useState, +} from 'react'; import { CodeEditor } from '@kbn/code-editor'; import { css } from '@emotion/react'; import { VectorTile } from '@mapbox/vector-tile'; import Protobuf from 'pbf'; import { i18n } from '@kbn/i18n'; -import { EuiScreenReaderOnly } from '@elastic/eui'; +import { + EuiScreenReaderOnly, + EuiFlexGroup, + EuiFlexItem, + EuiButtonIcon, + EuiToolTip, +} from '@elastic/eui'; import { CONSOLE_THEME_ID, CONSOLE_OUTPUT_LANG_ID, monaco } from '@kbn/monaco'; -import { getStatusCodeDecorations } from './utils'; -import { useEditorReadContext, useRequestReadContext } from '../../../contexts'; -import { convertMapboxVectorTileToJson } from '../legacy/console_editor/mapbox_vector_tile'; import { + getStatusCodeDecorations, isJSONContentType, isMapboxVectorTile, safeExpandLiteralStrings, languageForContentType, -} from '../utilities'; + convertMapboxVectorTileToJson, +} from './utils'; +import { useEditorReadContext, useRequestReadContext, useServicesContext } from '../../contexts'; +import { MonacoEditorOutputActionsProvider } from './monaco_editor_output_actions_provider'; import { useResizeCheckerUtils } from './hooks'; export const MonacoEditorOutput: FunctionComponent = () => { + const context = useServicesContext(); + const { + services: { notifications }, + } = context; const { settings: readOnlySettings } = useEditorReadContext(); const { lastResult: { data }, @@ -37,8 +55,14 @@ export const MonacoEditorOutput: FunctionComponent = () => { const { setupResizeChecker, destroyResizeChecker } = useResizeCheckerUtils(); const lineDecorations = useRef(null); + const actionsProvider = useRef(null); + const [editorActionsCss, setEditorActionsCss] = useState({}); + const editorDidMountCallback = useCallback( (editor: monaco.editor.IStandaloneCodeEditor) => { + const provider = new MonacoEditorOutputActionsProvider(editor, setEditorActionsCss); + actionsProvider.current = provider; + setupResizeChecker(divRef.current!, editor); lineDecorations.current = editor.createDecorationsCollection(); }, @@ -83,19 +107,71 @@ export const MonacoEditorOutput: FunctionComponent = () => { // If there are multiple responses, add decorations for their status codes const decorations = getStatusCodeDecorations(data); lineDecorations.current?.set(decorations); + // Highlight first line of the output editor + actionsProvider.current?.selectFirstLine(); } } else { setValue(''); } }, [readOnlySettings, data, value]); + const copyOutputCallback = useCallback(async () => { + const selectedText = (await actionsProvider.current?.getParsedOutput()) as string; + + try { + if (!window.navigator?.clipboard) { + throw new Error('Could not copy to clipboard!'); + } + + await window.navigator.clipboard.writeText(selectedText); + + notifications.toasts.addSuccess({ + title: i18n.translate('console.outputPanel.copyOutputToast', { + defaultMessage: 'Selected output copied to clipboard', + }), + }); + } catch (e) { + notifications.toasts.addDanger({ + title: i18n.translate('console.outputPanel.copyOutputToastFailedMessage', { + defaultMessage: 'Could not copy selected output to clipboard', + }), + }); + } + }, [notifications.toasts]); + return (
+ + + + + + +