diff --git a/.buildkite/ftr_oblt_serverless_configs.yml b/.buildkite/ftr_oblt_serverless_configs.yml index 8fe505ff0e93e..e49655999ec59 100644 --- a/.buildkite/ftr_oblt_serverless_configs.yml +++ b/.buildkite/ftr_oblt_serverless_configs.yml @@ -27,4 +27,4 @@ enabled: - x-pack/test_serverless/functional/test_suites/observability/common_configs/config.group6.ts - x-pack/test_serverless/functional/test_suites/observability/config.screenshots.ts # serverless config files that run deployment-agnostic tests - - x-pack/test/api_integration/deployment_agnostic/oblt.serverless.config.ts + - x-pack/test/api_integration/deployment_agnostic/configs/serverless/oblt.serverless.config.ts diff --git a/.buildkite/ftr_oblt_stateful_configs.yml b/.buildkite/ftr_oblt_stateful_configs.yml index eb8382eacce89..1d6d834b74279 100644 --- a/.buildkite/ftr_oblt_stateful_configs.yml +++ b/.buildkite/ftr_oblt_stateful_configs.yml @@ -50,3 +50,5 @@ enabled: - x-pack/test/observability_ai_assistant_functional/enterprise/config.ts - x-pack/test/profiling_api_integration/cloud/config.ts - x-pack/test/functional/apps/apm/config.ts + # stateful configs that run deployment-agnostic tests + - x-pack/test/api_integration/deployment_agnostic/configs/stateful/oblt.stateful.config.ts diff --git a/.buildkite/ftr_platform_stateful_configs.yml b/.buildkite/ftr_platform_stateful_configs.yml index a984afc263170..dd33535c2562a 100644 --- a/.buildkite/ftr_platform_stateful_configs.yml +++ b/.buildkite/ftr_platform_stateful_configs.yml @@ -361,4 +361,4 @@ enabled: - x-pack/performance/journeys_e2e/infra_hosts_view.ts - x-pack/test/custom_branding/config.ts # stateful config files that run deployment-agnostic tests - - x-pack/test/api_integration/deployment_agnostic/stateful.config.ts + - x-pack/test/api_integration/deployment_agnostic/configs/stateful/platform.stateful.config.ts diff --git a/.buildkite/ftr_search_serverless_configs.yml b/.buildkite/ftr_search_serverless_configs.yml index 9a5ce6798dbae..7112888f1afce 100644 --- a/.buildkite/ftr_search_serverless_configs.yml +++ b/.buildkite/ftr_search_serverless_configs.yml @@ -17,4 +17,4 @@ enabled: - x-pack/test_serverless/functional/test_suites/search/common_configs/config.group5.ts - x-pack/test_serverless/functional/test_suites/search/common_configs/config.group6.ts # serverless config files that run deployment-agnostic tests - - x-pack/test/api_integration/deployment_agnostic/search.serverless.config.ts + - x-pack/test/api_integration/deployment_agnostic/configs/serverless/search.serverless.config.ts diff --git a/.buildkite/ftr_security_serverless_configs.yml b/.buildkite/ftr_security_serverless_configs.yml index 9f54a402a8bbf..d6a92fbb5f446 100644 --- a/.buildkite/ftr_security_serverless_configs.yml +++ b/.buildkite/ftr_security_serverless_configs.yml @@ -99,4 +99,4 @@ enabled: - x-pack/test/security_solution_endpoint/configs/serverless.endpoint.config.ts - x-pack/test/security_solution_endpoint/configs/serverless.integrations.config.ts # serverless config files that run deployment-agnostic tests - - x-pack/test/api_integration/deployment_agnostic/security.serverless.config.ts + - x-pack/test/api_integration/deployment_agnostic/configs/serverless/security.serverless.config.ts diff --git a/.buildkite/package-lock.json b/.buildkite/package-lock.json index 437e56299cb6c..de45e39fb4092 100644 --- a/.buildkite/package-lock.json +++ b/.buildkite/package-lock.json @@ -9,7 +9,7 @@ "version": "1.0.0", "dependencies": { "@octokit/rest": "^18.10.0", - "axios": "^1.6.3", + "axios": "^1.7.4", "globby": "^11.1.0", "js-yaml": "^4.1.0", "minimatch": "^5.0.1", @@ -351,11 +351,11 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/axios": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", - "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", + "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==", "dependencies": { - "follow-redirects": "^1.15.4", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -1946,11 +1946,11 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "axios": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", - "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", + "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==", "requires": { - "follow-redirects": "^1.15.4", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } diff --git a/.buildkite/package.json b/.buildkite/package.json index efd66f1c17a09..158a55c777e6a 100644 --- a/.buildkite/package.json +++ b/.buildkite/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "@octokit/rest": "^18.10.0", - "axios": "^1.6.3", + "axios": "^1.7.4", "globby": "^11.1.0", "js-yaml": "^4.1.0", "minimatch": "^5.0.1", diff --git a/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts b/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts index 1173cddeb15aa..8080c8f7d1d70 100755 --- a/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts +++ b/.buildkite/pipeline-resource-definitions/scripts/fix-location-collection.ts @@ -36,6 +36,7 @@ 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; @@ -43,6 +44,7 @@ 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 d139f7953e00f..85aa4bd6fb33c 100644 --- a/.buildkite/pipeline-utils/agent_images.ts +++ b/.buildkite/pipeline-utils/agent_images.ts @@ -6,6 +6,7 @@ * 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 c58c3cb7e42e3..a0232d90e8e07 100644 --- a/.buildkite/pipeline-utils/buildkite/client.ts +++ b/.buildkite/pipeline-utils/buildkite/client.ts @@ -8,7 +8,10 @@ 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'; import { Artifact } from './types/artifact'; import { Build, BuildStatus } from './types/build'; 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 af77cd3138c46..5aa5655014dab 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 @@ -10,6 +10,8 @@ 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'; diff --git a/.buildkite/pipelines/on_merge.yml b/.buildkite/pipelines/on_merge.yml index 4eb15c16970ef..e37e99c9c4df1 100644 --- a/.buildkite/pipelines/on_merge.yml +++ b/.buildkite/pipelines/on_merge.yml @@ -37,7 +37,7 @@ steps: image: family/kibana-ubuntu-2004 imageProject: elastic-images-prod provider: gcp - machineType: n2-standard-2 + machineType: n2-highcpu-8 preemptible: true key: quick_checks timeout_in_minutes: 60 @@ -589,6 +589,11 @@ steps: preemptible: true artifact_paths: "target/plugin_so_types_snapshot.json" + timeout_in_minutes: 30 + retry: + automatic: + - exit_status: '-1' + limit: 3 - wait: ~ continue_on_failure: true diff --git a/.buildkite/pipelines/pull_request/base.yml b/.buildkite/pipelines/pull_request/base.yml index e5da8ce788e5b..2f2e0a739a304 100644 --- a/.buildkite/pipelines/pull_request/base.yml +++ b/.buildkite/pipelines/pull_request/base.yml @@ -23,7 +23,7 @@ steps: - command: .buildkite/scripts/steps/quick_checks.sh label: 'Quick Checks' agents: - machineType: n2-standard-2 + machineType: n2-highcpu-8 preemptible: true key: quick_checks timeout_in_minutes: 60 diff --git a/.buildkite/scripts/common/util.sh b/.buildkite/scripts/common/util.sh index d50fafad6967b..dce418180c107 100755 --- a/.buildkite/scripts/common/util.sh +++ b/.buildkite/scripts/common/util.sh @@ -12,7 +12,7 @@ is_pr_with_label() { IFS=',' read -ra labels <<< "${GITHUB_PR_LABELS:-}" - for label in "${labels[@]}" + for label in "${labels[@]:-}" do if [ "$label" == "$match" ]; then return diff --git a/.buildkite/scripts/steps/artifacts/docker_image.sh b/.buildkite/scripts/steps/artifacts/docker_image.sh index 77790bf3d5a8a..a148bdb805f6f 100755 --- a/.buildkite/scripts/steps/artifacts/docker_image.sh +++ b/.buildkite/scripts/steps/artifacts/docker_image.sh @@ -118,6 +118,12 @@ echo "--- Trigger image tag update" if [[ "$BUILDKITE_BRANCH" == "$KIBANA_BASE_BRANCH" ]] && [[ "${BUILDKITE_PULL_REQUEST:-false}" == "false" ]]; then cat << EOF | buildkite-agent pipeline upload steps: + - label: "Trigger cve-slo-status pipeline for $KIBANA_IMAGE" + trigger: cve-slo-status + build: + env: + CONTAINER: "$KIBANA_IMAGE" + soft_fail: true - label: ":argo: Update kibana image tag for kibana-controller using gpctl" branches: main trigger: gpctl-promote-with-e2e-tests diff --git a/.buildkite/scripts/steps/checks/event_log.sh b/.buildkite/scripts/steps/checks/event_log.sh index dc9c01902c010..930908bb2d0ec 100755 --- a/.buildkite/scripts/steps/checks/event_log.sh +++ b/.buildkite/scripts/steps/checks/event_log.sh @@ -8,7 +8,25 @@ echo --- Check Event Log Schema # event log schema is pinned to a specific version of ECS ECS_STABLE_VERSION=1.8 -git clone --depth 1 -b $ECS_STABLE_VERSION https://github.com/elastic/ecs.git ../ecs + +# we can potentially skip this check on a local env, if ../ecs is present, and modified by the developer +if [[ "${CI:-false}" =~ ^(0|false)$ ]] && [[ -d '../ecs' ]]; then + LOCAL_ECS_BRANCH=$(git -C ../ecs branch --show-current) + if [[ "$LOCAL_ECS_BRANCH" != "$ECS_STABLE_VERSION" ]]; then + echo "Skipping event log schema check because ECS schema is not on $ECS_STABLE_VERSION." + exit 0 + fi + + TOUCHED_FILES=$(git -C ../ecs status --porcelain) + if [[ -n "$TOUCHED_FILES" ]]; then + echo "Skipping event log schema check because ECS schema files have been modified." + exit 0 + fi + + echo "../ecs is already cloned and @ $ECS_STABLE_VERSION" +else + git clone --depth 1 -b $ECS_STABLE_VERSION https://github.com/elastic/ecs.git ../ecs +fi node x-pack/plugins/event_log/scripts/create_schemas.js diff --git a/.buildkite/scripts/steps/checks/quick_checks.txt b/.buildkite/scripts/steps/checks/quick_checks.txt new file mode 100644 index 0000000000000..028aa47ff9567 --- /dev/null +++ b/.buildkite/scripts/steps/checks/quick_checks.txt @@ -0,0 +1,19 @@ +.buildkite/scripts/steps/checks/precommit_hook.sh +.buildkite/scripts/steps/checks/ts_projects.sh +.buildkite/scripts/steps/checks/packages.sh +.buildkite/scripts/steps/checks/bazel_packages.sh +.buildkite/scripts/steps/checks/verify_notice.sh +.buildkite/scripts/steps/checks/plugin_list_docs.sh +.buildkite/scripts/steps/checks/event_log.sh +.buildkite/scripts/steps/checks/telemetry.sh +.buildkite/scripts/steps/checks/jest_configs.sh +.buildkite/scripts/steps/checks/bundle_limits.sh +.buildkite/scripts/steps/checks/i18n.sh +.buildkite/scripts/steps/checks/file_casing.sh +.buildkite/scripts/steps/checks/licenses.sh +.buildkite/scripts/steps/checks/test_projects.sh +.buildkite/scripts/steps/checks/test_hardening.sh +.buildkite/scripts/steps/checks/ftr_configs.sh +.buildkite/scripts/steps/checks/yarn_deduplicate.sh +.buildkite/scripts/steps/checks/prettier_topology.sh +.buildkite/scripts/steps/checks/renovate.sh diff --git a/.buildkite/scripts/steps/quick_checks.sh b/.buildkite/scripts/steps/quick_checks.sh index eb14209f97f5a..1b1613d42dc8d 100755 --- a/.buildkite/scripts/steps/quick_checks.sh +++ b/.buildkite/scripts/steps/quick_checks.sh @@ -2,25 +2,9 @@ set -euo pipefail -export DISABLE_BOOTSTRAP_VALIDATION=false -.buildkite/scripts/bootstrap.sh +if [[ "${CI:-}" =~ ^(1|true)$ ]]; then + export DISABLE_BOOTSTRAP_VALIDATION=false + .buildkite/scripts/bootstrap.sh +fi -.buildkite/scripts/steps/checks/precommit_hook.sh -.buildkite/scripts/steps/checks/ts_projects.sh -.buildkite/scripts/steps/checks/packages.sh -.buildkite/scripts/steps/checks/bazel_packages.sh -.buildkite/scripts/steps/checks/verify_notice.sh -.buildkite/scripts/steps/checks/plugin_list_docs.sh -.buildkite/scripts/steps/checks/event_log.sh -.buildkite/scripts/steps/checks/telemetry.sh -.buildkite/scripts/steps/checks/jest_configs.sh -.buildkite/scripts/steps/checks/bundle_limits.sh -.buildkite/scripts/steps/checks/i18n.sh -.buildkite/scripts/steps/checks/file_casing.sh -.buildkite/scripts/steps/checks/licenses.sh -.buildkite/scripts/steps/checks/test_projects.sh -.buildkite/scripts/steps/checks/test_hardening.sh -.buildkite/scripts/steps/checks/ftr_configs.sh -.buildkite/scripts/steps/checks/yarn_deduplicate.sh -.buildkite/scripts/steps/checks/prettier_topology.sh -.buildkite/scripts/steps/checks/renovate.sh +node scripts/quick_checks --file .buildkite/scripts/steps/checks/quick_checks.txt diff --git a/.eslintrc.js b/.eslintrc.js index 2b8c6c819bb3e..e8216f62792b2 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1365,6 +1365,25 @@ module.exports = { 'react/jsx-fragments': 'error', }, }, + { + files: [ + 'test/{accessibility,*functional*,*api_integration*}/apps/**/*.{js,ts}', + 'x-pack/test/{accessibility,*functional*,*api_integration*}/apps/**/*.{js,ts}', + 'x-pack/test_serverless/{functional,api_integration}/test_suites/**/*.{js,ts}', + ], + extends: ['plugin:mocha/recommended'], + plugins: ['mocha'], + env: { + mocha: true, + }, + rules: { + 'mocha/no-mocha-arrows': 'off', + 'mocha/no-exports': 'off', + 'mocha/no-setup-in-describe': 'off', + 'mocha/no-nested-tests': 'off', + 'mocha/no-skipped-tests': 'off', + }, + }, { files: ['x-pack/plugins/lists/public/**/!(*.test).{js,mjs,ts,tsx}'], plugins: ['react-perf'], diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 7bd95ba516018..6b02c918db816 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -99,6 +99,8 @@ packages/kbn-config-mocks @elastic/kibana-core packages/kbn-config-schema @elastic/kibana-core src/plugins/console @elastic/kibana-management packages/content-management/content_editor @elastic/appex-sharedux +packages/content-management/content_insights/content_insights_public @elastic/appex-sharedux +packages/content-management/content_insights/content_insights_server @elastic/appex-sharedux examples/content_management_examples @elastic/appex-sharedux packages/content-management/favorites/favorites_public @elastic/appex-sharedux packages/content-management/favorites/favorites_server @elastic/appex-sharedux @@ -506,7 +508,7 @@ x-pack/packages/index-management @elastic/kibana-management x-pack/plugins/index_management @elastic/kibana-management test/plugin_functional/plugins/index_patterns @elastic/kibana-data-discovery x-pack/packages/ml/inference_integration_flyout @elastic/ml-ui -x-pack/plugins/inference @elastic/kibana-core +x-pack/plugins/inference @elastic/appex-ai-infra x-pack/packages/kbn-infra-forge @elastic/obs-ux-management-team x-pack/plugins/observability_solution/infra @elastic/obs-ux-logs-team @elastic/obs-ux-infra_services-team x-pack/plugins/ingest_pipelines @elastic/kibana-management @@ -730,13 +732,16 @@ examples/screenshot_mode_example @elastic/appex-sharedux src/plugins/screenshot_mode @elastic/appex-sharedux x-pack/examples/screenshotting_example @elastic/appex-sharedux x-pack/plugins/screenshotting @elastic/kibana-reporting-services +packages/kbn-screenshotting-server @elastic/appex-sharedux packages/kbn-search-api-panels @elastic/search-kibana +x-pack/plugins/search_assistant @elastic/search-kibana packages/kbn-search-connectors @elastic/search-kibana x-pack/plugins/search_connectors @elastic/search-kibana packages/kbn-search-errors @elastic/kibana-data-discovery examples/search_examples @elastic/kibana-data-discovery x-pack/plugins/search_homepage @elastic/search-kibana packages/kbn-search-index-documents @elastic/search-kibana +x-pack/plugins/search_indices @elastic/search-kibana x-pack/plugins/search_inference_endpoints @elastic/search-kibana x-pack/plugins/search_notebooks @elastic/search-kibana x-pack/plugins/search_playground @elastic/search-kibana @@ -745,12 +750,14 @@ packages/kbn-search-types @elastic/kibana-data-discovery x-pack/plugins/searchprofiler @elastic/kibana-management x-pack/test/security_api_integration/packages/helpers @elastic/kibana-security x-pack/packages/security/api_key_management @elastic/kibana-security +x-pack/packages/security/authorization_core @elastic/kibana-security x-pack/packages/security/form_components @elastic/kibana-security packages/kbn-security-hardening @elastic/kibana-security x-pack/plugins/security @elastic/kibana-security x-pack/packages/security/plugin_types_common @elastic/kibana-security x-pack/packages/security/plugin_types_public @elastic/kibana-security x-pack/packages/security/plugin_types_server @elastic/kibana-security +x-pack/packages/security/role_management_model @elastic/kibana-security x-pack/packages/security-solution/distribution_bar @elastic/kibana-cloud-security-posture x-pack/plugins/security_solution_ess @elastic/security-solution x-pack/packages/security-solution/features @elastic/security-threat-hunting-explore @@ -850,6 +857,7 @@ packages/shared-ux/router/types @elastic/appex-sharedux packages/shared-ux/storybook/config @elastic/appex-sharedux packages/shared-ux/storybook/mock @elastic/appex-sharedux packages/shared-ux/modal/tabbed @elastic/appex-sharedux +packages/shared-ux/table_persist @elastic/appex-sharedux packages/kbn-shared-ux-utility @elastic/appex-sharedux x-pack/plugins/observability_solution/slo @elastic/obs-ux-management-team x-pack/packages/kbn-slo-schema @elastic/obs-ux-management-team @@ -1141,7 +1149,9 @@ x-pack/test/observability_ai_assistant_functional @elastic/obs-ai-assistant /x-pack/test_serverless/**/test_suites/observability/custom_threshold_rule/ @elastic/obs-ux-management-team /x-pack/test_serverless/**/test_suites/observability/slos/ @elastic/obs-ux-management-team /x-pack/test_serverless/api_integration/test_suites/observability/es_query_rule @elastic/obs-ux-management-team -/x-pack/test_serverless/api_integration/test_suites/observability/burn_rate_rule @elastic/obs-ux-management-team +/x-pack/test/api_integration/deployment_agnostic/apis/observability/alerting/burn_rate_rule @elastic/obs-ux-management-team +/x-pack/test/api_integration/deployment_agnostic/services/alerting_api @elastic/obs-ux-management-team +/x-pack/test/api_integration/deployment_agnostic/services/slo_api @elastic/obs-ux-management-team /x-pack/test_serverless/**/test_suites/observability/infra/ @elastic/obs-ux-infra_services-team # Elastic Stack Monitoring @@ -1150,7 +1160,6 @@ x-pack/test/observability_ai_assistant_functional @elastic/obs-ai-assistant /x-pack/test/api_integration/apis/monitoring_collection @elastic/stack-monitoring # Fleet -/fleet_packages.json @elastic/fleet /x-pack/test/fleet_api_integration @elastic/fleet /x-pack/test/fleet_cypress @elastic/fleet /x-pack/test/fleet_functional @elastic/fleet @@ -1302,7 +1311,6 @@ x-pack/test/**/deployment_agnostic/ @elastic/appex-qa #temporarily to monitor te /x-pack/test_serverless/**/test_suites/common/saved_objects_management/ @elastic/kibana-core /x-pack/test_serverless/api_integration/test_suites/common/core/ @elastic/kibana-core /x-pack/test_serverless/api_integration/test_suites/**/telemetry/ @elastic/kibana-core -/x-pack/plugins/inference @elastic/kibana-core @elastic/obs-ai-assistant @elastic/security-generative-ai #CC# /src/core/server/csp/ @elastic/kibana-core #CC# /src/plugins/saved_objects/ @elastic/kibana-core #CC# /x-pack/plugins/cloud/ @elastic/kibana-core @@ -1311,6 +1319,9 @@ x-pack/test/**/deployment_agnostic/ @elastic/appex-qa #temporarily to monitor te #CC# /src/plugins/newsfeed @elastic/kibana-core #CC# /x-pack/plugins/global_search_providers/ @elastic/kibana-core +# AppEx AI Infra +/x-pack/plugins/inference @elastic/appex-ai-infra @elastic/obs-ai-assistant @elastic/security-generative-ai + # AppEx Platform Services Security x-pack/test_serverless/api_integration/test_suites/common/security_response_headers.ts @elastic/kibana-security @@ -1388,6 +1399,7 @@ x-pack/plugins/cloud_integrations/cloud_full_story/server/config.ts @elastic/kib /x-pack/plugins/enterprise_search/public/applications/shared/doc_links @elastic/platform-docs /x-pack/test_serverless/api_integration/test_suites/search/serverless_search @elastic/search-kibana /x-pack/test_serverless/functional/test_suites/search/ @elastic/search-kibana +x-pack/test/api_integration/apis/management/index_management/inference_endpoints.ts @elastic/search-kibana # Management Experience - Deployment Management /x-pack/test_serverless/**/test_suites/common/index_management/ @elastic/kibana-management diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 66f99a95a3b2c..051cdc35b6507 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -27,7 +27,7 @@ jobs: ref: ${{ matrix.branch }} - name: Initialize CodeQL - uses: github/codeql-action/init@v2 + uses: github/codeql-action/init@883d8588e56d1753a8a58c1c86e88976f0c23449 # v3.26.3 with: languages: ${{ matrix.language }} config-file: ./.github/codeql/codeql-config.yml @@ -42,7 +42,7 @@ jobs: # yarn kbn bootstrap --no-validate --no-vscode - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 + uses: github/codeql-action/analyze@883d8588e56d1753a8a58c1c86e88976f0c23449 # v3.26.3 # env: # NODE_OPTIONS: "--max-old-space-size=6144" with: diff --git a/.gitignore b/.gitignore index cb94ba7ef2d3f..1936413e13609 100644 --- a/.gitignore +++ b/.gitignore @@ -141,3 +141,11 @@ x-pack/test/security_api_integration/plugins/audit_log/audit.log # ignore FTR temp directory .ftr role_users.json + +# Ignore temporary files in oas_docs +output/kibana.serverless.tmp1.yaml +output/kibana.serverless.tmp2.yaml +output/kibana.tmp1.yaml +output/kibana.tmp2.yaml +output/kibana.new.yaml +output/kibana.serverless.new.yaml \ No newline at end of file diff --git a/NOTICE.txt b/NOTICE.txt index ed8b96176e920..3cee52c089cb4 100644 --- a/NOTICE.txt +++ b/NOTICE.txt @@ -279,7 +279,7 @@ THE SOFTWARE. --- This code is part of the Services provided by FullStory, Inc. For license information, please refer to https://www.fullstory.com/legal/terms-and-conditions/ Portions of this code are licensed under the following license: - For license information please see fs.js.LICENSE.txt + For license information please see https://edge.fullstory.com/s/fs.js.LEGAL.txt --- This product bundles bootstrap@3.3.6 which is available under a diff --git a/api_docs/actions.mdx b/api_docs/actions.mdx index 18ebbd794411a..c7e6afda96713 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-08-21 +date: 2024-08-23 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 37550bfb08109..2d98c3ff77eb7 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-08-21 +date: 2024-08-23 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 8c902a84bfa9c..8b751d24d590b 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-08-21 +date: 2024-08-23 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 bb4d27b6f99e3..2472ed9795e3f 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'aiops'] --- import aiopsObj from './aiops.devdocs.json'; diff --git a/api_docs/alerting.devdocs.json b/api_docs/alerting.devdocs.json index 093c0a2a72a8c..a2ee90c61e223 100644 --- a/api_docs/alerting.devdocs.json +++ b/api_docs/alerting.devdocs.json @@ -3286,7 +3286,7 @@ "label": "monitoring", "description": [], "signature": [ - "Readonly<{} & { run: Readonly<{} & { history: Readonly<{ outcome?: Readonly<{ warning?: \"execute\" | \"validate\" | \"unknown\" | \"license\" | \"timeout\" | \"read\" | \"decrypt\" | \"disabled\" | \"maxExecutableActions\" | \"maxAlerts\" | \"maxQueuedActions\" | null | undefined; outcomeOrder?: number | undefined; outcomeMsg?: string[] | null | undefined; } & { outcome: \"warning\" | \"succeeded\" | \"failed\"; alertsCount: Readonly<{ recovered?: number | null | undefined; active?: number | null | undefined; new?: number | null | undefined; ignored?: number | null | undefined; } & {}>; }> | undefined; duration?: number | undefined; } & { timestamp: number; success: boolean; }>[]; calculated_metrics: Readonly<{ p50?: number | undefined; p95?: number | undefined; p99?: number | undefined; } & { success_ratio: number; }>; last_run: Readonly<{} & { timestamp: string; metrics: Readonly<{ duration?: number | undefined; total_search_duration_ms?: number | null | undefined; total_indexing_duration_ms?: number | null | undefined; total_alerts_detected?: number | null | undefined; total_alerts_created?: number | null | undefined; gap_duration_s?: number | null | undefined; } & {}>; }>; }>; }> | undefined" + "Readonly<{} & { run: Readonly<{} & { history: Readonly<{ outcome?: Readonly<{ warning?: \"execute\" | \"validate\" | \"unknown\" | \"license\" | \"ruleExecution\" | \"timeout\" | \"read\" | \"decrypt\" | \"disabled\" | \"maxExecutableActions\" | \"maxAlerts\" | \"maxQueuedActions\" | null | undefined; outcomeOrder?: number | undefined; outcomeMsg?: string[] | null | undefined; } & { outcome: \"warning\" | \"succeeded\" | \"failed\"; alertsCount: Readonly<{ recovered?: number | null | undefined; active?: number | null | undefined; new?: number | null | undefined; ignored?: number | null | undefined; } & {}>; }> | undefined; duration?: number | undefined; } & { timestamp: number; success: boolean; }>[]; calculated_metrics: Readonly<{ p50?: number | undefined; p95?: number | undefined; p99?: number | undefined; } & { success_ratio: number; }>; last_run: Readonly<{} & { timestamp: string; metrics: Readonly<{ duration?: number | undefined; total_search_duration_ms?: number | null | undefined; total_indexing_duration_ms?: number | null | undefined; total_alerts_detected?: number | null | undefined; total_alerts_created?: number | null | undefined; gap_duration_s?: number | null | undefined; } & {}>; }>; }>; }> | undefined" ], "path": "x-pack/plugins/alerting/server/application/rule/types/rule.ts", "deprecated": false, @@ -3342,7 +3342,7 @@ "label": "lastRun", "description": [], "signature": [ - "Readonly<{ warning?: \"execute\" | \"validate\" | \"unknown\" | \"license\" | \"timeout\" | \"read\" | \"decrypt\" | \"disabled\" | \"maxExecutableActions\" | \"maxAlerts\" | \"maxQueuedActions\" | null | undefined; outcomeOrder?: number | undefined; outcomeMsg?: string[] | null | undefined; } & { outcome: \"warning\" | \"succeeded\" | \"failed\"; alertsCount: Readonly<{ recovered?: number | null | undefined; active?: number | null | undefined; new?: number | null | undefined; ignored?: number | null | undefined; } & {}>; }> | null | undefined" + "Readonly<{ warning?: \"execute\" | \"validate\" | \"unknown\" | \"license\" | \"ruleExecution\" | \"timeout\" | \"read\" | \"decrypt\" | \"disabled\" | \"maxExecutableActions\" | \"maxAlerts\" | \"maxQueuedActions\" | null | undefined; outcomeOrder?: number | undefined; outcomeMsg?: string[] | null | undefined; } & { outcome: \"warning\" | \"succeeded\" | \"failed\"; alertsCount: Readonly<{ recovered?: number | null | undefined; active?: number | null | undefined; new?: number | null | undefined; ignored?: number | null | undefined; } & {}>; }> | null | undefined" ], "path": "x-pack/plugins/alerting/server/application/rule/types/rule.ts", "deprecated": false, @@ -4100,7 +4100,7 @@ "label": "schemas", "description": [], "signature": [ - "{ params?: { type: \"zod\"; schema: Zod.ZodObject | Zod.ZodIntersection; } | { type: \"config-schema\"; schema: ", + "{ params?: { type: \"zod\"; schema: any; } | { type: \"config-schema\"; schema: ", { "pluginId": "@kbn/config-schema", "scope": "common", @@ -5044,7 +5044,7 @@ }, ">; getAlertState: (params: ", "GetAlertStateParams", - ") => Promise | undefined; alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; previousStartedAt?: string | null | undefined; summaryActions?: Record> | undefined; } & {}>>; getAlertSummary: (params: ", + ") => Promise | undefined; alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; previousStartedAt?: string | null | undefined; summaryActions?: Record> | undefined; } & {}>>; getAlertSummary: (params: ", "GetAlertSummaryParams", ") => Promise<", { @@ -8529,6 +8529,20 @@ "path": "packages/kbn-alerting-types/rule_types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.Rule.flapping", + "type": "Object", + "tags": [], + "label": "flapping", + "description": [], + "signature": [ + "{ lookBackWindow: number; statusChangeThreshold: number; } | undefined" + ], + "path": "packages/kbn-alerting-types/rule_types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -9416,6 +9430,42 @@ ], "initialIsOpen": false }, + { + "parentPluginId": "alerting", + "id": "def-common.RuleSpecificFlappingProperties", + "type": "Interface", + "tags": [], + "label": "RuleSpecificFlappingProperties", + "description": [], + "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "alerting", + "id": "def-common.RuleSpecificFlappingProperties.lookBackWindow", + "type": "number", + "tags": [], + "label": "lookBackWindow", + "description": [], + "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.RuleSpecificFlappingProperties.statusChangeThreshold", + "type": "number", + "tags": [], + "label": "statusChangeThreshold", + "description": [], + "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, { "parentPluginId": "alerting", "id": "def-common.RulesSettings", @@ -10665,7 +10715,7 @@ "label": "LatestAlertInstanceMetaSchema", "description": [], "signature": [ - "{ readonly uuid?: string | undefined; readonly lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; readonly flappingHistory?: boolean[] | undefined; readonly flapping?: boolean | undefined; readonly maintenanceWindowIds?: string[] | undefined; readonly pendingRecoveredCount?: number | undefined; readonly activeCount?: number | undefined; }" + "{ readonly flapping?: boolean | undefined; readonly uuid?: string | undefined; readonly lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; readonly flappingHistory?: boolean[] | undefined; readonly maintenanceWindowIds?: string[] | undefined; readonly pendingRecoveredCount?: number | undefined; readonly activeCount?: number | undefined; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -10710,7 +10760,7 @@ "label": "LatestRawAlertInstanceSchema", "description": [], "signature": [ - "{ readonly meta?: Readonly<{ uuid?: string | undefined; lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; readonly state?: Record | undefined; }" + "{ readonly meta?: Readonly<{ flapping?: boolean | undefined; uuid?: string | undefined; lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; readonly state?: Record | undefined; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -10725,7 +10775,7 @@ "label": "LatestTaskStateSchema", "description": [], "signature": [ - "{ readonly alertTypeState?: Record | undefined; readonly alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly previousStartedAt?: string | null | undefined; readonly summaryActions?: Record> | undefined; }" + "{ readonly alertTypeState?: Record | undefined; readonly alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly previousStartedAt?: string | null | undefined; readonly summaryActions?: Record> | undefined; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -11080,7 +11130,7 @@ "signature": [ "20" ], - "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "path": "packages/kbn-alerting-types/rule_flapping.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -11110,7 +11160,7 @@ "signature": [ "20" ], - "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "path": "packages/kbn-alerting-types/rule_flapping.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -11125,7 +11175,7 @@ "signature": [ "2" ], - "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "path": "packages/kbn-alerting-types/rule_flapping.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -11155,7 +11205,7 @@ "signature": [ "2" ], - "path": "x-pack/plugins/alerting/common/rules_settings.ts", + "path": "packages/kbn-alerting-types/rule_flapping.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false diff --git a/api_docs/alerting.mdx b/api_docs/alerting.mdx index 716abf7084650..8ed71d6bcbe2d 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'alerting'] --- import alertingObj from './alerting.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-o | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 871 | 1 | 839 | 52 | +| 875 | 1 | 843 | 52 | ## Client diff --git a/api_docs/apm.mdx b/api_docs/apm.mdx index 93266331061ab..7a015e6f1ad72 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-08-21 +date: 2024-08-23 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 19d230a72e226..e2f4129a42285 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-08-21 +date: 2024-08-23 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 d30453c03092f..85a05e3262d03 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-08-21 +date: 2024-08-23 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 8a1045be20df4..f4680d871ee01 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-08-21 +date: 2024-08-23 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 b08be174b485e..c5bf934faf0f6 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-08-21 +date: 2024-08-23 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 f40dce3015109..267843a336dee 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-08-21 +date: 2024-08-23 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 1c2244e992feb..3b03c9e04048b 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'charts'] --- import chartsObj from './charts.devdocs.json'; diff --git a/api_docs/cloud.mdx b/api_docs/cloud.mdx index 4997397ea4935..2e2a6b765313a 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloud'] --- import cloudObj from './cloud.devdocs.json'; diff --git a/api_docs/cloud_data_migration.mdx b/api_docs/cloud_data_migration.mdx index 29caf923eead9..3eacf8526efad 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-08-21 +date: 2024-08-23 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 a0f69d9367856..763672a01ae61 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-08-21 +date: 2024-08-23 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 31864a9c747be..c9bbefe01f698 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-08-21 +date: 2024-08-23 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 58a489fbc79af..2be4ac3105c1b 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-08-21 +date: 2024-08-23 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 740ccdf846ee8..f375f7b13c02c 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-08-21 +date: 2024-08-23 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 b8c0702ff9d62..2e0473b097025 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-08-21 +date: 2024-08-23 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 2f21f8e7649cf..fa81eb3778122 100644 --- a/api_docs/controls.devdocs.json +++ b/api_docs/controls.devdocs.json @@ -5276,41 +5276,6 @@ "deprecated": false, "trackAdoption": false }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupRuntimeState.defaultControlGrow", - "type": "CompoundType", - "tags": [], - "label": "defaultControlGrow", - "description": [], - "signature": [ - "boolean | undefined" - ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", - "deprecated": false, - "trackAdoption": false - }, - { - "parentPluginId": "controls", - "id": "def-public.ControlGroupRuntimeState.defaultControlWidth", - "type": "CompoundType", - "tags": [], - "label": "defaultControlWidth", - "description": [], - "signature": [ - { - "pluginId": "controls", - "scope": "common", - "docId": "kibControlsPluginApi", - "section": "def-common.ControlWidth", - "text": "ControlWidth" - }, - " | undefined" - ], - "path": "src/plugins/controls/public/react_controls/control_group/types.ts", - "deprecated": false, - "trackAdoption": false - }, { "parentPluginId": "controls", "id": "def-public.ControlGroupRuntimeState.labelPosition", @@ -6572,18 +6537,6 @@ "text": "PublishesUnsavedChanges" }, ", \"unsavedChanges\"> & ", - "PublishesControlDisplaySettings", - " & { labelPosition: ", - { - "pluginId": "@kbn/presentation-publishing", - "scope": "public", - "docId": "kibKbnPresentationPublishingPluginApi", - "section": "def-public.PublishingSubject", - "text": "PublishingSubject" - }, - "<", - "ControlStyle", - ">; } & ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -6655,7 +6608,7 @@ "section": "def-common.ControlInputTransform", "text": "ControlInputTransform" }, - " | undefined; } | undefined) => void; lastUsedDataViewId$: ", + " | undefined; } | undefined) => void; labelPosition: ", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -6663,7 +6616,9 @@ "section": "def-public.PublishingSubject", "text": "PublishingSubject" }, - "; }" + "<", + "ControlStyle", + ">; }" ], "path": "src/plugins/controls/public/react_controls/control_group/types.ts", "deprecated": false, @@ -6927,9 +6882,7 @@ "section": "def-public.PublishesUnsavedChanges", "text": "PublishesUnsavedChanges" }, - " & ", - "PublishesControlDisplaySettings", - " & Partial<", + " & Partial<", { "pluginId": "@kbn/presentation-publishing", "scope": "public", @@ -6997,7 +6950,31 @@ }, "<", "DefaultControlState", - ">; setDataLoading: (loading: boolean) => void; setBlockingError: (error: Error | undefined) => void; } & Omit<", + ">; setDataLoading: (loading: boolean) => void; setBlockingError: (error: Error | undefined) => void; grow: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "; width: ", + { + "pluginId": "@kbn/presentation-publishing", + "scope": "public", + "docId": "kibKbnPresentationPublishingPluginApi", + "section": "def-public.PublishingSubject", + "text": "PublishingSubject" + }, + "<", + { + "pluginId": "controls", + "scope": "common", + "docId": "kibControlsPluginApi", + "section": "def-common.ControlWidth", + "text": "ControlWidth" + }, + " | undefined>; } & Omit<", { "pluginId": "@kbn/presentation-publishing", "scope": "public", diff --git a/api_docs/controls.mdx b/api_docs/controls.mdx index 2f947130b1fd6..e16c4dfee27da 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-08-21 +date: 2024-08-23 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 | |-------------------|-----------|------------------------|-----------------| -| 396 | 0 | 387 | 29 | +| 394 | 0 | 385 | 28 | ## Client diff --git a/api_docs/custom_integrations.mdx b/api_docs/custom_integrations.mdx index e38d3d4dfcbe5..3690de252c082 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'customIntegrations'] --- import customIntegrationsObj from './custom_integrations.devdocs.json'; diff --git a/api_docs/dashboard.mdx b/api_docs/dashboard.mdx index 93607e6059480..ba19fd7c590e8 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dashboard'] --- import dashboardObj from './dashboard.devdocs.json'; diff --git a/api_docs/dashboard_enhanced.mdx b/api_docs/dashboard_enhanced.mdx index dc05031b8fe01..da46150b2b097 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-08-21 +date: 2024-08-23 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 81a1f32c13658..1c12685087570 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-08-21 +date: 2024-08-23 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 67af6249d7f73..dd39100824d66 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-08-21 +date: 2024-08-23 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 cf619026a8e63..077c10aa11247 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-08-21 +date: 2024-08-23 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 bd24a7f92b45b..739fcafaaa728 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-08-21 +date: 2024-08-23 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 eb468b07129aa..e2015a95c8308 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-08-21 +date: 2024-08-23 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 a2bec5784eab9..a031ea4ccb415 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-08-21 +date: 2024-08-23 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 411fa7167f7e8..0ef2c7d54d981 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataViewManagement'] --- import dataViewManagementObj from './data_view_management.devdocs.json'; diff --git a/api_docs/data_views.mdx b/api_docs/data_views.mdx index 356b7d69823d3..b086c09aac273 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-08-21 +date: 2024-08-23 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 fcbe1a139a169..a9e33ae5e2a8a 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-08-21 +date: 2024-08-23 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 4023aae4489b4..2a121ae5bdbdd 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-08-21 +date: 2024-08-23 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 19511b36d42da..5f58be943dc6b 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -177,10 +177,10 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | spaces, security, actions, alerting, aiops, remoteClusters, ml, graph, indexLifecycleManagement, mapsEms, osquery, securitySolution, painlessLab, rollup, searchprofiler, snapshotRestore, transform, upgradeAssistant | 8.8.0 | | | fleet, apm, security, securitySolution | 8.8.0 | | | fleet, apm, security, securitySolution | 8.8.0 | -| | spaces, security, alerting, cases | 8.8.0 | +| | spaces, @kbn/security-authorization-core, security, alerting, cases, @kbn/security-role-management-model | 8.8.0 | | | @kbn/core-application-browser-internal, @kbn/core-application-browser-mocks, management, fleet, security, kibanaOverview, @kbn/core | 8.8.0 | | | embeddable, presentationUtil, lens, dashboard, discover, graph, links | 8.8.0 | -| | security | 8.8.0 | +| | security, @kbn/security-role-management-model | 8.8.0 | | | apm | 8.8.0 | | | mapsEms | 8.8.0 | | | savedObjectsTaggingOss | 8.8.0 | diff --git a/api_docs/deprecations_by_plugin.mdx b/api_docs/deprecations_by_plugin.mdx index 62e1e381a8330..279ecce05b35b 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -428,6 +428,23 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] +## @kbn/security-authorization-core + +| Deprecated API | Reference location(s) | Remove By | +| ---------------|-----------|-----------| +| | [privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures)+ 20 more | 8.8.0 | + + + +## @kbn/security-role-management-model + +| Deprecated API | Reference location(s) | Remove By | +| ---------------|-----------|-----------| +| | [kibana_privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts#:~:text=getKibanaFeatures), [kibana_privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts#:~:text=getKibanaFeatures) | 8.8.0 | +| | [kibana_privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts#:~:text=getElasticsearchFeatures) | 8.8.0 | + + + ## @kbn/securitysolution-data-table | Deprecated API | Reference location(s) | Remove By | @@ -1325,7 +1342,7 @@ migrates to using the Kibana Privilege model: https://github.com/elastic/kibana/ This is relied on by the reporting feature, and should be removed once reporting migrates to using the Kibana Privilege model: https://github.com/elastic/kibana/issues/19914 | -| | [app_authorization.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.ts#:~:text=getKibanaFeatures), [privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.ts#:~:text=getKibanaFeatures), [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getKibanaFeatures), [app_authorization.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures)+ 24 more | 8.8.0 | +| | [app_authorization.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.ts#:~:text=getKibanaFeatures), [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getKibanaFeatures), [app_authorization.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.test.ts#:~:text=getKibanaFeatures) | 8.8.0 | | | [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getElasticsearchFeatures) | 8.8.0 | | | [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode), [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode), [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode) | 8.8.0 | | | [plugin.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/public/plugin.tsx#:~:text=license%24) | 8.8.0 | diff --git a/api_docs/deprecations_by_team.mdx b/api_docs/deprecations_by_team.mdx index e85f6e71de3fa..a8be386d19906 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -87,8 +87,8 @@ migrates to using the Kibana Privilege model: https://github.com/elastic/kibana/ This is relied on by the reporting feature, and should be removed once reporting migrates to using the Kibana Privilege model: https://github.com/elastic/kibana/issues/19914 | -| security | | [app_authorization.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.ts#:~:text=getKibanaFeatures), [privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.ts#:~:text=getKibanaFeatures), [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getKibanaFeatures), [app_authorization.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts#:~:text=getKibanaFeatures)+ 27 more | 8.8.0 | -| security | | [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getElasticsearchFeatures) | 8.8.0 | +| security | | [app_authorization.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.ts#:~:text=getKibanaFeatures), [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getKibanaFeatures), [app_authorization.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/app_authorization.test.ts#:~:text=getKibanaFeatures), [on_post_auth_interceptor.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.ts#:~:text=getKibanaFeatures), [spaces_usage_collector.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/spaces/server/usage_collection/spaces_usage_collector.ts#:~:text=getKibanaFeatures), [on_post_auth_interceptor.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts#:~:text=getKibanaFeatures), [privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures), [privileges.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts#:~:text=getKibanaFeatures)+ 28 more | 8.8.0 | +| security | | [authorization_service.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/server/authorization/authorization_service.tsx#:~:text=getElasticsearchFeatures), [kibana_privileges.ts](https://github.com/elastic/kibana/tree/main/x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts#:~:text=getElasticsearchFeatures) | 8.8.0 | | security | | [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode), [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode), [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode) | 8.8.0 | | security | | [plugin.tsx](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/public/plugin.tsx#:~:text=license%24) | 8.8.0 | | security | | [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode), [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode), [license_service.test.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security/common/licensing/license_service.test.ts#:~:text=mode) | 8.8.0 | diff --git a/api_docs/dev_tools.mdx b/api_docs/dev_tools.mdx index 3cd59e049a8a1..f6d11875ea422 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-08-21 +date: 2024-08-23 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 108ea28b8e6fd..a981d65d81783 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-08-21 +date: 2024-08-23 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 73a54a3ea5267..2bb7ac122f2ff 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-08-21 +date: 2024-08-23 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 60b918c7d6378..1b0a82eb85317 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-08-21 +date: 2024-08-23 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 d2d01f8fe1e5e..48a3bc3efb0b0 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ecsDataQualityDashboard'] --- import ecsDataQualityDashboardObj from './ecs_data_quality_dashboard.devdocs.json'; diff --git a/api_docs/elastic_assistant.mdx b/api_docs/elastic_assistant.mdx index b8b4f550d44c8..8b4ba692ba7f0 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'elasticAssistant'] --- import elasticAssistantObj from './elastic_assistant.devdocs.json'; diff --git a/api_docs/embeddable.mdx b/api_docs/embeddable.mdx index 4e639b5b41a72..81206ed4e9163 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-08-21 +date: 2024-08-23 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 f9719d664139b..9cddad2ac9fee 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-08-21 +date: 2024-08-23 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 94e71bc65e104..4b576936aa3b9 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-08-21 +date: 2024-08-23 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 37a269514e144..222bf0183d193 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-08-21 +date: 2024-08-23 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 72850c6069b33..0d7825c2fdf2d 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'entitiesDataAccess'] --- import entitiesDataAccessObj from './entities_data_access.devdocs.json'; diff --git a/api_docs/entity_manager.mdx b/api_docs/entity_manager.mdx index f5b8809b8e327..a47af092d63c6 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-08-21 +date: 2024-08-23 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 925011b3729a9..c92e5932f8ef1 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'esUiShared'] --- import esUiSharedObj from './es_ui_shared.devdocs.json'; diff --git a/api_docs/esql.mdx b/api_docs/esql.mdx index a00821cf5c589..0c38a0976cf5f 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'esql'] --- import esqlObj from './esql.devdocs.json'; diff --git a/api_docs/esql_data_grid.mdx b/api_docs/esql_data_grid.mdx index ed1d2f13a09a4..5c5b5ff146f70 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-08-21 +date: 2024-08-23 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 8f6b7c840b87c..defc3968076c3 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-08-21 +date: 2024-08-23 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 aa504bf848435..6ead5380f7a72 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'eventAnnotationListing'] --- import eventAnnotationListingObj from './event_annotation_listing.devdocs.json'; diff --git a/api_docs/event_log.devdocs.json b/api_docs/event_log.devdocs.json index 3377b88eb598d..7ce5819610f98 100644 --- a/api_docs/event_log.devdocs.json +++ b/api_docs/event_log.devdocs.json @@ -1450,7 +1450,7 @@ "label": "data", "description": [], "signature": [ - "(Readonly<{ log?: Readonly<{ logger?: string | undefined; level?: string | undefined; } & {}> | undefined; error?: Readonly<{ id?: string | undefined; type?: string | undefined; message?: string | undefined; code?: string | undefined; stack_trace?: string | undefined; } & {}> | undefined; '@timestamp'?: string | undefined; message?: string | undefined; tags?: string[] | undefined; rule?: Readonly<{ id?: string | undefined; version?: string | undefined; name?: string | undefined; license?: string | undefined; description?: string | undefined; uuid?: string | undefined; category?: string | undefined; reference?: string | undefined; author?: string[] | undefined; ruleset?: string | undefined; } & {}> | undefined; kibana?: Readonly<{ task?: Readonly<{ id?: string | undefined; schedule_delay?: string | number | undefined; scheduled?: string | undefined; } & {}> | undefined; action?: Readonly<{ id?: string | undefined; name?: string | undefined; execution?: Readonly<{ source?: string | undefined; uuid?: string | undefined; gen_ai?: Readonly<{ usage?: Readonly<{ prompt_tokens?: string | number | undefined; completion_tokens?: string | number | undefined; total_tokens?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; version?: string | undefined; alerting?: Readonly<{ outcome?: string | undefined; status?: string | undefined; summary?: Readonly<{ recovered?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; new?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; ongoing?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; instance_id?: string | undefined; action_group_id?: string | undefined; action_subgroup?: string | undefined; } & {}> | undefined; alert?: Readonly<{ rule?: Readonly<{ consumer?: string | undefined; revision?: string | number | undefined; execution?: Readonly<{ uuid?: string | undefined; status?: string | undefined; metrics?: Readonly<{ total_search_duration_ms?: string | number | undefined; total_indexing_duration_ms?: string | number | undefined; number_of_triggered_actions?: string | number | undefined; number_of_generated_actions?: string | number | undefined; alert_counts?: Readonly<{ recovered?: string | number | undefined; active?: string | number | undefined; new?: string | number | undefined; } & {}> | undefined; number_of_delayed_alerts?: string | number | undefined; number_of_searches?: string | number | undefined; es_search_duration_ms?: string | number | undefined; execution_gap_duration_s?: string | number | undefined; rule_type_run_duration_ms?: string | number | undefined; process_alerts_duration_ms?: string | number | undefined; trigger_actions_duration_ms?: string | number | undefined; process_rule_duration_ms?: string | number | undefined; claim_to_start_duration_ms?: string | number | undefined; persist_alerts_duration_ms?: string | number | undefined; prepare_rule_duration_ms?: string | number | undefined; total_run_duration_ms?: string | number | undefined; total_enrichment_duration_ms?: string | number | undefined; } & {}> | undefined; status_order?: string | number | undefined; backfill?: Readonly<{ id?: string | undefined; start?: string | undefined; interval?: string | undefined; } & {}> | undefined; } & {}> | undefined; rule_type_id?: string | undefined; } & {}> | undefined; uuid?: string | undefined; flapping?: boolean | undefined; maintenance_window_ids?: string[] | undefined; } & {}> | undefined; space_ids?: string[] | undefined; server_uuid?: string | undefined; saved_objects?: Readonly<{ id?: string | undefined; type?: string | undefined; namespace?: string | undefined; rel?: string | undefined; type_id?: string | undefined; space_agnostic?: boolean | undefined; } & {}>[] | undefined; } & {}> | undefined; event?: Readonly<{ id?: string | undefined; type?: string[] | undefined; reason?: string | undefined; action?: string | undefined; start?: string | undefined; end?: string | undefined; outcome?: string | undefined; duration?: string | number | undefined; code?: string | undefined; severity?: string | number | undefined; category?: string[] | undefined; timezone?: string | undefined; risk_score?: number | undefined; url?: string | undefined; created?: string | undefined; dataset?: string | undefined; provider?: string | undefined; hash?: string | undefined; ingested?: string | undefined; kind?: string | undefined; module?: string | undefined; original?: string | undefined; reference?: string | undefined; risk_score_norm?: number | undefined; sequence?: string | number | undefined; } & {}> | undefined; ecs?: Readonly<{ version?: string | undefined; } & {}> | undefined; user?: Readonly<{ id?: string | undefined; name?: string | undefined; } & {}> | undefined; } & {}> | undefined)[]" + "(Readonly<{ log?: Readonly<{ logger?: string | undefined; level?: string | undefined; } & {}> | undefined; error?: Readonly<{ id?: string | undefined; type?: string | undefined; message?: string | undefined; code?: string | undefined; stack_trace?: string | undefined; } & {}> | undefined; '@timestamp'?: string | undefined; message?: string | undefined; tags?: string[] | undefined; rule?: Readonly<{ id?: string | undefined; version?: string | undefined; name?: string | undefined; license?: string | undefined; description?: string | undefined; uuid?: string | undefined; category?: string | undefined; reference?: string | undefined; author?: string[] | undefined; ruleset?: string | undefined; } & {}> | undefined; kibana?: Readonly<{ task?: Readonly<{ id?: string | undefined; schedule_delay?: string | number | undefined; scheduled?: string | undefined; } & {}> | undefined; action?: Readonly<{ id?: string | undefined; name?: string | undefined; execution?: Readonly<{ source?: string | undefined; uuid?: string | undefined; gen_ai?: Readonly<{ usage?: Readonly<{ prompt_tokens?: string | number | undefined; completion_tokens?: string | number | undefined; total_tokens?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; version?: string | undefined; alerting?: Readonly<{ outcome?: string | undefined; status?: string | undefined; summary?: Readonly<{ recovered?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; new?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; ongoing?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; instance_id?: string | undefined; action_group_id?: string | undefined; action_subgroup?: string | undefined; } & {}> | undefined; alert?: Readonly<{ rule?: Readonly<{ consumer?: string | undefined; revision?: string | number | undefined; execution?: Readonly<{ uuid?: string | undefined; status?: string | undefined; metrics?: Readonly<{ total_search_duration_ms?: string | number | undefined; total_indexing_duration_ms?: string | number | undefined; number_of_triggered_actions?: string | number | undefined; number_of_generated_actions?: string | number | undefined; alert_counts?: Readonly<{ recovered?: string | number | undefined; active?: string | number | undefined; new?: string | number | undefined; } & {}> | undefined; number_of_delayed_alerts?: string | number | undefined; number_of_searches?: string | number | undefined; es_search_duration_ms?: string | number | undefined; execution_gap_duration_s?: string | number | undefined; rule_type_run_duration_ms?: string | number | undefined; process_alerts_duration_ms?: string | number | undefined; trigger_actions_duration_ms?: string | number | undefined; process_rule_duration_ms?: string | number | undefined; claim_to_start_duration_ms?: string | number | undefined; persist_alerts_duration_ms?: string | number | undefined; prepare_rule_duration_ms?: string | number | undefined; total_run_duration_ms?: string | number | undefined; total_enrichment_duration_ms?: string | number | undefined; } & {}> | undefined; status_order?: string | number | undefined; backfill?: Readonly<{ id?: string | undefined; start?: string | undefined; interval?: string | undefined; } & {}> | undefined; } & {}> | undefined; rule_type_id?: string | undefined; } & {}> | undefined; flapping?: boolean | undefined; uuid?: string | undefined; maintenance_window_ids?: string[] | undefined; } & {}> | undefined; space_ids?: string[] | undefined; server_uuid?: string | undefined; saved_objects?: Readonly<{ id?: string | undefined; type?: string | undefined; namespace?: string | undefined; rel?: string | undefined; type_id?: string | undefined; space_agnostic?: boolean | undefined; } & {}>[] | undefined; } & {}> | undefined; event?: Readonly<{ id?: string | undefined; type?: string[] | undefined; reason?: string | undefined; action?: string | undefined; start?: string | undefined; end?: string | undefined; outcome?: string | undefined; duration?: string | number | undefined; severity?: string | number | undefined; category?: string[] | undefined; timezone?: string | undefined; risk_score?: number | undefined; code?: string | undefined; url?: string | undefined; created?: string | undefined; dataset?: string | undefined; provider?: string | undefined; hash?: string | undefined; ingested?: string | undefined; kind?: string | undefined; module?: string | undefined; original?: string | undefined; reference?: string | undefined; risk_score_norm?: number | undefined; sequence?: string | number | undefined; } & {}> | undefined; ecs?: Readonly<{ version?: string | undefined; } & {}> | undefined; user?: Readonly<{ id?: string | undefined; name?: string | undefined; } & {}> | undefined; } & {}> | undefined)[]" ], "path": "x-pack/plugins/event_log/server/es/cluster_client_adapter.ts", "deprecated": false, @@ -1470,7 +1470,7 @@ "label": "IEvent", "description": [], "signature": [ - "DeepPartial | undefined; error?: Readonly<{ id?: string | undefined; type?: string | undefined; message?: string | undefined; code?: string | undefined; stack_trace?: string | undefined; } & {}> | undefined; '@timestamp'?: string | undefined; message?: string | undefined; tags?: string[] | undefined; rule?: Readonly<{ id?: string | undefined; version?: string | undefined; name?: string | undefined; license?: string | undefined; description?: string | undefined; uuid?: string | undefined; category?: string | undefined; reference?: string | undefined; author?: string[] | undefined; ruleset?: string | undefined; } & {}> | undefined; kibana?: Readonly<{ task?: Readonly<{ id?: string | undefined; schedule_delay?: string | number | undefined; scheduled?: string | undefined; } & {}> | undefined; action?: Readonly<{ id?: string | undefined; name?: string | undefined; execution?: Readonly<{ source?: string | undefined; uuid?: string | undefined; gen_ai?: Readonly<{ usage?: Readonly<{ prompt_tokens?: string | number | undefined; completion_tokens?: string | number | undefined; total_tokens?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; version?: string | undefined; alerting?: Readonly<{ outcome?: string | undefined; status?: string | undefined; summary?: Readonly<{ recovered?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; new?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; ongoing?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; instance_id?: string | undefined; action_group_id?: string | undefined; action_subgroup?: string | undefined; } & {}> | undefined; alert?: Readonly<{ rule?: Readonly<{ consumer?: string | undefined; revision?: string | number | undefined; execution?: Readonly<{ uuid?: string | undefined; status?: string | undefined; metrics?: Readonly<{ total_search_duration_ms?: string | number | undefined; total_indexing_duration_ms?: string | number | undefined; number_of_triggered_actions?: string | number | undefined; number_of_generated_actions?: string | number | undefined; alert_counts?: Readonly<{ recovered?: string | number | undefined; active?: string | number | undefined; new?: string | number | undefined; } & {}> | undefined; number_of_delayed_alerts?: string | number | undefined; number_of_searches?: string | number | undefined; es_search_duration_ms?: string | number | undefined; execution_gap_duration_s?: string | number | undefined; rule_type_run_duration_ms?: string | number | undefined; process_alerts_duration_ms?: string | number | undefined; trigger_actions_duration_ms?: string | number | undefined; process_rule_duration_ms?: string | number | undefined; claim_to_start_duration_ms?: string | number | undefined; persist_alerts_duration_ms?: string | number | undefined; prepare_rule_duration_ms?: string | number | undefined; total_run_duration_ms?: string | number | undefined; total_enrichment_duration_ms?: string | number | undefined; } & {}> | undefined; status_order?: string | number | undefined; backfill?: Readonly<{ id?: string | undefined; start?: string | undefined; interval?: string | undefined; } & {}> | undefined; } & {}> | undefined; rule_type_id?: string | undefined; } & {}> | undefined; uuid?: string | undefined; flapping?: boolean | undefined; maintenance_window_ids?: string[] | undefined; } & {}> | undefined; space_ids?: string[] | undefined; server_uuid?: string | undefined; saved_objects?: Readonly<{ id?: string | undefined; type?: string | undefined; namespace?: string | undefined; rel?: string | undefined; type_id?: string | undefined; space_agnostic?: boolean | undefined; } & {}>[] | undefined; } & {}> | undefined; event?: Readonly<{ id?: string | undefined; type?: string[] | undefined; reason?: string | undefined; action?: string | undefined; start?: string | undefined; end?: string | undefined; outcome?: string | undefined; duration?: string | number | undefined; code?: string | undefined; severity?: string | number | undefined; category?: string[] | undefined; timezone?: string | undefined; risk_score?: number | undefined; url?: string | undefined; created?: string | undefined; dataset?: string | undefined; provider?: string | undefined; hash?: string | undefined; ingested?: string | undefined; kind?: string | undefined; module?: string | undefined; original?: string | undefined; reference?: string | undefined; risk_score_norm?: number | undefined; sequence?: string | number | undefined; } & {}> | undefined; ecs?: Readonly<{ version?: string | undefined; } & {}> | undefined; user?: Readonly<{ id?: string | undefined; name?: string | undefined; } & {}> | undefined; } & {}>>> | undefined" + "DeepPartial | undefined; error?: Readonly<{ id?: string | undefined; type?: string | undefined; message?: string | undefined; code?: string | undefined; stack_trace?: string | undefined; } & {}> | undefined; '@timestamp'?: string | undefined; message?: string | undefined; tags?: string[] | undefined; rule?: Readonly<{ id?: string | undefined; version?: string | undefined; name?: string | undefined; license?: string | undefined; description?: string | undefined; uuid?: string | undefined; category?: string | undefined; reference?: string | undefined; author?: string[] | undefined; ruleset?: string | undefined; } & {}> | undefined; kibana?: Readonly<{ task?: Readonly<{ id?: string | undefined; schedule_delay?: string | number | undefined; scheduled?: string | undefined; } & {}> | undefined; action?: Readonly<{ id?: string | undefined; name?: string | undefined; execution?: Readonly<{ source?: string | undefined; uuid?: string | undefined; gen_ai?: Readonly<{ usage?: Readonly<{ prompt_tokens?: string | number | undefined; completion_tokens?: string | number | undefined; total_tokens?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; version?: string | undefined; alerting?: Readonly<{ outcome?: string | undefined; status?: string | undefined; summary?: Readonly<{ recovered?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; new?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; ongoing?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; instance_id?: string | undefined; action_group_id?: string | undefined; action_subgroup?: string | undefined; } & {}> | undefined; alert?: Readonly<{ rule?: Readonly<{ consumer?: string | undefined; revision?: string | number | undefined; execution?: Readonly<{ uuid?: string | undefined; status?: string | undefined; metrics?: Readonly<{ total_search_duration_ms?: string | number | undefined; total_indexing_duration_ms?: string | number | undefined; number_of_triggered_actions?: string | number | undefined; number_of_generated_actions?: string | number | undefined; alert_counts?: Readonly<{ recovered?: string | number | undefined; active?: string | number | undefined; new?: string | number | undefined; } & {}> | undefined; number_of_delayed_alerts?: string | number | undefined; number_of_searches?: string | number | undefined; es_search_duration_ms?: string | number | undefined; execution_gap_duration_s?: string | number | undefined; rule_type_run_duration_ms?: string | number | undefined; process_alerts_duration_ms?: string | number | undefined; trigger_actions_duration_ms?: string | number | undefined; process_rule_duration_ms?: string | number | undefined; claim_to_start_duration_ms?: string | number | undefined; persist_alerts_duration_ms?: string | number | undefined; prepare_rule_duration_ms?: string | number | undefined; total_run_duration_ms?: string | number | undefined; total_enrichment_duration_ms?: string | number | undefined; } & {}> | undefined; status_order?: string | number | undefined; backfill?: Readonly<{ id?: string | undefined; start?: string | undefined; interval?: string | undefined; } & {}> | undefined; } & {}> | undefined; rule_type_id?: string | undefined; } & {}> | undefined; flapping?: boolean | undefined; uuid?: string | undefined; maintenance_window_ids?: string[] | undefined; } & {}> | undefined; space_ids?: string[] | undefined; server_uuid?: string | undefined; saved_objects?: Readonly<{ id?: string | undefined; type?: string | undefined; namespace?: string | undefined; rel?: string | undefined; type_id?: string | undefined; space_agnostic?: boolean | undefined; } & {}>[] | undefined; } & {}> | undefined; event?: Readonly<{ id?: string | undefined; type?: string[] | undefined; reason?: string | undefined; action?: string | undefined; start?: string | undefined; end?: string | undefined; outcome?: string | undefined; duration?: string | number | undefined; severity?: string | number | undefined; category?: string[] | undefined; timezone?: string | undefined; risk_score?: number | undefined; code?: string | undefined; url?: string | undefined; created?: string | undefined; dataset?: string | undefined; provider?: string | undefined; hash?: string | undefined; ingested?: string | undefined; kind?: string | undefined; module?: string | undefined; original?: string | undefined; reference?: string | undefined; risk_score_norm?: number | undefined; sequence?: string | number | undefined; } & {}> | undefined; ecs?: Readonly<{ version?: string | undefined; } & {}> | undefined; user?: Readonly<{ id?: string | undefined; name?: string | undefined; } & {}> | undefined; } & {}>>> | undefined" ], "path": "x-pack/plugins/event_log/generated/schemas.ts", "deprecated": false, @@ -1485,7 +1485,7 @@ "label": "IValidatedEvent", "description": [], "signature": [ - "Readonly<{ log?: Readonly<{ logger?: string | undefined; level?: string | undefined; } & {}> | undefined; error?: Readonly<{ id?: string | undefined; type?: string | undefined; message?: string | undefined; code?: string | undefined; stack_trace?: string | undefined; } & {}> | undefined; '@timestamp'?: string | undefined; message?: string | undefined; tags?: string[] | undefined; rule?: Readonly<{ id?: string | undefined; version?: string | undefined; name?: string | undefined; license?: string | undefined; description?: string | undefined; uuid?: string | undefined; category?: string | undefined; reference?: string | undefined; author?: string[] | undefined; ruleset?: string | undefined; } & {}> | undefined; kibana?: Readonly<{ task?: Readonly<{ id?: string | undefined; schedule_delay?: string | number | undefined; scheduled?: string | undefined; } & {}> | undefined; action?: Readonly<{ id?: string | undefined; name?: string | undefined; execution?: Readonly<{ source?: string | undefined; uuid?: string | undefined; gen_ai?: Readonly<{ usage?: Readonly<{ prompt_tokens?: string | number | undefined; completion_tokens?: string | number | undefined; total_tokens?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; version?: string | undefined; alerting?: Readonly<{ outcome?: string | undefined; status?: string | undefined; summary?: Readonly<{ recovered?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; new?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; ongoing?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; instance_id?: string | undefined; action_group_id?: string | undefined; action_subgroup?: string | undefined; } & {}> | undefined; alert?: Readonly<{ rule?: Readonly<{ consumer?: string | undefined; revision?: string | number | undefined; execution?: Readonly<{ uuid?: string | undefined; status?: string | undefined; metrics?: Readonly<{ total_search_duration_ms?: string | number | undefined; total_indexing_duration_ms?: string | number | undefined; number_of_triggered_actions?: string | number | undefined; number_of_generated_actions?: string | number | undefined; alert_counts?: Readonly<{ recovered?: string | number | undefined; active?: string | number | undefined; new?: string | number | undefined; } & {}> | undefined; number_of_delayed_alerts?: string | number | undefined; number_of_searches?: string | number | undefined; es_search_duration_ms?: string | number | undefined; execution_gap_duration_s?: string | number | undefined; rule_type_run_duration_ms?: string | number | undefined; process_alerts_duration_ms?: string | number | undefined; trigger_actions_duration_ms?: string | number | undefined; process_rule_duration_ms?: string | number | undefined; claim_to_start_duration_ms?: string | number | undefined; persist_alerts_duration_ms?: string | number | undefined; prepare_rule_duration_ms?: string | number | undefined; total_run_duration_ms?: string | number | undefined; total_enrichment_duration_ms?: string | number | undefined; } & {}> | undefined; status_order?: string | number | undefined; backfill?: Readonly<{ id?: string | undefined; start?: string | undefined; interval?: string | undefined; } & {}> | undefined; } & {}> | undefined; rule_type_id?: string | undefined; } & {}> | undefined; uuid?: string | undefined; flapping?: boolean | undefined; maintenance_window_ids?: string[] | undefined; } & {}> | undefined; space_ids?: string[] | undefined; server_uuid?: string | undefined; saved_objects?: Readonly<{ id?: string | undefined; type?: string | undefined; namespace?: string | undefined; rel?: string | undefined; type_id?: string | undefined; space_agnostic?: boolean | undefined; } & {}>[] | undefined; } & {}> | undefined; event?: Readonly<{ id?: string | undefined; type?: string[] | undefined; reason?: string | undefined; action?: string | undefined; start?: string | undefined; end?: string | undefined; outcome?: string | undefined; duration?: string | number | undefined; code?: string | undefined; severity?: string | number | undefined; category?: string[] | undefined; timezone?: string | undefined; risk_score?: number | undefined; url?: string | undefined; created?: string | undefined; dataset?: string | undefined; provider?: string | undefined; hash?: string | undefined; ingested?: string | undefined; kind?: string | undefined; module?: string | undefined; original?: string | undefined; reference?: string | undefined; risk_score_norm?: number | undefined; sequence?: string | number | undefined; } & {}> | undefined; ecs?: Readonly<{ version?: string | undefined; } & {}> | undefined; user?: Readonly<{ id?: string | undefined; name?: string | undefined; } & {}> | undefined; } & {}> | undefined" + "Readonly<{ log?: Readonly<{ logger?: string | undefined; level?: string | undefined; } & {}> | undefined; error?: Readonly<{ id?: string | undefined; type?: string | undefined; message?: string | undefined; code?: string | undefined; stack_trace?: string | undefined; } & {}> | undefined; '@timestamp'?: string | undefined; message?: string | undefined; tags?: string[] | undefined; rule?: Readonly<{ id?: string | undefined; version?: string | undefined; name?: string | undefined; license?: string | undefined; description?: string | undefined; uuid?: string | undefined; category?: string | undefined; reference?: string | undefined; author?: string[] | undefined; ruleset?: string | undefined; } & {}> | undefined; kibana?: Readonly<{ task?: Readonly<{ id?: string | undefined; schedule_delay?: string | number | undefined; scheduled?: string | undefined; } & {}> | undefined; action?: Readonly<{ id?: string | undefined; name?: string | undefined; execution?: Readonly<{ source?: string | undefined; uuid?: string | undefined; gen_ai?: Readonly<{ usage?: Readonly<{ prompt_tokens?: string | number | undefined; completion_tokens?: string | number | undefined; total_tokens?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; } & {}> | undefined; version?: string | undefined; alerting?: Readonly<{ outcome?: string | undefined; status?: string | undefined; summary?: Readonly<{ recovered?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; new?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; ongoing?: Readonly<{ count?: string | number | undefined; } & {}> | undefined; } & {}> | undefined; instance_id?: string | undefined; action_group_id?: string | undefined; action_subgroup?: string | undefined; } & {}> | undefined; alert?: Readonly<{ rule?: Readonly<{ consumer?: string | undefined; revision?: string | number | undefined; execution?: Readonly<{ uuid?: string | undefined; status?: string | undefined; metrics?: Readonly<{ total_search_duration_ms?: string | number | undefined; total_indexing_duration_ms?: string | number | undefined; number_of_triggered_actions?: string | number | undefined; number_of_generated_actions?: string | number | undefined; alert_counts?: Readonly<{ recovered?: string | number | undefined; active?: string | number | undefined; new?: string | number | undefined; } & {}> | undefined; number_of_delayed_alerts?: string | number | undefined; number_of_searches?: string | number | undefined; es_search_duration_ms?: string | number | undefined; execution_gap_duration_s?: string | number | undefined; rule_type_run_duration_ms?: string | number | undefined; process_alerts_duration_ms?: string | number | undefined; trigger_actions_duration_ms?: string | number | undefined; process_rule_duration_ms?: string | number | undefined; claim_to_start_duration_ms?: string | number | undefined; persist_alerts_duration_ms?: string | number | undefined; prepare_rule_duration_ms?: string | number | undefined; total_run_duration_ms?: string | number | undefined; total_enrichment_duration_ms?: string | number | undefined; } & {}> | undefined; status_order?: string | number | undefined; backfill?: Readonly<{ id?: string | undefined; start?: string | undefined; interval?: string | undefined; } & {}> | undefined; } & {}> | undefined; rule_type_id?: string | undefined; } & {}> | undefined; flapping?: boolean | undefined; uuid?: string | undefined; maintenance_window_ids?: string[] | undefined; } & {}> | undefined; space_ids?: string[] | undefined; server_uuid?: string | undefined; saved_objects?: Readonly<{ id?: string | undefined; type?: string | undefined; namespace?: string | undefined; rel?: string | undefined; type_id?: string | undefined; space_agnostic?: boolean | undefined; } & {}>[] | undefined; } & {}> | undefined; event?: Readonly<{ id?: string | undefined; type?: string[] | undefined; reason?: string | undefined; action?: string | undefined; start?: string | undefined; end?: string | undefined; outcome?: string | undefined; duration?: string | number | undefined; severity?: string | number | undefined; category?: string[] | undefined; timezone?: string | undefined; risk_score?: number | undefined; code?: string | undefined; url?: string | undefined; created?: string | undefined; dataset?: string | undefined; provider?: string | undefined; hash?: string | undefined; ingested?: string | undefined; kind?: string | undefined; module?: string | undefined; original?: string | undefined; reference?: string | undefined; risk_score_norm?: number | undefined; sequence?: string | number | undefined; } & {}> | undefined; ecs?: Readonly<{ version?: string | undefined; } & {}> | undefined; user?: Readonly<{ id?: string | undefined; name?: string | undefined; } & {}> | undefined; } & {}> | undefined" ], "path": "x-pack/plugins/event_log/generated/schemas.ts", "deprecated": false, diff --git a/api_docs/event_log.mdx b/api_docs/event_log.mdx index d4a29b89c3b41..6e2a6a67b77f2 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-08-21 +date: 2024-08-23 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 7b998a15b76cc..62e028d3ce32d 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-08-21 +date: 2024-08-23 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 215c7f5b19704..27b36de0289a2 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-08-21 +date: 2024-08-23 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 ad7ae24e28359..60ef8d250d787 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-08-21 +date: 2024-08-23 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 453c1b64df9f8..f163478ee0430 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-08-21 +date: 2024-08-23 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 09b4bf207f13c..416b828807c4a 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-08-21 +date: 2024-08-23 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 dd96109aad6f1..a620bc75025bc 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-08-21 +date: 2024-08-23 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 2c6fc2fc39a1a..8e4ef138f270f 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-08-21 +date: 2024-08-23 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 44a75068afe45..48607321d1423 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-08-21 +date: 2024-08-23 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 20064dec4a784..7d938df0aa168 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-08-21 +date: 2024-08-23 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 2b602f705abc1..ddc6d724db4ba 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-08-21 +date: 2024-08-23 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 005b31fe46b4e..ca86e960f26ce 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-08-21 +date: 2024-08-23 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 8699185b89a27..05b1f2714dde7 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-08-21 +date: 2024-08-23 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 51db2671cd1bf..ef7dd3a22f588 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-08-21 +date: 2024-08-23 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 fb7072f3a1c07..5924d2b5a0daa 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-08-21 +date: 2024-08-23 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 a1681dc8edd3a..edc0ef60c9365 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressions'] --- import expressionsObj from './expressions.devdocs.json'; diff --git a/api_docs/features.devdocs.json b/api_docs/features.devdocs.json index e6c5019a037fb..6b01f79e4bb96 100644 --- a/api_docs/features.devdocs.json +++ b/api_docs/features.devdocs.json @@ -2104,12 +2104,12 @@ "path": "x-pack/plugins/spaces/server/usage_collection/spaces_usage_collector.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/app_authorization.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts" }, { "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.ts" + "path": "x-pack/plugins/security/server/authorization/app_authorization.ts" }, { "plugin": "security", @@ -2128,128 +2128,132 @@ "path": "x-pack/plugins/security/server/authorization/app_authorization.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "spaces", + "path": "x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-role-management-model", + "path": "x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-role-management-model", + "path": "x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/server/authorization/privileges/privileges.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "spaces", - "path": "x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" }, { - "plugin": "security", - "path": "x-pack/plugins/security/public/management/roles/__fixtures__/kibana_privileges.ts" + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" + }, + { + "plugin": "@kbn/security-authorization-core", + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.test.ts" } ], "children": [], @@ -2285,6 +2289,10 @@ { "plugin": "security", "path": "x-pack/plugins/security/server/authorization/authorization_service.tsx" + }, + { + "plugin": "@kbn/security-role-management-model", + "path": "x-pack/packages/security/role_management_model/src/__fixtures__/kibana_privileges.ts" } ], "children": [], diff --git a/api_docs/features.mdx b/api_docs/features.mdx index dea40ac9d3420..4b5307ff58419 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-08-21 +date: 2024-08-23 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 c2fe01a1a115d..69fc4a6b3b94d 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-08-21 +date: 2024-08-23 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 ed16ae4ca39b9..8aedc38cc1661 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fieldsMetadata'] --- import fieldsMetadataObj from './fields_metadata.devdocs.json'; diff --git a/api_docs/file_upload.devdocs.json b/api_docs/file_upload.devdocs.json index ec813208b95dd..791269ecab683 100644 --- a/api_docs/file_upload.devdocs.json +++ b/api_docs/file_upload.devdocs.json @@ -981,6 +981,20 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "fileUpload", + "id": "def-common.FindFileStructureResponse.document_type", + "type": "string", + "tags": [], + "label": "document_type", + "description": [], + "signature": [ + "string | undefined" + ], + "path": "x-pack/plugins/file_upload/common/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "fileUpload", "id": "def-common.FindFileStructureResponse.field_stats", @@ -1295,6 +1309,26 @@ "deprecated": false, "trackAdoption": false }, + { + "parentPluginId": "fileUpload", + "id": "def-common.FindFileStructureResponse.ingest_pipeline", + "type": "Object", + "tags": [], + "label": "ingest_pipeline", + "description": [], + "signature": [ + { + "pluginId": "fileUpload", + "scope": "common", + "docId": "kibFileUploadPluginApi", + "section": "def-common.IngestPipeline", + "text": "IngestPipeline" + } + ], + "path": "x-pack/plugins/file_upload/common/types.ts", + "deprecated": false, + "trackAdoption": false + }, { "parentPluginId": "fileUpload", "id": "def-common.FindFileStructureResponse.quote", @@ -1517,6 +1551,34 @@ "path": "x-pack/plugins/file_upload/common/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "fileUpload", + "id": "def-common.IngestPipeline.isManaged", + "type": "CompoundType", + "tags": [], + "label": "isManaged", + "description": [], + "signature": [ + "boolean | undefined" + ], + "path": "x-pack/plugins/file_upload/common/types.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "fileUpload", + "id": "def-common.IngestPipeline.name", + "type": "string", + "tags": [], + "label": "name", + "description": [], + "signature": [ + "string | undefined" + ], + "path": "x-pack/plugins/file_upload/common/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/file_upload.mdx b/api_docs/file_upload.mdx index 2f5e4d5bd14b3..752fcb763aebe 100644 --- a/api_docs/file_upload.mdx +++ b/api_docs/file_upload.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/fileUpload title: "fileUpload" image: https://source.unsplash.com/400x175/?github description: API docs for the fileUpload plugin -date: 2024-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fileUpload'] --- import fileUploadObj from './file_upload.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-gis](https://github.com/orgs/elastic/teams/kibana-gis) | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 84 | 0 | 84 | 8 | +| 88 | 0 | 88 | 8 | ## Client diff --git a/api_docs/files.mdx b/api_docs/files.mdx index b5d3d53ad26cb..32286b595947e 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-08-21 +date: 2024-08-23 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 f85afbade513d..c3f3873d3cbda 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-08-21 +date: 2024-08-23 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 a5c02e8584500..511e4311c4726 100644 --- a/api_docs/fleet.devdocs.json +++ b/api_docs/fleet.devdocs.json @@ -27941,7 +27941,7 @@ "label": "RegistrySearchResult", "description": [], "signature": [ - "{ type?: \"input\" | \"integration\" | undefined; version: string; name: string; title: string; description: string; path: string; internal?: boolean | undefined; download: string; icons?: (", + "{ type?: \"input\" | \"integration\" | undefined; version: string; name: string; title: string; description: string; internal?: boolean | undefined; path: string; download: string; icons?: (", { "pluginId": "fleet", "scope": "common", diff --git a/api_docs/fleet.mdx b/api_docs/fleet.mdx index c6831804aad34..b15c6ec799252 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-08-21 +date: 2024-08-23 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 5eae4c4968561..ea98ae71624af 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-08-21 +date: 2024-08-23 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 2969d28bcf73d..20c3582d29192 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-08-21 +date: 2024-08-23 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 2bfa134da2bd4..57ce7c47e0e20 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-08-21 +date: 2024-08-23 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 d1d16cb016713..6a7a905680311 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-08-21 +date: 2024-08-23 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 02a3478e74755..43a7f5b6410f4 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-08-21 +date: 2024-08-23 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 f0b2487774725..062bb86a24a7f 100644 --- a/api_docs/index_management.devdocs.json +++ b/api_docs/index_management.devdocs.json @@ -2405,6 +2405,145 @@ ], "initialIsOpen": false }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule", + "type": "Interface", + "tags": [], + "label": "IndexModule", + "description": [], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.number_of_shards", + "type": "CompoundType", + "tags": [], + "label": "number_of_shards", + "description": [], + "signature": [ + "string | number" + ], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.codec", + "type": "string", + "tags": [], + "label": "codec", + "description": [], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.routing_partition_size", + "type": "number", + "tags": [], + "label": "routing_partition_size", + "description": [], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.refresh_interval", + "type": "string", + "tags": [], + "label": "refresh_interval", + "description": [], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.load_fixed_bitset_filters_eagerly", + "type": "boolean", + "tags": [], + "label": "load_fixed_bitset_filters_eagerly", + "description": [], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.shard", + "type": "Object", + "tags": [], + "label": "shard", + "description": [], + "signature": [ + "{ check_on_startup: boolean | \"checksum\"; }" + ], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.number_of_replicas", + "type": "number", + "tags": [], + "label": "number_of_replicas", + "description": [], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.auto_expand_replicas", + "type": "CompoundType", + "tags": [], + "label": "auto_expand_replicas", + "description": [], + "signature": [ + "string | false" + ], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.lifecycle", + "type": "Object", + "tags": [], + "label": "lifecycle", + "description": [], + "signature": [ + "LifecycleModule" + ], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "indexManagement", + "id": "def-common.IndexModule.routing", + "type": "Object", + "tags": [], + "label": "routing", + "description": [], + "signature": [ + "{ allocation: { enable: \"none\" | \"all\" | \"primaries\" | \"new_primaries\"; }; rebalance: { enable: \"none\" | \"all\" | \"primaries\" | \"replicas\"; }; }" + ], + "path": "x-pack/plugins/index_management/common/types/indices.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, { "parentPluginId": "indexManagement", "id": "def-common.IndexSettings", @@ -2424,7 +2563,15 @@ "label": "index", "description": [], "signature": [ - "Partial | undefined" + "Partial<", + { + "pluginId": "indexManagement", + "scope": "common", + "docId": "kibIndexManagementPluginApi", + "section": "def-common.IndexModule", + "text": "IndexModule" + }, + "> | undefined" ], "path": "x-pack/plugins/index_management/common/types/indices.ts", "deprecated": false, diff --git a/api_docs/index_management.mdx b/api_docs/index_management.mdx index f4b6be3f859b5..0f87c16a2a691 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-08-21 +date: 2024-08-23 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 | |-------------------|-----------|------------------------|-----------------| -| 227 | 0 | 222 | 1 | +| 238 | 0 | 233 | 1 | ## Client diff --git a/api_docs/inference.mdx b/api_docs/inference.mdx index 2e375f9c72ac9..fbeefebad5d87 100644 --- a/api_docs/inference.mdx +++ b/api_docs/inference.mdx @@ -8,14 +8,14 @@ slug: /kibana-dev-docs/api/inference title: "inference" image: https://source.unsplash.com/400x175/?github description: API docs for the inference plugin -date: 2024-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'inference'] --- import inferenceObj from './inference.devdocs.json'; -Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) for questions regarding this plugin. +Contact [@elastic/appex-ai-infra](https://github.com/orgs/elastic/teams/appex-ai-infra) for questions regarding this plugin. **Code health stats** diff --git a/api_docs/infra.mdx b/api_docs/infra.mdx index aad7d9b1bf177..c734a16b4f1b9 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-08-21 +date: 2024-08-23 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 648e5dc62da5b..1f7d558b514de 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-08-21 +date: 2024-08-23 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 26a75328b0e35..d97ac52c0ac44 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-08-21 +date: 2024-08-23 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 9b7d0934031ff..ab607c4fa22fe 100644 --- a/api_docs/integration_assistant.devdocs.json +++ b/api_docs/integration_assistant.devdocs.json @@ -188,7 +188,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; logo?: string | undefined; }; }" + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }" ], "path": "x-pack/plugins/integration_assistant/common/api/build_integration/build_integration.ts", "deprecated": false, @@ -353,7 +353,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }" + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }" ], "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", "deprecated": false, @@ -497,7 +497,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; logo?: string | undefined; }" + "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }" ], "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", "deprecated": false, @@ -667,6 +667,23 @@ "deprecated": false, "trackAdoption": false, "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.SamplesFormat", + "type": "Type", + "tags": [], + "label": "SamplesFormat", + "description": [ + "\nFormat of the provided log samples." + ], + "signature": [ + "{ name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false } ], "objects": [ @@ -742,7 +759,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; }, \"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: ", + "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"json\" | \"ndjson\"; 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", @@ -758,7 +775,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { 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: \"json\" | \"ndjson\"; 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", @@ -774,7 +791,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>, \"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.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; 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", @@ -790,7 +807,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; 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: \"json\" | \"ndjson\"; 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", @@ -806,7 +823,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; 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: ", + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; 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", @@ -822,7 +839,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; 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; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; 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: ", { "pluginId": "integrationAssistant", "scope": "common", @@ -838,7 +855,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; logo?: string | undefined; }; }>" + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }; }>" ], "path": "x-pack/plugins/integration_assistant/common/api/build_integration/build_integration.ts", "deprecated": false, @@ -1297,7 +1314,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; }, \"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: ", + "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"json\" | \"ndjson\"; 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", @@ -1313,7 +1330,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { 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: \"json\" | \"ndjson\"; 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", @@ -1329,7 +1346,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>" + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }>" ], "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", "deprecated": false, @@ -1627,7 +1644,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; }, \"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: ", + "[] | undefined; }>; docs: Zod.ZodArray, Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">>, \"many\">; samplesFormat: Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"json\" | \"ndjson\"; 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", @@ -1643,7 +1660,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }, { 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: \"json\" | \"ndjson\"; 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", @@ -1659,7 +1676,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }>, \"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.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; 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", @@ -1675,7 +1692,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectOutputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; 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: \"json\" | \"ndjson\"; 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", @@ -1691,7 +1708,7 @@ "section": "def-common.ESProcessorItem", "text": "ESProcessorItem" }, - "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; }[]; logo?: string | undefined; }>" + "[] | undefined; }; docs: Zod.objectInputType<{}, Zod.ZodTypeAny, \"passthrough\">[]; samplesFormat: { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }; }[]; logo?: string | undefined; }>" ], "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", "deprecated": false, @@ -2030,6 +2047,21 @@ "deprecated": false, "trackAdoption": false, "initialIsOpen": false + }, + { + "parentPluginId": "integrationAssistant", + "id": "def-common.SamplesFormat", + "type": "Object", + "tags": [], + "label": "SamplesFormat", + "description": [], + "signature": [ + "Zod.ZodObject<{ name: Zod.ZodEnum<[\"ndjson\", \"json\"]>; multiline: Zod.ZodOptional; json_path: Zod.ZodOptional>; }, \"strip\", Zod.ZodTypeAny, { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }, { name: \"json\" | \"ndjson\"; multiline?: boolean | undefined; json_path?: string[] | undefined; }>" + ], + "path": "x-pack/plugins/integration_assistant/common/api/model/common_attributes.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false } ] } diff --git a/api_docs/integration_assistant.mdx b/api_docs/integration_assistant.mdx index 2e46491c5c191..d23dec3a4e026 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-08-21 +date: 2024-08-23 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 | |-------------------|-----------|------------------------|-----------------| -| 47 | 0 | 40 | 3 | +| 49 | 0 | 41 | 3 | ## Client diff --git a/api_docs/interactive_setup.mdx b/api_docs/interactive_setup.mdx index a513d20a6ccaa..d7a68d8b3622b 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'interactiveSetup'] --- import interactiveSetupObj from './interactive_setup.devdocs.json'; diff --git a/api_docs/investigate.devdocs.json b/api_docs/investigate.devdocs.json index d90742c490ead..8febc4c6ac5f4 100644 --- a/api_docs/investigate.devdocs.json +++ b/api_docs/investigate.devdocs.json @@ -494,10 +494,10 @@ }, { "parentPluginId": "investigate", - "id": "def-public.InvestigateWidget.created", + "id": "def-public.InvestigateWidget.createdAt", "type": "number", "tags": [], - "label": "created", + "label": "createdAt", "description": [], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, @@ -505,10 +505,10 @@ }, { "parentPluginId": "investigate", - "id": "def-public.InvestigateWidget.last_updated", - "type": "number", + "id": "def-public.InvestigateWidget.createdBy", + "type": "string", "tags": [], - "label": "last_updated", + "label": "createdBy", "description": [], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, @@ -516,10 +516,10 @@ }, { "parentPluginId": "investigate", - "id": "def-public.InvestigateWidget.type", + "id": "def-public.InvestigateWidget.title", "type": "string", "tags": [], - "label": "type", + "label": "title", "description": [], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, @@ -527,20 +527,11 @@ }, { "parentPluginId": "investigate", - "id": "def-public.InvestigateWidget.user", - "type": "Object", + "id": "def-public.InvestigateWidget.type", + "type": "string", "tags": [], - "label": "user", + "label": "type", "description": [], - "signature": [ - { - "pluginId": "@kbn/core-security-common", - "scope": "common", - "docId": "kibKbnCoreSecurityCommonPluginApi", - "section": "def-common.AuthenticatedUser", - "text": "AuthenticatedUser" - } - ], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, "trackAdoption": false @@ -573,17 +564,6 @@ "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, "trackAdoption": false - }, - { - "parentPluginId": "investigate", - "id": "def-public.InvestigateWidget.title", - "type": "string", - "tags": [], - "label": "title", - "description": [], - "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", - "deprecated": false, - "trackAdoption": false } ], "initialIsOpen": false @@ -886,7 +866,7 @@ "section": "def-common.AuthenticatedUser", "text": "AuthenticatedUser" }, - "; investigationData?: { id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; } | undefined; }) => ", + "; investigationData?: { id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; } | undefined; }) => ", "UseInvestigationApi" ], "path": "x-pack/plugins/observability_solution/investigate/public/types.ts", @@ -932,7 +912,7 @@ "label": "investigationData", "description": [], "signature": [ - "{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; } | undefined" + "{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; } | undefined" ], "path": "x-pack/plugins/observability_solution/investigate/public/types.ts", "deprecated": false, @@ -1263,10 +1243,10 @@ }, { "parentPluginId": "investigate", - "id": "def-common.InvestigateWidget.created", + "id": "def-common.InvestigateWidget.createdAt", "type": "number", "tags": [], - "label": "created", + "label": "createdAt", "description": [], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, @@ -1274,10 +1254,10 @@ }, { "parentPluginId": "investigate", - "id": "def-common.InvestigateWidget.last_updated", - "type": "number", + "id": "def-common.InvestigateWidget.createdBy", + "type": "string", "tags": [], - "label": "last_updated", + "label": "createdBy", "description": [], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, @@ -1285,10 +1265,10 @@ }, { "parentPluginId": "investigate", - "id": "def-common.InvestigateWidget.type", + "id": "def-common.InvestigateWidget.title", "type": "string", "tags": [], - "label": "type", + "label": "title", "description": [], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, @@ -1296,20 +1276,11 @@ }, { "parentPluginId": "investigate", - "id": "def-common.InvestigateWidget.user", - "type": "Object", + "id": "def-common.InvestigateWidget.type", + "type": "string", "tags": [], - "label": "user", + "label": "type", "description": [], - "signature": [ - { - "pluginId": "@kbn/core-security-common", - "scope": "common", - "docId": "kibKbnCoreSecurityCommonPluginApi", - "section": "def-common.AuthenticatedUser", - "text": "AuthenticatedUser" - } - ], "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, "trackAdoption": false @@ -1342,17 +1313,6 @@ "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", "deprecated": false, "trackAdoption": false - }, - { - "parentPluginId": "investigate", - "id": "def-common.InvestigateWidget.title", - "type": "string", - "tags": [], - "label": "title", - "description": [], - "path": "x-pack/plugins/observability_solution/investigate/common/types.ts", - "deprecated": false, - "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/investigate.mdx b/api_docs/investigate.mdx index 76eec0732a204..cda1777957a85 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'investigate'] --- import investigateObj from './investigate.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 | |-------------------|-----------|------------------------|-----------------| -| 94 | 0 | 94 | 5 | +| 92 | 0 | 92 | 5 | ## Client diff --git a/api_docs/investigate_app.devdocs.json b/api_docs/investigate_app.devdocs.json index 63620cf5df62f..cb7fd681facbe 100644 --- a/api_docs/investigate_app.devdocs.json +++ b/api_docs/investigate_app.devdocs.json @@ -50,33 +50,77 @@ "label": "InvestigateAppServerRouteRepository", "description": [], "signature": [ - "{ \"DELETE /api/observability/investigations/{id}/notes/{noteId} 2023-10-31\": { endpoint: \"DELETE /api/observability/investigations/{id}/notes/{noteId} 2023-10-31\"; params?: ", + "{ \"GET /api/observability/investigations/{investigationId}/items 2023-10-31\": { endpoint: \"GET /api/observability/investigations/{investigationId}/items 2023-10-31\"; params?: ", "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", + "StringC", + "; }>; }> | undefined; handler: ({}: ", + "InvestigateAppRouteHandlerResources", + " & { params: { path: { investigationId: string; }; }; }) => Promise<({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]>; } & ", + "InvestigateAppRouteCreateOptions", + "; \"DELETE /api/observability/investigations/{investigationId}/items/{itemId} 2023-10-31\": { endpoint: \"DELETE /api/observability/investigations/{investigationId}/items/{itemId} 2023-10-31\"; params?: ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ investigationId: ", + "StringC", + "; itemId: ", + "StringC", + "; }>; }> | undefined; handler: ({}: ", + "InvestigateAppRouteHandlerResources", + " & { params: { path: { investigationId: string; itemId: string; }; }; }) => Promise; } & ", + "InvestigateAppRouteCreateOptions", + "; \"POST /api/observability/investigations/{investigationId}/items 2023-10-31\": { endpoint: \"POST /api/observability/investigations/{investigationId}/items 2023-10-31\"; params?: ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ investigationId: ", + "StringC", + "; }>; body: ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>; }> | undefined; handler: ({}: ", + "InvestigateAppRouteHandlerResources", + " & { params: { path: { investigationId: string; }; body: { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; }; }; }) => Promise<{ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; }>; } & ", + "InvestigateAppRouteCreateOptions", + "; \"DELETE /api/observability/investigations/{investigationId}/notes/{noteId} 2023-10-31\": { endpoint: \"DELETE /api/observability/investigations/{investigationId}/notes/{noteId} 2023-10-31\"; params?: ", + "TypeC", + "<{ path: ", + "TypeC", + "<{ investigationId: ", "StringC", "; noteId: ", "StringC", "; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params: { path: { id: string; noteId: string; }; }; }) => Promise; } & ", + " & { params: { path: { investigationId: string; noteId: string; }; }; }) => Promise; } & ", "InvestigateAppRouteCreateOptions", - "; \"GET /api/observability/investigations/{id}/notes 2023-10-31\": { endpoint: \"GET /api/observability/investigations/{id}/notes 2023-10-31\"; params?: ", + "; \"GET /api/observability/investigations/{investigationId}/notes 2023-10-31\": { endpoint: \"GET /api/observability/investigations/{investigationId}/notes 2023-10-31\"; params?: ", "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params: { path: { id: string; }; }; }) => Promise<{ id: string; content: string; createdAt: number; createdBy: string; }[]>; } & ", + " & { params: { path: { investigationId: string; }; }; }) => Promise<{ id: string; content: string; createdAt: number; createdBy: string; }[]>; } & ", "InvestigateAppRouteCreateOptions", - "; \"POST /api/observability/investigations/{id}/notes 2023-10-31\": { endpoint: \"POST /api/observability/investigations/{id}/notes 2023-10-31\"; params?: ", + "; \"POST /api/observability/investigations/{investigationId}/notes 2023-10-31\": { endpoint: \"POST /api/observability/investigations/{investigationId}/notes 2023-10-31\"; params?: ", "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; body: ", "TypeC", @@ -84,27 +128,27 @@ "StringC", "; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params: { path: { id: string; }; body: { content: string; }; }; }) => Promise<{ id: string; content: string; createdAt: number; createdBy: string; }>; } & ", + " & { params: { path: { investigationId: string; }; body: { content: string; }; }; }) => Promise<{ id: string; content: string; createdAt: number; createdBy: string; }>; } & ", "InvestigateAppRouteCreateOptions", - "; \"DELETE /api/observability/investigations/{id} 2023-10-31\": { endpoint: \"DELETE /api/observability/investigations/{id} 2023-10-31\"; params?: ", + "; \"DELETE /api/observability/investigations/{investigationId} 2023-10-31\": { endpoint: \"DELETE /api/observability/investigations/{investigationId} 2023-10-31\"; params?: ", "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params: { path: { id: string; }; }; }) => Promise; } & ", + " & { params: { path: { investigationId: string; }; }; }) => Promise; } & ", "InvestigateAppRouteCreateOptions", - "; \"GET /api/observability/investigations/{id} 2023-10-31\": { endpoint: \"GET /api/observability/investigations/{id} 2023-10-31\"; params?: ", + "; \"GET /api/observability/investigations/{investigationId} 2023-10-31\": { endpoint: \"GET /api/observability/investigations/{investigationId} 2023-10-31\"; params?: ", "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params: { path: { id: string; }; }; }) => Promise<{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; }>; } & ", + " & { params: { path: { investigationId: string; }; }; }) => Promise<{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; }>; } & ", "InvestigateAppRouteCreateOptions", "; \"GET /api/observability/investigations 2023-10-31\": { endpoint: \"GET /api/observability/investigations 2023-10-31\"; params?: ", "PartialC", @@ -118,7 +162,7 @@ "StringC", "; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params?: { query?: { alertId?: string | undefined; page?: string | undefined; perPage?: string | undefined; } | undefined; } | undefined; }) => Promise<{ page: number; perPage: number; total: number; results: { id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; }[]; }>; } & ", + " & { params?: { query?: { alertId?: string | undefined; page?: string | undefined; perPage?: string | undefined; } | undefined; } | undefined; }) => Promise<{ page: number; perPage: number; total: number; results: { id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; }[]; }>; } & ", "InvestigateAppRouteCreateOptions", "; \"POST /api/observability/investigations 2023-10-31\": { endpoint: \"POST /api/observability/investigations 2023-10-31\"; params?: ", "TypeC", @@ -150,7 +194,7 @@ "LiteralC", "<\"blank\">; }>]>; }>; }> | undefined; handler: ({}: ", "InvestigateAppRouteHandlerResources", - " & { params: { body: { id: string; title: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; }; }; }) => Promise<{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; }>; } & ", + " & { params: { body: { id: string; title: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; }; }; }) => Promise<{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; }>; } & ", "InvestigateAppRouteCreateOptions", "; }" ], diff --git a/api_docs/investigate_app.mdx b/api_docs/investigate_app.mdx index ffb2fb1efce3e..ffe76069ab27a 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-08-21 +date: 2024-08-23 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 e5bab6264e2f1..6744b0c19e6ec 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-08-21 +date: 2024-08-23 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 e32a3ef4c1b34..792436c383657 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-08-21 +date: 2024-08-23 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 1afabe4518e3c..b1e831ff3bd6b 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-08-21 +date: 2024-08-23 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 752a6de3d16bc..5bd1860350682 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-08-21 +date: 2024-08-23 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 86ec4a9afed62..c88a385f76601 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-08-21 +date: 2024-08-23 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 0e21c7c592d08..c77a9dd8d4a6e 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-08-21 +date: 2024-08-23 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 bb3f894f8fbf5..b85adabcc42b6 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_alerting_state_types.devdocs.json index 4beda471f14be..2afc1a566a537 100644 --- a/api_docs/kbn_alerting_state_types.devdocs.json +++ b/api_docs/kbn_alerting_state_types.devdocs.json @@ -124,7 +124,7 @@ "label": "LatestAlertInstanceMetaSchema", "description": [], "signature": [ - "{ readonly uuid?: string | undefined; readonly lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; readonly flappingHistory?: boolean[] | undefined; readonly flapping?: boolean | undefined; readonly maintenanceWindowIds?: string[] | undefined; readonly pendingRecoveredCount?: number | undefined; readonly activeCount?: number | undefined; }" + "{ readonly flapping?: boolean | undefined; readonly uuid?: string | undefined; readonly lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; readonly flappingHistory?: boolean[] | undefined; readonly maintenanceWindowIds?: string[] | undefined; readonly pendingRecoveredCount?: number | undefined; readonly activeCount?: number | undefined; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -169,7 +169,7 @@ "label": "LatestRawAlertInstanceSchema", "description": [], "signature": [ - "{ readonly meta?: Readonly<{ uuid?: string | undefined; lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; readonly state?: Record | undefined; }" + "{ readonly meta?: Readonly<{ flapping?: boolean | undefined; uuid?: string | undefined; lastScheduledActions?: Readonly<{ actions?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; readonly state?: Record | undefined; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -184,7 +184,7 @@ "label": "LatestTaskStateSchema", "description": [], "signature": [ - "{ readonly alertTypeState?: Record | undefined; readonly alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly previousStartedAt?: string | null | undefined; readonly summaryActions?: Record> | undefined; }" + "{ readonly alertTypeState?: Record | undefined; readonly alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly previousStartedAt?: string | null | undefined; readonly summaryActions?: Record> | undefined; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -214,7 +214,7 @@ "label": "MutableLatestAlertInstanceMetaSchema", "description": [], "signature": [ - "{ uuid?: Mutable; lastScheduledActions?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined>; flappingHistory?: Mutable; flapping?: Mutable; maintenanceWindowIds?: Mutable; pendingRecoveredCount?: Mutable; activeCount?: Mutable; }" + "{ flapping?: Mutable; uuid?: Mutable; lastScheduledActions?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined>; flappingHistory?: Mutable; maintenanceWindowIds?: Mutable; pendingRecoveredCount?: Mutable; activeCount?: Mutable; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -229,7 +229,7 @@ "label": "MutableLatestTaskStateSchema", "description": [], "signature": [ - "{ alertTypeState?: Mutable | undefined>; alertInstances?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; alertRecoveredInstances?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; previousStartedAt?: Mutable; summaryActions?: Mutable> | undefined>; }" + "{ alertTypeState?: Mutable | undefined>; alertInstances?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; alertRecoveredInstances?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; previousStartedAt?: Mutable; summaryActions?: Mutable> | undefined>; }" ], "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, @@ -404,7 +404,7 @@ "label": "1", "description": [], "signature": [ - "{ up: (state: Record) => Readonly<{ alertTypeState?: Record | undefined; alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; previousStartedAt?: string | null | undefined; summaryActions?: Record> | undefined; } & {}>; schema: ", + "{ up: (state: Record) => Readonly<{ alertTypeState?: Record | undefined; alertInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; alertRecoveredInstances?: Record> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; previousStartedAt?: string | null | undefined; summaryActions?: Record> | undefined; } & {}>; schema: ", { "pluginId": "@kbn/config-schema", "scope": "common", @@ -428,7 +428,7 @@ "section": "def-common.Type", "text": "Type" }, - "> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; alertRecoveredInstances: ", + "> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; alertRecoveredInstances: ", { "pluginId": "@kbn/config-schema", "scope": "common", @@ -436,7 +436,7 @@ "section": "def-common.Type", "text": "Type" }, - "> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; previousStartedAt: ", + "> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined; flappingHistory?: boolean[] | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; activeCount?: number | undefined; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; previousStartedAt: ", { "pluginId": "@kbn/config-schema", "scope": "common", diff --git a/api_docs/kbn_alerting_state_types.mdx b/api_docs/kbn_alerting_state_types.mdx index f4d86a24a9b2b..8769abaf03a2d 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_alerting_types.devdocs.json index 51c85cf8a437e..7c10c27a4d38a 100644 --- a/api_docs/kbn_alerting_types.devdocs.json +++ b/api_docs/kbn_alerting_types.devdocs.json @@ -1577,6 +1577,20 @@ "path": "packages/kbn-alerting-types/rule_types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "@kbn/alerting-types", + "id": "def-common.Rule.flapping", + "type": "Object", + "tags": [], + "label": "flapping", + "description": [], + "signature": [ + "{ lookBackWindow: number; statusChangeThreshold: number; } | undefined" + ], + "path": "packages/kbn-alerting-types/rule_types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -3206,6 +3220,66 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/alerting-types", + "id": "def-common.MAX_LOOK_BACK_WINDOW", + "type": "number", + "tags": [], + "label": "MAX_LOOK_BACK_WINDOW", + "description": [], + "signature": [ + "20" + ], + "path": "packages/kbn-alerting-types/rule_flapping.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/alerting-types", + "id": "def-common.MAX_STATUS_CHANGE_THRESHOLD", + "type": "number", + "tags": [], + "label": "MAX_STATUS_CHANGE_THRESHOLD", + "description": [], + "signature": [ + "20" + ], + "path": "packages/kbn-alerting-types/rule_flapping.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/alerting-types", + "id": "def-common.MIN_LOOK_BACK_WINDOW", + "type": "number", + "tags": [], + "label": "MIN_LOOK_BACK_WINDOW", + "description": [], + "signature": [ + "2" + ], + "path": "packages/kbn-alerting-types/rule_flapping.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/alerting-types", + "id": "def-common.MIN_STATUS_CHANGE_THRESHOLD", + "type": "number", + "tags": [], + "label": "MIN_STATUS_CHANGE_THRESHOLD", + "description": [], + "signature": [ + "2" + ], + "path": "packages/kbn-alerting-types/rule_flapping.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/alerting-types", "id": "def-common.RecoveredActionGroupId", diff --git a/api_docs/kbn_alerting_types.mdx b/api_docs/kbn_alerting_types.mdx index f3a79aa1eb816..8f88ec67b7798 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerting-types'] --- import kbnAlertingTypesObj from './kbn_alerting_types.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-o | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 217 | 0 | 214 | 0 | +| 222 | 0 | 219 | 0 | ## Common diff --git a/api_docs/kbn_alerts_as_data_utils.mdx b/api_docs/kbn_alerts_as_data_utils.mdx index 1c8ab33c7b736..dd541ce226ed0 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-08-21 +date: 2024-08-23 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 6efb3ff5712df..c5490d3682942 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-08-21 +date: 2024-08-23 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 e9204e1654b32..c4423422e2a72 100644 --- a/api_docs/kbn_alerts_ui_shared.devdocs.json +++ b/api_docs/kbn_alerts_ui_shared.devdocs.json @@ -4129,7 +4129,7 @@ "label": "setRuleProperty", "description": [], "signature": [ - "(key: Prop, value: ", + "(key: Prop, value: ", { "pluginId": "@kbn/alerts-ui-shared", "scope": "public", diff --git a/api_docs/kbn_alerts_ui_shared.mdx b/api_docs/kbn_alerts_ui_shared.mdx index 6c365852ff386..e00c36ade6135 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-08-21 +date: 2024-08-23 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 2971dba0c2aea..55a5c172250b2 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-08-21 +date: 2024-08-23 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 179cdf884e74e..0a415d63b6f0c 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-08-21 +date: 2024-08-23 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 d383945e86abc..346033b477f71 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-08-21 +date: 2024-08-23 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 14c67eae18f13..1ef36c6910e86 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-08-21 +date: 2024-08-23 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 be49ea5c8567e..3a2224caae80c 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-08-21 +date: 2024-08-23 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 49e92a7193368..48e2c279076e0 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-08-21 +date: 2024-08-23 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 e2a5dd2a7768c..891ed29023def 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-08-21 +date: 2024-08-23 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 96ec9934a2671..d071411e54dac 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-08-21 +date: 2024-08-23 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 e92298be9e02f..806a62aec16ea 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-08-21 +date: 2024-08-23 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 42d4423f31e11..862b74b84207f 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-08-21 +date: 2024-08-23 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 ef5c43fde67da..68eeea1ed2d90 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-08-21 +date: 2024-08-23 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 bc022efb07c54..eb71eca84f945 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-08-21 +date: 2024-08-23 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 bd585c19a450c..611c10b21dc3f 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-08-21 +date: 2024-08-23 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 e5ac1ab610a7d..6a4bb36b0e16c 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cases-components'] --- import kbnCasesComponentsObj from './kbn_cases_components.devdocs.json'; diff --git a/api_docs/kbn_cell_actions.mdx b/api_docs/kbn_cell_actions.mdx index 3bd8edd4076f7..9254639429185 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-08-21 +date: 2024-08-23 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 98b3f41e32634..3248b3ca65504 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-08-21 +date: 2024-08-23 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 a019113255def..d1f22d1f802a2 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-08-21 +date: 2024-08-23 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 702e73d1f7f3e..ae2ab24e99813 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-08-21 +date: 2024-08-23 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 d2a08b074a57e..b3bd5f606b7c9 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-08-21 +date: 2024-08-23 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 c0c916aea79a5..b0e274b7ba05f 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-08-21 +date: 2024-08-23 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 a6a8ada3f8197..7b905dc352438 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cli-dev-mode'] --- import kbnCliDevModeObj from './kbn_cli_dev_mode.devdocs.json'; diff --git a/api_docs/kbn_code_editor.mdx b/api_docs/kbn_code_editor.mdx index 5a2bd9378a096..b9ac0505c46a4 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-08-21 +date: 2024-08-23 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 96fac709b5963..e7bee5a37cd70 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-08-21 +date: 2024-08-23 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 bab5469571d1d..70d3aae06b51a 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-08-21 +date: 2024-08-23 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 cb3b9a4f3eb3b..e9c0198dac35d 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-08-21 +date: 2024-08-23 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 f2ec579a65cd5..b56a116bfde1d 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-08-21 +date: 2024-08-23 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 9302a83190120..a0784c14d8142 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/config-mocks'] --- import kbnConfigMocksObj from './kbn_config_mocks.devdocs.json'; diff --git a/api_docs/kbn_config_schema.devdocs.json b/api_docs/kbn_config_schema.devdocs.json index 409941bbe1c88..27e04a098acd6 100644 --- a/api_docs/kbn_config_schema.devdocs.json +++ b/api_docs/kbn_config_schema.devdocs.json @@ -4670,7 +4670,113 @@ "section": "def-common.ObjectType", "text": "ObjectType" }, - "

; oneOf: { (types: [", + "

; oneOf: { (types: [", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "], options?: ", + "UnionTypeOptions", + " | undefined): ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; (types: [", { "pluginId": "@kbn/config-schema", "scope": "common", @@ -9076,7 +9182,113 @@ "label": "oneOf", "description": [], "signature": [ - "{ (types: [", + "{ (types: [", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + ", ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "], options?: ", + "UnionTypeOptions", + " | undefined): ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; (types: [", { "pluginId": "@kbn/config-schema", "scope": "common", diff --git a/api_docs/kbn_config_schema.mdx b/api_docs/kbn_config_schema.mdx index b54e5ae4754fa..71adcb19d2c74 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_content_management_content_editor.devdocs.json index 5c5c0f8208433..fc863182b74d3 100644 --- a/api_docs/kbn_content_management_content_editor.devdocs.json +++ b/api_docs/kbn_content_management_content_editor.devdocs.json @@ -170,7 +170,7 @@ "Item", "; isReadonly?: boolean | undefined; readonlyReason?: string | undefined; entityName: string; customValidators?: ", "CustomValidators", - " | undefined; showActivityView?: boolean | undefined; }" + " | undefined; appendRows?: React.ReactNode; }" ], "path": "packages/content-management/content_editor/src/open_content_editor.tsx", "deprecated": false, diff --git a/api_docs/kbn_content_management_content_editor.mdx b/api_docs/kbn_content_management_content_editor.mdx index af19ec1ca1a51..486a91ed86ff3 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_content_management_content_insights_public.devdocs.json new file mode 100644 index 0000000000000..0e6c72081bd1b --- /dev/null +++ b/api_docs/kbn_content_management_content_insights_public.devdocs.json @@ -0,0 +1,619 @@ +{ + "id": "@kbn/content-management-content-insights-public", + "client": { + "classes": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient", + "type": "Class", + "tags": [], + "label": "ContentInsightsClient", + "description": [ + "\nClient for the Content Management Insights service." + ], + "signature": [ + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ContentInsightsClient", + "text": "ContentInsightsClient" + }, + " implements ", + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ContentInsightsClientPublic", + "text": "ContentInsightsClientPublic" + } + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "deps", + "description": [], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.Unnamed.$1.http", + "type": "Object", + "tags": [], + "label": "http", + "description": [], + "signature": [ + { + "pluginId": "@kbn/core-http-browser", + "scope": "public", + "docId": "kibKbnCoreHttpBrowserPluginApi", + "section": "def-public.HttpSetup", + "text": "HttpSetup" + } + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false + } + ] + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.Unnamed.$2", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.Unnamed.$2.domainId", + "type": "string", + "tags": [], + "label": "domainId", + "description": [], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.track", + "type": "Function", + "tags": [], + "label": "track", + "description": [], + "signature": [ + "(id: string, eventType: \"viewed\") => void" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.track.$1", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.track.$2", + "type": "string", + "tags": [], + "label": "eventType", + "description": [], + "signature": [ + "\"viewed\"" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.getStats", + "type": "Function", + "tags": [], + "label": "getStats", + "description": [], + "signature": [ + "(id: string, eventType: \"viewed\") => Promise<", + { + "pluginId": "@kbn/content-management-content-insights-server", + "scope": "server", + "docId": "kibKbnContentManagementContentInsightsServerPluginApi", + "section": "def-server.ContentInsightsStats", + "text": "ContentInsightsStats" + }, + ">" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.getStats.$1", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClient.getStats.$2", + "type": "string", + "tags": [], + "label": "eventType", + "description": [], + "signature": [ + "\"viewed\"" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "functions": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ActivityView", + "type": "Function", + "tags": [], + "label": "ActivityView", + "description": [], + "signature": [ + "({ item }: ", + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ActivityViewProps", + "text": "ActivityViewProps" + }, + ") => JSX.Element" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ActivityView.$1", + "type": "Object", + "tags": [], + "label": "{ item }", + "description": [], + "signature": [ + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ActivityViewProps", + "text": "ActivityViewProps" + } + ], + "path": "packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsProvider", + "type": "Function", + "tags": [], + "label": "ContentInsightsProvider", + "description": [ + "\nAbstract external service Provider." + ], + "signature": [ + "({ children, ...services }: React.PropsWithChildren>>) => JSX.Element" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/services.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsProvider.$1", + "type": "CompoundType", + "tags": [], + "label": "{\n children,\n ...services\n}", + "description": [], + "signature": [ + "React.PropsWithChildren>>" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/services.tsx", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.useServices", + "type": "Function", + "tags": [], + "label": "useServices", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ContentInsightsServices", + "text": "ContentInsightsServices" + }, + " | null" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/services.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ViewsStats", + "type": "Function", + "tags": [], + "label": "ViewsStats", + "description": [], + "signature": [ + "({ item }: { item: ", + { + "pluginId": "@kbn/content-management-table-list-view-common", + "scope": "common", + "docId": "kibKbnContentManagementTableListViewCommonPluginApi", + "section": "def-common.UserContentCommonSchema", + "text": "UserContentCommonSchema" + }, + "; }) => JSX.Element" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ViewsStats.$1", + "type": "Object", + "tags": [], + "label": "{ item }", + "description": [], + "path": "packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ViewsStats.$1.item", + "type": "Object", + "tags": [], + "label": "item", + "description": [], + "signature": [ + { + "pluginId": "@kbn/content-management-table-list-view-common", + "scope": "common", + "docId": "kibKbnContentManagementTableListViewCommonPluginApi", + "section": "def-common.UserContentCommonSchema", + "text": "UserContentCommonSchema" + } + ], + "path": "packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.tsx", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], + "returnComment": [], + "initialIsOpen": false + } + ], + "interfaces": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ActivityViewProps", + "type": "Interface", + "tags": [], + "label": "ActivityViewProps", + "description": [], + "path": "packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ActivityViewProps.item", + "type": "Object", + "tags": [], + "label": "item", + "description": [], + "signature": [ + "{ createdBy?: string | undefined; updatedBy?: string | undefined; createdAt?: string | undefined; updatedAt?: string | undefined; managed?: boolean | undefined; }" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic", + "type": "Interface", + "tags": [], + "label": "ContentInsightsClientPublic", + "description": [ + "\nPublic interface of the Content Management Insights service." + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic.track", + "type": "Function", + "tags": [], + "label": "track", + "description": [], + "signature": [ + "(id: string, eventType: \"viewed\") => void" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic.track.$1", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic.track.$2", + "type": "string", + "tags": [], + "label": "eventType", + "description": [], + "signature": [ + "\"viewed\"" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic.getStats", + "type": "Function", + "tags": [], + "label": "getStats", + "description": [], + "signature": [ + "(id: string, eventType: \"viewed\") => Promise<", + { + "pluginId": "@kbn/content-management-content-insights-server", + "scope": "server", + "docId": "kibKbnContentManagementContentInsightsServerPluginApi", + "section": "def-server.ContentInsightsStats", + "text": "ContentInsightsStats" + }, + ">" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic.getStats.$1", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsClientPublic.getStats.$2", + "type": "string", + "tags": [], + "label": "eventType", + "description": [], + "signature": [ + "\"viewed\"" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsServices", + "type": "Interface", + "tags": [], + "label": "ContentInsightsServices", + "description": [ + "\nAbstract external services for this component." + ], + "path": "packages/content-management/content_insights/content_insights_public/src/services.tsx", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsServices.contentInsightsClient", + "type": "Object", + "tags": [], + "label": "contentInsightsClient", + "description": [], + "signature": [ + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ContentInsightsClientPublic", + "text": "ContentInsightsClientPublic" + } + ], + "path": "packages/content-management/content_insights/content_insights_public/src/services.tsx", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [ + { + "parentPluginId": "@kbn/content-management-content-insights-public", + "id": "def-public.ContentInsightsEventTypes", + "type": "Type", + "tags": [], + "label": "ContentInsightsEventTypes", + "description": [], + "signature": [ + "\"viewed\"" + ], + "path": "packages/content-management/content_insights/content_insights_public/src/client.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_content_management_content_insights_public.mdx b/api_docs/kbn_content_management_content_insights_public.mdx new file mode 100644 index 0000000000000..bc33d284ef380 --- /dev/null +++ b/api_docs/kbn_content_management_content_insights_public.mdx @@ -0,0 +1,39 @@ +--- +#### +#### 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: kibKbnContentManagementContentInsightsPublicPluginApi +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-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-content-insights-public'] +--- +import kbnContentManagementContentInsightsPublicObj from './kbn_content_management_content_insights_public.devdocs.json'; + + + +Contact [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 32 | 0 | 28 | 0 | + +## Client + +### Functions + + +### Classes + + +### Interfaces + + +### Consts, variables and types + + diff --git a/api_docs/kbn_content_management_content_insights_server.devdocs.json b/api_docs/kbn_content_management_content_insights_server.devdocs.json new file mode 100644 index 0000000000000..1e282575547c7 --- /dev/null +++ b/api_docs/kbn_content_management_content_insights_server.devdocs.json @@ -0,0 +1,171 @@ +{ + "id": "@kbn/content-management-content-insights-server", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [], + "functions": [ + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.registerContentInsights", + "type": "Function", + "tags": [], + "label": "registerContentInsights", + "description": [], + "signature": [ + "({ usageCollection, http, getStartServices }: ", + "ContentInsightsDependencies", + ", config: ", + "ContentInsightsConfig", + ") => void" + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.registerContentInsights.$1", + "type": "Object", + "tags": [], + "label": "{ usageCollection, http, getStartServices }", + "description": [], + "signature": [ + "ContentInsightsDependencies" + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.registerContentInsights.$2", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "signature": [ + "ContentInsightsConfig" + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + } + ], + "interfaces": [ + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.ContentInsightsStats", + "type": "Interface", + "tags": [], + "label": "ContentInsightsStats", + "description": [], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.ContentInsightsStats.from", + "type": "string", + "tags": [], + "label": "from", + "description": [ + "\nThe date from which the data is counted" + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.ContentInsightsStats.count", + "type": "number", + "tags": [], + "label": "count", + "description": [ + "\nTotal count of events" + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.ContentInsightsStats.daily", + "type": "Array", + "tags": [], + "label": "daily", + "description": [ + "\nDaily counts of events" + ], + "signature": [ + "{ date: string; count: number; }[]" + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.ContentInsightsStatsResponse", + "type": "Interface", + "tags": [], + "label": "ContentInsightsStatsResponse", + "description": [], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/content-management-content-insights-server", + "id": "def-server.ContentInsightsStatsResponse.result", + "type": "Object", + "tags": [], + "label": "result", + "description": [], + "signature": [ + { + "pluginId": "@kbn/content-management-content-insights-server", + "scope": "server", + "docId": "kibKbnContentManagementContentInsightsServerPluginApi", + "section": "def-server.ContentInsightsStats", + "text": "ContentInsightsStats" + } + ], + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_content_management_content_insights_server.mdx b/api_docs/kbn_content_management_content_insights_server.mdx new file mode 100644 index 0000000000000..fa657b1366c81 --- /dev/null +++ b/api_docs/kbn_content_management_content_insights_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: kibKbnContentManagementContentInsightsServerPluginApi +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-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-content-insights-server'] +--- +import kbnContentManagementContentInsightsServerObj from './kbn_content_management_content_insights_server.devdocs.json'; + + + +Contact [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 9 | 0 | 6 | 2 | + +## Server + +### Functions + + +### Interfaces + + diff --git a/api_docs/kbn_content_management_favorites_public.mdx b/api_docs/kbn_content_management_favorites_public.mdx index 2e7ad8d1dfe3a..f65f7519579f5 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-08-21 +date: 2024-08-23 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 471b342b2b99f..2f5f9d6d023f1 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-08-21 +date: 2024-08-23 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 1247e8c3ea13c..58934929e5eb9 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-08-21 +date: 2024-08-23 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 f333cd2156137..01d3524cc3520 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-08-21 +date: 2024-08-23 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 d2480fe28b4f8..be693874ec840 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_content_management_table_list_view_table.devdocs.json index 4159e15e02447..958e9a551308d 100644 --- a/api_docs/kbn_content_management_table_list_view_table.devdocs.json +++ b/api_docs/kbn_content_management_table_list_view_table.devdocs.json @@ -348,6 +348,29 @@ "path": "packages/content-management/table_list_view_table/src/services.tsx", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "@kbn/content-management-table-list-view-table", + "id": "def-public.TableListViewKibanaDependencies.contentInsightsClient", + "type": "Object", + "tags": [], + "label": "contentInsightsClient", + "description": [ + "\nContent insights client to enable content insights features." + ], + "signature": [ + { + "pluginId": "@kbn/content-management-content-insights-public", + "scope": "public", + "docId": "kibKbnContentManagementContentInsightsPublicPluginApi", + "section": "def-public.ContentInsightsClientPublic", + "text": "ContentInsightsClientPublic" + }, + " | undefined" + ], + "path": "packages/content-management/table_list_view_table/src/services.tsx", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false 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 b66c5be3163db..b93fee650cdf2 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-table-list-view-table'] --- import kbnContentManagementTableListViewTableObj from './kbn_content_management_table_list_view_table.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 | |-------------------|-----------|------------------------|-----------------| -| 50 | 0 | 33 | 3 | +| 51 | 0 | 33 | 3 | ## Client diff --git a/api_docs/kbn_content_management_user_profiles.mdx b/api_docs/kbn_content_management_user_profiles.mdx index 043ccdd7890f3..61b4eb0238ab3 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-08-21 +date: 2024-08-23 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 4086a6926f399..7c128f0a22f4b 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-08-21 +date: 2024-08-23 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 af571a9169c8a..6071d4931ceb7 100644 --- a/api_docs/kbn_core_analytics_browser.devdocs.json +++ b/api_docs/kbn_core_analytics_browser.devdocs.json @@ -708,7 +708,7 @@ }, { "plugin": "elasticAssistant", - "path": "x-pack/plugins/elastic_assistant/server/routes/attack_discovery/helpers.ts" + "path": "x-pack/plugins/elastic_assistant/server/routes/helpers.ts" }, { "plugin": "elasticAssistant", @@ -724,7 +724,7 @@ }, { "plugin": "elasticAssistant", - "path": "x-pack/plugins/elastic_assistant/server/routes/helpers.ts" + "path": "x-pack/plugins/elastic_assistant/server/routes/attack_discovery/helpers.ts" }, { "plugin": "elasticAssistant", diff --git a/api_docs/kbn_core_analytics_browser.mdx b/api_docs/kbn_core_analytics_browser.mdx index c10f6557a225c..a85a326d620f2 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-08-21 +date: 2024-08-23 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 9fc92dc252811..bcb90761435b8 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-08-21 +date: 2024-08-23 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 a1abf83a69389..e4c73d4685393 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-08-21 +date: 2024-08-23 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 d293c2c8fca86..ade36dd60bde5 100644 --- a/api_docs/kbn_core_analytics_server.devdocs.json +++ b/api_docs/kbn_core_analytics_server.devdocs.json @@ -716,7 +716,7 @@ }, { "plugin": "elasticAssistant", - "path": "x-pack/plugins/elastic_assistant/server/routes/attack_discovery/helpers.ts" + "path": "x-pack/plugins/elastic_assistant/server/routes/helpers.ts" }, { "plugin": "elasticAssistant", @@ -732,7 +732,7 @@ }, { "plugin": "elasticAssistant", - "path": "x-pack/plugins/elastic_assistant/server/routes/helpers.ts" + "path": "x-pack/plugins/elastic_assistant/server/routes/attack_discovery/helpers.ts" }, { "plugin": "elasticAssistant", diff --git a/api_docs/kbn_core_analytics_server.mdx b/api_docs/kbn_core_analytics_server.mdx index a580c1ec750e1..5d50f83db03dd 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-08-21 +date: 2024-08-23 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 69c05c884994d..6ef07a6820b7f 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-08-21 +date: 2024-08-23 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 0593b93880e29..4632692406529 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-08-21 +date: 2024-08-23 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 f9a3d4258babe..4169518fbe421 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-08-21 +date: 2024-08-23 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 ece1abd1ed21f..1cf53616f4a23 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-08-21 +date: 2024-08-23 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 fb10cd8b56fd8..77b74724f6f7c 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-08-21 +date: 2024-08-23 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 a1635a00c9a18..243f5e83f075d 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-08-21 +date: 2024-08-23 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 b02073aceaf4c..85af400c4f789 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-08-21 +date: 2024-08-23 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 a28b48cd4bec1..5af8b0b0d4c74 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-08-21 +date: 2024-08-23 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 ede61fad0a30e..b7cf291d9c97b 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-08-21 +date: 2024-08-23 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 f573502583150..2802723d5073c 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-08-21 +date: 2024-08-23 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 ab216dca9129f..6f03be18e8071 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-08-21 +date: 2024-08-23 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 efd3a5d7d8034..80fbe8a6befdf 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-08-21 +date: 2024-08-23 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 2849b48c1ceb8..62e67eda0e7bc 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-08-21 +date: 2024-08-23 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 43bb016b7be68..d318e5f4c31f3 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-08-21 +date: 2024-08-23 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 ddb68ea4f947c..08eedd861d507 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-08-21 +date: 2024-08-23 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 f24dd2111a76b..cd5cd358cb1e5 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-08-21 +date: 2024-08-23 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 aa4b83b67e2c9..608f9f5e0a3eb 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_chrome_browser.mdx index 510fe2d78b0a3..843179a0a02b6 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-chrome-browser'] --- import kbnCoreChromeBrowserObj from './kbn_core_chrome_browser.devdocs.json'; diff --git a/api_docs/kbn_core_chrome_browser_mocks.mdx b/api_docs/kbn_core_chrome_browser_mocks.mdx index 0a955e840c3a1..baa2b177c7ba5 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-08-21 +date: 2024-08-23 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 109ede6d7e2b2..48b4b150af322 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-08-21 +date: 2024-08-23 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 7b803ee5e49bc..4f15529727a88 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-08-21 +date: 2024-08-23 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 5ca67838913b7..21a4fea4c28ff 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-08-21 +date: 2024-08-23 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 f9b1760eab98e..ff65faf65be34 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-08-21 +date: 2024-08-23 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 0b2b76d9ebf10..dfce3927c1306 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-08-21 +date: 2024-08-23 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 0d71b8ae1f35d..b43c7f537f0bd 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-08-21 +date: 2024-08-23 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 e677746f96640..32b9e142bbdea 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-08-21 +date: 2024-08-23 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 0f4cac7a30c79..c2a059a0039d9 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-08-21 +date: 2024-08-23 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 5d6df9b7f3ed1..227bbf05e91f5 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-08-21 +date: 2024-08-23 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 7e57c110bf6ad..e960772427182 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-08-21 +date: 2024-08-23 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 a770baf99571f..2054723bde542 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-08-21 +date: 2024-08-23 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 1500a4f4096f8..778e8cd2423f2 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-08-21 +date: 2024-08-23 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 b50dba0a2a12d..a73943266e5c3 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-08-21 +date: 2024-08-23 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 3d91893e30b84..baee76ff3b60a 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-08-21 +date: 2024-08-23 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 c04d8afd9d017..2606ddb6fd597 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-08-21 +date: 2024-08-23 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 71f85043698e0..b845408b4187a 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-08-21 +date: 2024-08-23 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 78a38fe06245a..a7811dcb4b1da 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-08-21 +date: 2024-08-23 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 0269e6c59da98..e9a74efb78159 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-08-21 +date: 2024-08-23 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 1b2fb0c13a75f..2b5fc57c60a7f 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-08-21 +date: 2024-08-23 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 1283e77e18649..f4c9c593e8a0e 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-08-21 +date: 2024-08-23 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 b37eb0af4ffda..8ef2faba93c11 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_elasticsearch_server.mdx index 46e2dd73904ad..750f7d06a7ef6 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-elasticsearch-server'] --- import kbnCoreElasticsearchServerObj from './kbn_core_elasticsearch_server.devdocs.json'; diff --git a/api_docs/kbn_core_elasticsearch_server_internal.mdx b/api_docs/kbn_core_elasticsearch_server_internal.mdx index 9ee716f15ee64..3261dfca50c8b 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_elasticsearch_server_mocks.mdx index 688149e027b93..fbebceaf61835 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-08-21 +date: 2024-08-23 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 5ea460b2c8d09..2c67129743c6b 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-08-21 +date: 2024-08-23 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 4fc87d6717e44..93d098ce1f41e 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-08-21 +date: 2024-08-23 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 5783b53ca7648..0cdd0f1a68e6d 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-08-21 +date: 2024-08-23 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 3dc5bc0fdccd1..5b3ee30e20470 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-08-21 +date: 2024-08-23 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 3bdfbace4201c..cef41990d100b 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-08-21 +date: 2024-08-23 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 ccb37e5cc016f..f7b73b851e444 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-08-21 +date: 2024-08-23 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 6a3fcf8118129..72e8197b06d6c 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-08-21 +date: 2024-08-23 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 34c2bc605fb0e..5cba1c7a96532 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-08-21 +date: 2024-08-23 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 ab0f8d36720d2..84057ab3ceb64 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-08-21 +date: 2024-08-23 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 b9c5aef757b87..daafb2710e45f 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-08-21 +date: 2024-08-23 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 a5fdc1aebfa10..fc35327b3c195 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-08-21 +date: 2024-08-23 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_http_browser.mdx b/api_docs/kbn_core_http_browser.mdx index 257fce6e9b373..0d7f2bbc45720 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-08-21 +date: 2024-08-23 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 7407a82f9fb98..d7024740c16b8 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-08-21 +date: 2024-08-23 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 9cf438309b55b..a4cc5ceceaed5 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-08-21 +date: 2024-08-23 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 2d4b869666d2f..1cddeb8aaa8d8 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-08-21 +date: 2024-08-23 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 69cdef739ef20..2ae604ba07500 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_http_request_handler_context_server.mdx index 30ff131d9648b..09decfc911666 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-http-request-handler-context-server'] --- import kbnCoreHttpRequestHandlerContextServerObj from './kbn_core_http_request_handler_context_server.devdocs.json'; diff --git a/api_docs/kbn_core_http_resources_server.mdx b/api_docs/kbn_core_http_resources_server.mdx index 957c3596a8281..c79bc8889324f 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-08-21 +date: 2024-08-23 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 451bfa71408b6..4eed50c15f778 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-08-21 +date: 2024-08-23 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 2b6125daaa06b..a9e4725622fdd 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-08-21 +date: 2024-08-23 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 2415a8d496b47..5de2e5ee6b58d 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-08-21 +date: 2024-08-23 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 c2b35e0efeb32..a466979435bf2 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-08-21 +date: 2024-08-23 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 9c2200c03969b..24a139f849c86 100644 --- a/api_docs/kbn_core_http_server.devdocs.json +++ b/api_docs/kbn_core_http_server.devdocs.json @@ -3834,6 +3834,10 @@ "plugin": "ruleRegistry", "path": "x-pack/plugins/rule_registry/server/routes/get_aad_fields_by_rule_type.ts" }, + { + "plugin": "@kbn/content-management-content-insights-server", + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts" + }, { "plugin": "banners", "path": "x-pack/plugins/banners/server/routes/info.ts" @@ -6548,6 +6552,10 @@ "plugin": "ruleRegistry", "path": "x-pack/plugins/rule_registry/server/routes/get_alert_summary.ts" }, + { + "plugin": "@kbn/content-management-content-insights-server", + "path": "packages/content-management/content_insights/content_insights_server/src/register.ts" + }, { "plugin": "savedObjectsTagging", "path": "x-pack/plugins/saved_objects_tagging/server/routes/tags/create_tag.ts" @@ -14390,6 +14398,10 @@ "plugin": "cloudSecurityPosture", "path": "x-pack/plugins/cloud_security_posture/server/routes/benchmark_rules/get_states/get_states.ts" }, + { + "plugin": "dataVisualizer", + "path": "x-pack/plugins/data_visualizer/server/routes.ts" + }, { "plugin": "ecsDataQualityDashboard", "path": "x-pack/plugins/ecs_data_quality_dashboard/server/routes/get_index_mappings.ts" @@ -16132,6 +16144,10 @@ "plugin": "fileUpload", "path": "x-pack/plugins/file_upload/server/routes.ts" }, + { + "plugin": "fileUpload", + "path": "x-pack/plugins/file_upload/server/routes.ts" + }, { "plugin": "integrationAssistant", "path": "x-pack/plugins/integration_assistant/server/routes/ecs_routes.ts" diff --git a/api_docs/kbn_core_http_server.mdx b/api_docs/kbn_core_http_server.mdx index 6e6e49419b58b..af814be806669 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-08-21 +date: 2024-08-23 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 2df8e994b4d03..6c0a2f955e9f5 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-08-21 +date: 2024-08-23 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 760a3783580b2..8ec6589231fa3 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-08-21 +date: 2024-08-23 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 ebc31c1fcdbc3..08067657eb46c 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-08-21 +date: 2024-08-23 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 16e905f0b43e2..8260e37475989 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-08-21 +date: 2024-08-23 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 a10e3b3da2848..a6ba0278d0c04 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-08-21 +date: 2024-08-23 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 26d36e4db1358..023b5d6d7c642 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-08-21 +date: 2024-08-23 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 93e1931fb41f4..78f043bb16b29 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-08-21 +date: 2024-08-23 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 f608e39e67fd4..9efe453493f34 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-08-21 +date: 2024-08-23 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 c7fea510de911..0c30905992b4e 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-08-21 +date: 2024-08-23 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 90c8572fc94d0..23c88616c8d1a 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_lifecycle_browser.mdx index 56fc5e0cf39b2..64c04a666337f 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-lifecycle-browser'] --- import kbnCoreLifecycleBrowserObj from './kbn_core_lifecycle_browser.devdocs.json'; diff --git a/api_docs/kbn_core_lifecycle_browser_mocks.mdx b/api_docs/kbn_core_lifecycle_browser_mocks.mdx index 9d0fe1a021efe..7f30aabce4961 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_lifecycle_server.mdx index 56ae22035fddd..2e798ec23c9fa 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-lifecycle-server'] --- import kbnCoreLifecycleServerObj from './kbn_core_lifecycle_server.devdocs.json'; diff --git a/api_docs/kbn_core_lifecycle_server_mocks.mdx b/api_docs/kbn_core_lifecycle_server_mocks.mdx index 3ea6d16af1874..f40494a8df0a0 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-08-21 +date: 2024-08-23 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 6073cfc52deb5..1800751ab0604 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-08-21 +date: 2024-08-23 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 bdbd19d600505..c7979d2ebdaf0 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-08-21 +date: 2024-08-23 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 5268af161ed7f..3b6e6ba5ccf7f 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-08-21 +date: 2024-08-23 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 2d01720026c20..5ea0ce12d8ca9 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-08-21 +date: 2024-08-23 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 609f51f5d603d..aac7724306579 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-08-21 +date: 2024-08-23 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 1acfc8f6ddf86..3a74d9508ee2f 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-08-21 +date: 2024-08-23 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 8dc4954247d03..d3ff8a1d9ecf5 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-08-21 +date: 2024-08-23 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 58ec87f80953f..cc61ed67092d1 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-08-21 +date: 2024-08-23 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 ed6abbd5a57f1..10a074cfd839a 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-08-21 +date: 2024-08-23 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 647da618387b0..e9312e79a5819 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-08-21 +date: 2024-08-23 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 f4597c33ec131..ba2b23d37dd4f 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-08-21 +date: 2024-08-23 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 d7da6b6b79725..0487da6f83ec1 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-08-21 +date: 2024-08-23 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 ccbc665ee21a0..96a28d59addfa 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-08-21 +date: 2024-08-23 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 0fe23856fe6b3..c2e4c94c627bb 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-08-21 +date: 2024-08-23 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 f1b97363fa0ab..a45632326c67c 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-08-21 +date: 2024-08-23 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 af9006f019dd0..f61c90c6d78c0 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-08-21 +date: 2024-08-23 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 1ffb42b1fc392..59d91f269920a 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-08-21 +date: 2024-08-23 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 89850432c48b6..a9ad1a40dd284 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-08-21 +date: 2024-08-23 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 2155afdbd9248..dc25857838570 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-08-21 +date: 2024-08-23 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 42bf230ffe7c7..3989a8d788940 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-08-21 +date: 2024-08-23 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 0adbc3a6dfb91..d4bb37bc95777 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-08-21 +date: 2024-08-23 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 ab8840527db45..535ec70e27701 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-08-21 +date: 2024-08-23 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 f0c0378a06cda..d280695b7c881 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-08-21 +date: 2024-08-23 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 bd531552b6280..0ebfe832c6b9c 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-08-21 +date: 2024-08-23 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 ec139261be883..7661e8dcbba38 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-08-21 +date: 2024-08-23 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 4b8067655dcae..28b9dea5c8f57 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-08-21 +date: 2024-08-23 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 70a2e65ea813f..12c2d779be81f 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-08-21 +date: 2024-08-23 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 c8f24cc57ce1e..277ac7cb4d240 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-08-21 +date: 2024-08-23 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 c3933378bdb0f..e5481e769ade3 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-08-21 +date: 2024-08-23 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 7beb81c1ae753..8f917154f9906 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-08-21 +date: 2024-08-23 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 62b92892dc1d1..686ff6c810fde 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-08-21 +date: 2024-08-23 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 360e0aa3b9973..9f6fef394e33f 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-08-21 +date: 2024-08-23 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 41eac4ffe5aa8..ce5e347a74b42 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-08-21 +date: 2024-08-23 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 2fe72032446f8..18678e453cd8b 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-08-21 +date: 2024-08-23 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 37f96e4f53e26..8f64d1f809d54 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-08-21 +date: 2024-08-23 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 35b1fc1b03b25..afcf5a721ad2c 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-08-21 +date: 2024-08-23 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 dc8f99e7742a2..f4a7a24da44da 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-08-21 +date: 2024-08-23 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 a67cbbf3e9139..5526f6dc09f8d 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-08-21 +date: 2024-08-23 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 ea9bb2c6d5dd1..635996900fcb4 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-08-21 +date: 2024-08-23 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 2db5e294fdf04..602b45a783868 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_saved_objects_common.mdx index 02d682e139ea0..75cdbb84b3f86 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-08-21 +date: 2024-08-23 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 554a5257ea43c..87f89cda62500 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-08-21 +date: 2024-08-23 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 bd112d15973b8..d89f4315420b3 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-08-21 +date: 2024-08-23 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 31da6789f042c..2cf85cf87db8b 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-08-21 +date: 2024-08-23 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 cccf6627dd5cc..5e9b9dd22bfab 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-08-21 +date: 2024-08-23 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 261fbd85a6355..b275f63c19fc3 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-08-21 +date: 2024-08-23 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 f37df4800b1e6..7011e8f93da49 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-08-21 +date: 2024-08-23 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 673a718a4e5d3..94e13b848f961 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-08-21 +date: 2024-08-23 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 2653cb376a473..d69fb9e24dc64 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-08-21 +date: 2024-08-23 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 c1d2a3bddaf54..2f5a48a0d9c6a 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-08-21 +date: 2024-08-23 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 2bd9b2f8671e3..6932d277fdc5e 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-08-21 +date: 2024-08-23 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 04c0b9429a650..daab7a521b089 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-08-21 +date: 2024-08-23 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 4de65453223bb..9163792f48eee 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-08-21 +date: 2024-08-23 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 64fe4ca4fb7ed..3d0a351a57d1e 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-08-21 +date: 2024-08-23 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 52a1eee70c82e..c2372e78a04d8 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-08-21 +date: 2024-08-23 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 dd55c6e81f88c..0e892ae75adb0 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-08-21 +date: 2024-08-23 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 ec206a924ecca..fabaa41dfcdc5 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-08-21 +date: 2024-08-23 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 3286a2304db1b..b2ee26ba3ffeb 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-08-21 +date: 2024-08-23 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 04d146140a989..f5ba5f2397c44 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-08-21 +date: 2024-08-23 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 11d51c88bff27..bb1c4f927094b 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-08-21 +date: 2024-08-23 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 f7e5350254e76..ef26b5aed6d25 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-08-21 +date: 2024-08-23 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 7709c0fbe4d8e..d8c50098a207f 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_core_test_helpers_http_setup_browser.mdx index 838e675b668eb..8c2467eb84fdf 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-08-21 +date: 2024-08-23 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 ebadf4fdca402..37a9c857d5700 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-08-21 +date: 2024-08-23 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 b03775f76dba2..6434f28fde9bc 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-08-21 +date: 2024-08-23 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 a021487d94904..c64d47b8b3799 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-08-21 +date: 2024-08-23 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 f17a43d5a7ab8..3f2f9501ad9f9 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-08-21 +date: 2024-08-23 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 221f2768306e1..e4aa01468322f 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-08-21 +date: 2024-08-23 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 c9ddb3f84bea4..b824f9efa1961 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-08-21 +date: 2024-08-23 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 310a2bb1a89c2..316a97694cb44 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-08-21 +date: 2024-08-23 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 501dea84258a5..1066cf86c83a8 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-08-21 +date: 2024-08-23 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 a5d5c0826d31a..8e72b1729dc7e 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-08-21 +date: 2024-08-23 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 1e7e3d928e901..ad04cbe2f805a 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-08-21 +date: 2024-08-23 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 58594cb58a823..90b1599d9d4fc 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-08-21 +date: 2024-08-23 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 06153af7c3101..31989f22b0b1d 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-08-21 +date: 2024-08-23 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 717a7a6d9418b..bf89467217c94 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-08-21 +date: 2024-08-23 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 9adf15e21ebaf..d512af802cade 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-08-21 +date: 2024-08-23 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 e205582498c79..19b9f671973c7 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-08-21 +date: 2024-08-23 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 2d58cc6be145c..cd91a900cd37f 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-08-21 +date: 2024-08-23 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 86f352530c93c..ed84451aff5fc 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-08-21 +date: 2024-08-23 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 d7eac52efd2a3..b968c5d0bf40a 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-08-21 +date: 2024-08-23 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 0ec00f90041ae..513be1761cf64 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-08-21 +date: 2024-08-23 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 472b9520a4341..b507285bf5f9f 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-08-21 +date: 2024-08-23 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 d63ab4a9ba8e8..3a7cd70790943 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-08-21 +date: 2024-08-23 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 ddc52da26ebc1..e0dcae83fec4c 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-08-21 +date: 2024-08-23 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 c932ff314e1d9..728cb27c75b05 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-08-21 +date: 2024-08-23 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 f72a52d8492ee..9192d3200ea1a 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-08-21 +date: 2024-08-23 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 2d9f39a3b6f0a..415bcbc8f8b0a 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-08-21 +date: 2024-08-23 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 24859c3d813d7..8154ab0494b1f 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-08-21 +date: 2024-08-23 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 1da2628b633dc..31b5bb854249e 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-08-21 +date: 2024-08-23 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 1076288eaed92..d0a12610662bb 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-08-21 +date: 2024-08-23 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 c8851a51ce1fe..9ac2b3ee90ed3 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-08-21 +date: 2024-08-23 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 6d7203351310d..3bc7a3220c333 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-08-21 +date: 2024-08-23 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 b98d50bfa7af6..7d7a3aff3fe64 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-08-21 +date: 2024-08-23 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 076a41f86675f..05041e32db468 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-08-21 +date: 2024-08-23 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 a70f195b5ed5c..4564eff686343 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-08-21 +date: 2024-08-23 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 fd8b4c3735475..aef624f090f52 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-08-21 +date: 2024-08-23 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 98ff32b8699f7..59a84a971b9c3 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-08-21 +date: 2024-08-23 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 addca047dde2a..acd794158bbba 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-08-21 +date: 2024-08-23 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 908b59b66064d..eb0390f38c5ff 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-08-21 +date: 2024-08-23 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 b73af948697c1..573f89b0de84e 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-08-21 +date: 2024-08-23 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 2855695ad3afc..f30f5e3a87f02 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-08-21 +date: 2024-08-23 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 802414481f541..474b039cba36e 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-08-21 +date: 2024-08-23 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 3bf55177a46f0..7f6c5abe89b90 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-08-21 +date: 2024-08-23 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 05fc4bbe0e1d2..4bbd5c1eef041 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-08-21 +date: 2024-08-23 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 3e3724dbc920a..397d173ebd681 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-08-21 +date: 2024-08-23 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 48b6f16356747..8363ef57460b7 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-08-21 +date: 2024-08-23 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 bed5e1ade23cd..191be50247cf7 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-08-21 +date: 2024-08-23 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 6e1da6adb5dfc..98df028221d09 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-08-21 +date: 2024-08-23 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 d3ed156425da6..0199c2cbba3bd 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-08-21 +date: 2024-08-23 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 1a46c4e5f99ca..d845ed0c37058 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-08-21 +date: 2024-08-23 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 90f4c07073fba..936321080692f 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_dev_cli_runner.devdocs.json index 2869fb3262724..0849bb298f7e4 100644 --- a/api_docs/kbn_dev_cli_runner.devdocs.json +++ b/api_docs/kbn_dev_cli_runner.devdocs.json @@ -1541,7 +1541,7 @@ "label": "log", "description": [], "signature": [ - "{ defaultLevel?: \"error\" | \"info\" | \"warning\" | \"success\" | \"debug\" | \"silent\" | \"verbose\" | undefined; } | undefined" + "{ defaultLevel?: \"error\" | \"info\" | \"warning\" | \"success\" | \"debug\" | \"silent\" | \"verbose\" | undefined; context?: string | undefined; } | undefined" ], "path": "packages/kbn-dev-cli-runner/src/run.ts", "deprecated": false, @@ -1600,7 +1600,7 @@ "label": "log", "description": [], "signature": [ - "{ defaultLevel?: \"error\" | \"info\" | \"warning\" | \"success\" | \"debug\" | \"silent\" | \"verbose\" | undefined; } | undefined" + "{ defaultLevel?: \"error\" | \"info\" | \"warning\" | \"success\" | \"debug\" | \"silent\" | \"verbose\" | undefined; context?: string | undefined; } | undefined" ], "path": "packages/kbn-dev-cli-runner/src/run_with_commands.ts", "deprecated": false, diff --git a/api_docs/kbn_dev_cli_runner.mdx b/api_docs/kbn_dev_cli_runner.mdx index cac8e6766a3d9..0f8f3c5f9cf6f 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-08-21 +date: 2024-08-23 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 8d05c5ae1e4e1..a375b17d0328d 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-08-21 +date: 2024-08-23 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 77f9e27f40967..966a5019ed0ce 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dev-utils'] --- import kbnDevUtilsObj from './kbn_dev_utils.devdocs.json'; diff --git a/api_docs/kbn_discover_utils.mdx b/api_docs/kbn_discover_utils.mdx index 50db92c0cc135..96218e82538a3 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/discover-utils'] --- import kbnDiscoverUtilsObj from './kbn_discover_utils.devdocs.json'; diff --git a/api_docs/kbn_doc_links.mdx b/api_docs/kbn_doc_links.mdx index ac7a821126db1..57fb42abf3e64 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-08-21 +date: 2024-08-23 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 43c5d9e6ab030..c5fdf9a3b9809 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-08-21 +date: 2024-08-23 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 8b9f4fd479e1d..1723354ec2622 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-08-21 +date: 2024-08-23 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 e594740a6e186..c4ce9202fdfbf 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_ecs_data_quality_dashboard.devdocs.json index 48c4823f73460..2fe8bd96f7996 100644 --- a/api_docs/kbn_ecs_data_quality_dashboard.devdocs.json +++ b/api_docs/kbn_ecs_data_quality_dashboard.devdocs.json @@ -109,6 +109,18 @@ "interfaces": [], "enums": [], "misc": [ + { + "parentPluginId": "@kbn/ecs-data-quality-dashboard", + "id": "def-public.DATA_QUALITY_DASHBOARD_CONVERSATION_ID", + "type": "string", + "tags": [], + "label": "DATA_QUALITY_DASHBOARD_CONVERSATION_ID", + "description": [], + "path": "x-pack/packages/security-solution/ecs_data_quality_dashboard/impl/data_quality/translations.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/ecs-data-quality-dashboard", "id": "def-public.DATA_QUALITY_PROMPT_CONTEXT_PILL_TOOLTIP", diff --git a/api_docs/kbn_ecs_data_quality_dashboard.mdx b/api_docs/kbn_ecs_data_quality_dashboard.mdx index 719762f2b1591..44bb1f804aa62 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ecs-data-quality-dashboard'] --- import kbnEcsDataQualityDashboardObj from './kbn_ecs_data_quality_dashboard.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/security-threat-hunting-explore](https://github.com/orgs/elast | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 13 | 0 | 5 | 0 | +| 14 | 0 | 6 | 0 | ## Client diff --git a/api_docs/kbn_elastic_agent_utils.mdx b/api_docs/kbn_elastic_agent_utils.mdx index 34b867c909236..c69498a185477 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-08-21 +date: 2024-08-23 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 1d34bcaff5e19..f306772062ca1 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-08-21 +date: 2024-08-23 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 00c162b8c5dec..5e17b61aff2ec 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-08-21 +date: 2024-08-23 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 8692a9b9ccd0d..03fc53242ba56 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/entities-schema'] --- import kbnEntitiesSchemaObj from './kbn_entities_schema.devdocs.json'; diff --git a/api_docs/kbn_es.mdx b/api_docs/kbn_es.mdx index 1cb83e7aac983..25f7cd0120032 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-08-21 +date: 2024-08-23 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 401a09c64b91c..a1d5946db89b3 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-08-21 +date: 2024-08-23 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 41dda8670d8a7..60a70b18cf7e7 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-08-21 +date: 2024-08-23 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 399ec39f551eb..c790625b269da 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-08-21 +date: 2024-08-23 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 158a9bd8843ba..2bd4e0406c25d 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-08-21 +date: 2024-08-23 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 c97d72e946329..48f91348df10d 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-08-21 +date: 2024-08-23 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 c8d740dccd8cf..45b4f757885a6 100644 --- a/api_docs/kbn_esql_ast.devdocs.json +++ b/api_docs/kbn_esql_ast.devdocs.json @@ -2216,6 +2216,38 @@ "path": "packages/kbn-esql-ast/src/types.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "@kbn/esql-ast", + "id": "def-common.ESQLSource.cluster", + "type": "string", + "tags": [], + "label": "cluster", + "description": [ + "\nRepresents the cluster part of the source identifier. Empty string if not\npresent.\n\n```\nFROM [:]\n```" + ], + "signature": [ + "string | undefined" + ], + "path": "packages/kbn-esql-ast/src/types.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/esql-ast", + "id": "def-common.ESQLSource.index", + "type": "string", + "tags": [], + "label": "index", + "description": [ + "\nRepresents the index part of the source identifier. Unescaped and unquoted.\n\n```\nFROM [:]\n```" + ], + "signature": [ + "string | undefined" + ], + "path": "packages/kbn-esql-ast/src/types.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/kbn_esql_ast.mdx b/api_docs/kbn_esql_ast.mdx index 5b65b03f6e8ef..b7c0236008256 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-08-21 +date: 2024-08-23 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 | |-------------------|-----------|------------------------|-----------------| -| 150 | 1 | 120 | 15 | +| 152 | 1 | 120 | 15 | ## Common diff --git a/api_docs/kbn_esql_utils.mdx b/api_docs/kbn_esql_utils.mdx index 0574669c553d8..d03a1e2569b14 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_esql_validation_autocomplete.mdx index 6a62fe7427b40..4fc32e0dbb833 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/esql-validation-autocomplete'] --- import kbnEsqlValidationAutocompleteObj from './kbn_esql_validation_autocomplete.devdocs.json'; diff --git a/api_docs/kbn_event_annotation_common.mdx b/api_docs/kbn_event_annotation_common.mdx index 8548d8dfde715..cfcfcbac790ff 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-08-21 +date: 2024-08-23 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 6e5972ee6e019..201d15302e23d 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_expandable_flyout.mdx index 1cfbf186d050b..fabd4c9797dcf 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/expandable-flyout'] --- import kbnExpandableFlyoutObj from './kbn_expandable_flyout.devdocs.json'; diff --git a/api_docs/kbn_field_types.mdx b/api_docs/kbn_field_types.mdx index 8597b4fdcd22a..3df5abc983e9d 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-08-21 +date: 2024-08-23 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 42ea880067687..d4767ba61d4d6 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-08-21 +date: 2024-08-23 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 6ba0b05a94252..936fae00f3de0 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-08-21 +date: 2024-08-23 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 eeb39e7b6571c..15132a91756c9 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/formatters'] --- import kbnFormattersObj from './kbn_formatters.devdocs.json'; diff --git a/api_docs/kbn_ftr_common_functional_services.mdx b/api_docs/kbn_ftr_common_functional_services.mdx index f01ffea23aab6..ea4d99a5c7849 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ftr-common-functional-services'] --- import kbnFtrCommonFunctionalServicesObj from './kbn_ftr_common_functional_services.devdocs.json'; diff --git a/api_docs/kbn_ftr_common_functional_ui_services.mdx b/api_docs/kbn_ftr_common_functional_ui_services.mdx index 7f87f159325c4..3aed8639e099d 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-08-21 +date: 2024-08-23 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 c0899f0554b04..733b3bf34b506 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-08-21 +date: 2024-08-23 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 8890c88c9e181..d60ff9aa7b151 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-08-21 +date: 2024-08-23 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 9a13efd49a3f9..7efaa6410796d 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-08-21 +date: 2024-08-23 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 4bf30e6ed663f..b1f65ab2c74ca 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-08-21 +date: 2024-08-23 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 430215224e596..d02cdaa544a2e 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-08-21 +date: 2024-08-23 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 df4e1ed1230bf..5d76eb0daf705 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-08-21 +date: 2024-08-23 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 360e55a41ffa8..944c854b00c0b 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-08-21 +date: 2024-08-23 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 6d314b6d87265..85a31b027cc3e 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-08-21 +date: 2024-08-23 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 1f2e93c14ae04..bab30589a155f 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-08-21 +date: 2024-08-23 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 22ab8b4eb6f09..c69f9a4f02e9b 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-08-21 +date: 2024-08-23 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 e9a726c0f7b8c..793e37d5b1158 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-08-21 +date: 2024-08-23 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 f9cb6a0df09e8..06538f7593b5b 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-08-21 +date: 2024-08-23 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 27bd1d5caf478..042c8ef149ca7 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-08-21 +date: 2024-08-23 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 3151b16d71a82..a77ce451bf833 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/import-resolver'] --- import kbnImportResolverObj from './kbn_import_resolver.devdocs.json'; diff --git a/api_docs/kbn_index_management.mdx b/api_docs/kbn_index_management.mdx index 405d20b564953..3bb1857a55002 100644 --- a/api_docs/kbn_index_management.mdx +++ b/api_docs/kbn_index_management.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-index-management title: "@kbn/index-management" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/index-management plugin -date: 2024-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/index-management'] --- import kbnIndexManagementObj from './kbn_index_management.devdocs.json'; diff --git a/api_docs/kbn_inference_integration_flyout.mdx b/api_docs/kbn_inference_integration_flyout.mdx index 69784226f2a89..6d97010b6deab 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-08-21 +date: 2024-08-23 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 3b999f5643692..83c7603a8eee6 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-08-21 +date: 2024-08-23 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 247d8eec6eed5..482f78480bb86 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-08-21 +date: 2024-08-23 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 53f0e786dfdcc..cf946715b36b0 100644 --- a/api_docs/kbn_investigation_shared.devdocs.json +++ b/api_docs/kbn_investigation_shared.devdocs.json @@ -24,30 +24,30 @@ "misc": [ { "parentPluginId": "@kbn/investigation-shared", - "id": "def-common.CreateInvestigationInput", + "id": "def-common.CreateInvestigationItemParams", "type": "Type", "tags": [], - "label": "CreateInvestigationInput", + "label": "CreateInvestigationItemParams", "description": [], "signature": [ - "{ id: string; title: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; }" + "{ title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; }" ], - "path": "packages/kbn-investigation-shared/src/schema/create.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create_item.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/investigation-shared", - "id": "def-common.CreateInvestigationNoteInput", + "id": "def-common.CreateInvestigationItemResponse", "type": "Type", "tags": [], - "label": "CreateInvestigationNoteInput", + "label": "CreateInvestigationItemResponse", "description": [], "signature": [ - "{ content: string; }" + "{ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; }" ], - "path": "packages/kbn-investigation-shared/src/schema/create_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create_item.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -62,7 +62,7 @@ "signature": [ "{ content: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/create_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -77,7 +77,7 @@ "signature": [ "{ id: string; content: string; createdAt: number; createdBy: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/create_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -92,7 +92,7 @@ "signature": [ "{ id: string; title: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; }" ], - "path": "packages/kbn-investigation-shared/src/schema/create.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -105,9 +105,24 @@ "label": "CreateInvestigationResponse", "description": [], "signature": [ - "{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; }" + "{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; }" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/create.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.DeleteInvestigationItemParams", + "type": "Type", + "tags": [], + "label": "DeleteInvestigationItemParams", + "description": [], + "signature": [ + "{ investigationId: string; itemId: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/create.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/delete_item.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -120,9 +135,9 @@ "label": "DeleteInvestigationNoteParams", "description": [], "signature": [ - "{ id: string; noteId: string; }" + "{ investigationId: string; noteId: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/delete_note.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/delete_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -135,9 +150,9 @@ "label": "DeleteInvestigationParams", "description": [], "signature": [ - "{ id: string; }" + "{ investigationId: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/delete.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/delete.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -152,7 +167,7 @@ "signature": [ "{ alertId?: string | undefined; page?: string | undefined; perPage?: string | undefined; }" ], - "path": "packages/kbn-investigation-shared/src/schema/find.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -165,9 +180,24 @@ "label": "FindInvestigationsResponse", "description": [], "signature": [ - "{ page: number; perPage: number; total: number; results: { id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; }[]; }" + "{ page: number; perPage: number; total: number; results: { id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; }[]; }" ], - "path": "packages/kbn-investigation-shared/src/schema/find.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.GetInvestigationItemsResponse", + "type": "Type", + "tags": [], + "label": "GetInvestigationItemsResponse", + "description": [], + "signature": [ + "({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_items.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -182,7 +212,7 @@ "signature": [ "{ id: string; content: string; createdAt: number; createdBy: string; }[]" ], - "path": "packages/kbn-investigation-shared/src/schema/get_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get_notes.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -195,9 +225,9 @@ "label": "GetInvestigationParams", "description": [], "signature": [ - "{ id: string; }" + "{ investigationId: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/get.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -210,9 +240,9 @@ "label": "GetInvestigationResponse", "description": [], "signature": [ - "{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; }" + "{ id: string; title: string; createdAt: number; createdBy: string; params: { timeRange: { from: number; to: number; }; }; origin: { type: \"alert\"; id: string; } | { type: \"blank\"; }; status: \"closed\" | \"ongoing\"; notes: { id: string; content: string; createdAt: number; createdBy: string; }[]; items: ({ id: string; createdAt: number; createdBy: string; } & { title: string; type: \"esql\"; params: { esql: string; suggestion: any; }; })[]; }" ], - "path": "packages/kbn-investigation-shared/src/schema/get.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -227,7 +257,7 @@ "signature": [ "{ id: string; content: string; createdAt: number; createdBy: string; }" ], - "path": "packages/kbn-investigation-shared/src/schema/investigation_note.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -272,6 +302,74 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.createInvestigationItemParamsSchema", + "type": "Object", + "tags": [], + "label": "createInvestigationItemParamsSchema", + "description": [], + "signature": [ + "TypeC", + "<{ path: ", + "TypeC", + "<{ investigationId: ", + "StringC", + "; }>; body: ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/create_item.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.createInvestigationItemResponseSchema", + "type": "Object", + "tags": [], + "label": "createInvestigationItemResponseSchema", + "description": [], + "signature": [ + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/create_item.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/investigation-shared", "id": "def-common.createInvestigationNoteParamsSchema", @@ -283,7 +381,7 @@ "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; body: ", "TypeC", @@ -291,7 +389,7 @@ "StringC", "; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/create_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -315,7 +413,7 @@ "StringC", "; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/create_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -357,7 +455,7 @@ "LiteralC", "<\"blank\">; }>]>; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/create.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -417,9 +515,55 @@ "NumberC", "; createdBy: ", "StringC", - "; }>>; }>" + "; }>>; items: ", + "ArrayC", + "<", + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/create.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/create.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.deleteInvestigationItemParamsSchema", + "type": "Object", + "tags": [], + "label": "deleteInvestigationItemParamsSchema", + "description": [], + "signature": [ + "TypeC", + "<{ path: ", + "TypeC", + "<{ investigationId: ", + "StringC", + "; itemId: ", + "StringC", + "; }>; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/delete_item.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -435,13 +579,13 @@ "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; noteId: ", "StringC", "; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/delete_note.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/delete_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -457,11 +601,37 @@ "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/delete.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/delete.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.esqlItemSchema", + "type": "Object", + "tags": [], + "label": "esqlItemSchema", + "description": [], + "signature": [ + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>" + ], + "path": "packages/kbn-investigation-shared/src/schema/investigation_item.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -485,7 +655,7 @@ "StringC", "; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/find.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -555,9 +725,91 @@ "NumberC", "; createdBy: ", "StringC", - "; }>>; }>>; }>" + "; }>>; items: ", + "ArrayC", + "<", + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>>; }>>; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/find.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getInvestigationItemsParamsSchema", + "type": "Object", + "tags": [], + "label": "getInvestigationItemsParamsSchema", + "description": [], + "signature": [ + "TypeC", + "<{ path: ", + "TypeC", + "<{ investigationId: ", + "StringC", + "; }>; }>" + ], + "path": "packages/kbn-investigation-shared/src/rest_specs/get_items.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.getInvestigationItemsResponseSchema", + "type": "Object", + "tags": [], + "label": "getInvestigationItemsResponseSchema", + "description": [], + "signature": [ + "ArrayC", + "<", + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>>" ], - "path": "packages/kbn-investigation-shared/src/schema/find.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get_items.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -573,11 +825,11 @@ "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/get_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get_notes.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -603,7 +855,7 @@ "StringC", "; }>>" ], - "path": "packages/kbn-investigation-shared/src/schema/get_notes.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get_notes.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -619,11 +871,11 @@ "TypeC", "<{ path: ", "TypeC", - "<{ id: ", + "<{ investigationId: ", "StringC", "; }>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/get.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -683,9 +935,95 @@ "NumberC", "; createdBy: ", "StringC", - "; }>>; }>" + "; }>>; items: ", + "ArrayC", + "<", + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>>; }>" ], - "path": "packages/kbn-investigation-shared/src/schema/get.ts", + "path": "packages/kbn-investigation-shared/src/rest_specs/get.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.investigationItemSchema", + "type": "Object", + "tags": [], + "label": "investigationItemSchema", + "description": [], + "signature": [ + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>" + ], + "path": "packages/kbn-investigation-shared/src/schema/investigation_item.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.investigationItemsSchema", + "type": "Object", + "tags": [], + "label": "investigationItemsSchema", + "description": [], + "signature": [ + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>" + ], + "path": "packages/kbn-investigation-shared/src/schema/investigation_item.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -709,10 +1047,120 @@ "StringC", "; }>" ], + "path": "packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.investigationNoteSchema", + "type": "Object", + "tags": [], + "label": "investigationNoteSchema", + "description": [], + "signature": [ + "TypeC", + "<{ id: ", + "StringC", + "; content: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>" + ], "path": "packages/kbn-investigation-shared/src/schema/investigation_note.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/investigation-shared", + "id": "def-common.investigationSchema", + "type": "Object", + "tags": [], + "label": "investigationSchema", + "description": [], + "signature": [ + "TypeC", + "<{ id: ", + "StringC", + "; title: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; params: ", + "TypeC", + "<{ timeRange: ", + "TypeC", + "<{ from: ", + "NumberC", + "; to: ", + "NumberC", + "; }>; }>; origin: ", + "UnionC", + "<[", + "TypeC", + "<{ type: ", + "LiteralC", + "<\"alert\">; id: ", + "StringC", + "; }>, ", + "TypeC", + "<{ type: ", + "LiteralC", + "<\"blank\">; }>]>; status: ", + "UnionC", + "<[", + "LiteralC", + "<\"ongoing\">, ", + "LiteralC", + "<\"closed\">]>; notes: ", + "ArrayC", + "<", + "TypeC", + "<{ id: ", + "StringC", + "; content: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>>; items: ", + "ArrayC", + "<", + "IntersectionC", + "<[", + "TypeC", + "<{ id: ", + "StringC", + "; createdAt: ", + "NumberC", + "; createdBy: ", + "StringC", + "; }>, ", + "TypeC", + "<{ title: ", + "StringC", + "; type: ", + "LiteralC", + "<\"esql\">; params: ", + "TypeC", + "<{ esql: ", + "StringC", + "; suggestion: ", + "AnyC", + "; }>; }>]>>; }>" + ], + "path": "packages/kbn-investigation-shared/src/schema/investigation.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false } ] } diff --git a/api_docs/kbn_investigation_shared.mdx b/api_docs/kbn_investigation_shared.mdx index a62c87f7e1538..00114dcedb219 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-08-21 +date: 2024-08-23 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 | |-------------------|-----------|------------------------|-----------------| -| 29 | 0 | 29 | 0 | +| 41 | 0 | 41 | 0 | ## Common diff --git a/api_docs/kbn_io_ts_utils.mdx b/api_docs/kbn_io_ts_utils.mdx index d991b845e7349..939696fd3275f 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-08-21 +date: 2024-08-23 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 69d313b1775cd..4c18ec4b8a35d 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-08-21 +date: 2024-08-23 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 f2c5dec02ccad..67886fcfe5bc0 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-08-21 +date: 2024-08-23 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 6d56ec23f7a4b..a4b0e3eb31fba 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-08-21 +date: 2024-08-23 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 1f16c60877a9a..86760b2d5710c 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-08-21 +date: 2024-08-23 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 1a84d52dba344..84200c0b540a3 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-08-21 +date: 2024-08-23 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 8a781f99900fa..0432d74e5d202 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_language_documentation_popover.mdx index 44bd0e3c912cc..4da72c69beebe 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/language-documentation-popover'] --- import kbnLanguageDocumentationPopoverObj from './kbn_language_documentation_popover.devdocs.json'; diff --git a/api_docs/kbn_lens_embeddable_utils.mdx b/api_docs/kbn_lens_embeddable_utils.mdx index cf7d14d234ebe..0884f5dccf462 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-08-21 +date: 2024-08-23 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 fc7bb6ceeeb32..4d7ecefbaf477 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-08-21 +date: 2024-08-23 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 204d3d9402017..6bff491c250c3 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-08-21 +date: 2024-08-23 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 dd4e91bc29cb1..ec2301c32e666 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_managed_content_badge.devdocs.json index 9eee12d881aff..c9b58c13a3b94 100644 --- a/api_docs/kbn_managed_content_badge.devdocs.json +++ b/api_docs/kbn_managed_content_badge.devdocs.json @@ -11,9 +11,9 @@ "label": "getManagedContentBadge", "description": [], "signature": [ - "(tooltipText: string) => { 'data-test-subj': string; badgeText: string; title: string; color: string; iconType: string; toolTipProps: ", + "(tooltipText: string, enableTooltipProps?: boolean | undefined) => { 'data-test-subj': string; badgeText: string; title: string; color: string; iconType: string; toolTipProps: ", "EuiToolTipProps", - "; }" + " | undefined; }" ], "path": "packages/kbn-managed-content-badge/index.ts", "deprecated": false, @@ -33,6 +33,21 @@ "deprecated": false, "trackAdoption": false, "isRequired": true + }, + { + "parentPluginId": "@kbn/managed-content-badge", + "id": "def-public.getManagedContentBadge.$2", + "type": "CompoundType", + "tags": [], + "label": "enableTooltipProps", + "description": [], + "signature": [ + "boolean | undefined" + ], + "path": "packages/kbn-managed-content-badge/index.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false } ], "returnComment": [], diff --git a/api_docs/kbn_managed_content_badge.mdx b/api_docs/kbn_managed_content_badge.mdx index 809eaa788b1ab..8c375eae598d1 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/managed-content-badge'] --- import kbnManagedContentBadgeObj from './kbn_managed_content_badge.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/k | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 2 | 0 | 2 | 0 | +| 3 | 0 | 3 | 0 | ## Client diff --git a/api_docs/kbn_managed_vscode_config.mdx b/api_docs/kbn_managed_vscode_config.mdx index 0152b8da013d4..e5c6008ec5b57 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-08-21 +date: 2024-08-23 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 a8fc2087d5be1..a2f231ecb1d21 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-08-21 +date: 2024-08-23 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 83a72ea8fd40b..4bce70ade99e9 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-08-21 +date: 2024-08-23 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 ed86943233656..e7ac38eb898fb 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-08-21 +date: 2024-08-23 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 16a0e3d878970..b0ce6d16b7b40 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-08-21 +date: 2024-08-23 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 d47f1b299512d..d7f9370e5b95c 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-08-21 +date: 2024-08-23 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 b60c4f2806f17..a873740659c9a 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-08-21 +date: 2024-08-23 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 a0a2e356fad31..751b5dedfd861 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_management_settings_ids.mdx index 052f422aea9f8..d42edd3de9a9c 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-08-21 +date: 2024-08-23 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 ef87721c0de44..ae050205e39ee 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-08-21 +date: 2024-08-23 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 3bcc937e3e410..1bb6a08ffe9f6 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-08-21 +date: 2024-08-23 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 205fef980ef4a..b87327074d54b 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-08-21 +date: 2024-08-23 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 0c04a21dfd732..6eb49e28483ba 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-08-21 +date: 2024-08-23 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 1bae9e840d6ec..58a03a60f3477 100644 --- a/api_docs/kbn_mapbox_gl.mdx +++ b/api_docs/kbn_mapbox_gl.mdx @@ -8,7 +8,7 @@ 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/mapbox-gl'] --- import kbnMapboxGlObj from './kbn_mapbox_gl.devdocs.json'; diff --git a/api_docs/kbn_maps_vector_tile_utils.mdx b/api_docs/kbn_maps_vector_tile_utils.mdx index a9d7aec37888e..f3eec66312be9 100644 --- a/api_docs/kbn_maps_vector_tile_utils.mdx +++ b/api_docs/kbn_maps_vector_tile_utils.mdx @@ -8,7 +8,7 @@ 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/maps-vector-tile-utils'] --- import kbnMapsVectorTileUtilsObj from './kbn_maps_vector_tile_utils.devdocs.json'; diff --git a/api_docs/kbn_ml_agg_utils.mdx b/api_docs/kbn_ml_agg_utils.mdx index 1a3efb7accac3..323c24eb64fe6 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_ml_anomaly_utils.mdx index 26ad6c49cb155..190c97438d167 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-08-21 +date: 2024-08-23 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 ec3b94ae724b4..650dc022bce5f 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-08-21 +date: 2024-08-23 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 1365ee99f3d4c..f28c92bccdd5d 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-08-21 +date: 2024-08-23 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 fc01fcee37f57..a676635136e2f 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-08-21 +date: 2024-08-23 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 7b2ea0dbabc4a..b31748d7d63fa 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-08-21 +date: 2024-08-23 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 614722fbb9bce..fb9a745abfce6 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-08-21 +date: 2024-08-23 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 66f732a64b3ff..a0ce2c3363eca 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-08-21 +date: 2024-08-23 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 9cd14ac9b4bc6..c68b4d0ce5f9c 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-08-21 +date: 2024-08-23 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 83cd8b34bdebf..f5cdb6905d12b 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-08-21 +date: 2024-08-23 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 c017904cbee87..ccede0bbd347c 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-08-21 +date: 2024-08-23 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 0fb0204397de8..51d1ff218b1b8 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-08-21 +date: 2024-08-23 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 c47b2dc9f152f..ac91ebde6424e 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-08-21 +date: 2024-08-23 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 f49a64ac4f01b..06666ff5a9130 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-08-21 +date: 2024-08-23 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 ac777c00df98e..9aff4c2c89e31 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-08-21 +date: 2024-08-23 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 873dcbfff4c09..45c572f3ad966 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-08-21 +date: 2024-08-23 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 3f486915b3106..be4b2d3bb0d41 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-08-21 +date: 2024-08-23 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 78f7a6b6de134..4de3e0922d0ed 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-08-21 +date: 2024-08-23 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 6a6564cad8f1a..05b935ae124bb 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-08-21 +date: 2024-08-23 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 768f772fda167..53802452b622b 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-08-21 +date: 2024-08-23 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 de62bcf56ac17..032501da24b38 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-08-21 +date: 2024-08-23 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 38b9c1ba38b24..9012f4734b754 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-08-21 +date: 2024-08-23 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 21d8669fd9e65..5494e0f48311b 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-08-21 +date: 2024-08-23 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 7a85b2eeda960..1d5aec8db1637 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-08-21 +date: 2024-08-23 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 fbda54281dfa7..a0ea7162e6ebb 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-08-21 +date: 2024-08-23 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 78335335b9a06..99267ec1eef8e 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-08-21 +date: 2024-08-23 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 915c39aa0321e..61ad6236ffd63 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_monaco.mdx index 54f1e69eb3b12..f536f915eee8f 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/monaco'] --- import kbnMonacoObj from './kbn_monaco.devdocs.json'; diff --git a/api_docs/kbn_object_versioning.mdx b/api_docs/kbn_object_versioning.mdx index 749c3aa5e6141..80f5f15c88914 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/object-versioning'] --- import kbnObjectVersioningObj from './kbn_object_versioning.devdocs.json'; diff --git a/api_docs/kbn_observability_alert_details.mdx b/api_docs/kbn_observability_alert_details.mdx index d56cf57aea484..3c435da06b324 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-08-21 +date: 2024-08-23 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 b92d597636c5a..5f2b36e00df43 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-08-21 +date: 2024-08-23 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 edff3d9526938..74487dbb1e26c 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-08-21 +date: 2024-08-23 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 d1da2437c2d30..2a69cb9181603 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-08-21 +date: 2024-08-23 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 8c321acc60127..10c3d9080dddd 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-08-21 +date: 2024-08-23 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 dc2c155afa82b..8f8ebf4c05a83 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-08-21 +date: 2024-08-23 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 7547dd809f66f..cd7e584e46cac 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-08-21 +date: 2024-08-23 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 62cb64c63a219..a47312e715cad 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-08-21 +date: 2024-08-23 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 9005cde014e8c..1d1d478e5bf2a 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-08-21 +date: 2024-08-23 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 d702cbb73fce9..eeb34ac211e92 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-08-21 +date: 2024-08-23 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 21af4bcf08414..91a1facd9a015 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-08-21 +date: 2024-08-23 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 b13d09110c9d2..923e0c1a369a1 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-08-21 +date: 2024-08-23 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 41c08ea092f05..0888554bad3b2 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-08-21 +date: 2024-08-23 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 0a6830c8fb582..86708185c11a3 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-08-21 +date: 2024-08-23 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 be820f48d4213..c972b9db39e86 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-08-21 +date: 2024-08-23 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 52ef07872de3d..3669035aecb57 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-08-21 +date: 2024-08-23 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 4b8208ec801fc..d108124b24dae 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-08-21 +date: 2024-08-23 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 b48c3aff3fdac..cb3133473b76f 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-08-21 +date: 2024-08-23 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 11a12d20defec..d69bbf488dce6 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-08-21 +date: 2024-08-23 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 14700c0008272..7e0c63f7903d7 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-08-21 +date: 2024-08-23 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 3443ae98eae68..a31451fdff77d 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-08-21 +date: 2024-08-23 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 c26f75daa6e44..742711ea7df13 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-08-21 +date: 2024-08-23 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 17ba83b6944fc..eaa364840c153 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-08-21 +date: 2024-08-23 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 45080b2fa0255..1510ae5fb08bc 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-08-21 +date: 2024-08-23 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 ef7f9451da1c2..8978384be4b9d 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-08-21 +date: 2024-08-23 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 e15904d1710aa..6e737de92bffc 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-08-21 +date: 2024-08-23 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 79f6902b72e84..412632c3b0179 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-08-21 +date: 2024-08-23 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 34009b23f053b..6690b71909a21 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-08-21 +date: 2024-08-23 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 bed49a2f9fe2d..037b9425a2266 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-08-21 +date: 2024-08-23 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 c57f9af8b04f8..6217c5ee2337d 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-08-21 +date: 2024-08-23 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 0323003e4913f..1792f4f34c251 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-08-21 +date: 2024-08-23 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 39db45a27ef03..84bb85c9576bc 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-08-21 +date: 2024-08-23 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 621d156fc1ec6..5779f65ed4495 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-08-21 +date: 2024-08-23 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 9da77486cb765..df258a3060008 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-08-21 +date: 2024-08-23 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 72ca07192d31b..55ed57f26c2a1 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-08-21 +date: 2024-08-23 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 2350832ee23a3..3db6c8b18236f 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-08-21 +date: 2024-08-23 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 ad2d1aa04617f..96ba168b33972 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-08-21 +date: 2024-08-23 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 53820a9e943c4..d60cf2e162e95 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-08-21 +date: 2024-08-23 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 26afb5f52ea0f..138ea68eab72f 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-08-21 +date: 2024-08-23 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 a3d938a3f872f..b27092487d258 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-08-21 +date: 2024-08-23 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 54a5a7cf11a70..7bc4c52322639 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-08-21 +date: 2024-08-23 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 9cead606c47fb..5e0a407c85708 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-08-21 +date: 2024-08-23 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 8d8869160e79c..6f09bd45a812e 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-08-21 +date: 2024-08-23 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 ac22afed68050..795f9db5861af 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-08-21 +date: 2024-08-23 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 1ac7b6bc1b9a4..03029eea045a8 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-08-21 +date: 2024-08-23 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 9388d51c628d2..01a9638cf1390 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-08-21 +date: 2024-08-23 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 d88317c21dd61..05ad1ba3e2cec 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-08-21 +date: 2024-08-23 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 ed0dcd510d6a5..1b56d5e316cf8 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-08-21 +date: 2024-08-23 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 8bf140040af60..eae1f1a05b050 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-08-21 +date: 2024-08-23 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 0cfe8fb9d0a34..feac2dff9ed64 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-08-21 +date: 2024-08-23 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 911561ed09000..8ad8de87939d4 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_screenshotting_server.devdocs.json new file mode 100644 index 0000000000000..f320f3ca33d1e --- /dev/null +++ b/api_docs/kbn_screenshotting_server.devdocs.json @@ -0,0 +1,806 @@ +{ + "id": "@kbn/screenshotting-server", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths", + "type": "Class", + "tags": [], + "label": "ChromiumArchivePaths", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.packages", + "type": "Array", + "tags": [], + "label": "packages", + "description": [], + "signature": [ + "(CustomPackageInfo | CommonPackageInfo)[]" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.archivesPath", + "type": "string", + "tags": [], + "label": "archivesPath", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.find", + "type": "Function", + "tags": [], + "label": "find", + "description": [], + "signature": [ + "(platform: string, architecture: string, packages?: ", + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + }, + "[]) => ", + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + }, + " | undefined" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.find.$1", + "type": "string", + "tags": [], + "label": "platform", + "description": [], + "signature": [ + "string" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.find.$2", + "type": "string", + "tags": [], + "label": "architecture", + "description": [], + "signature": [ + "string" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.find.$3", + "type": "Array", + "tags": [], + "label": "packages", + "description": [], + "signature": [ + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + }, + "[]" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.resolvePath", + "type": "Function", + "tags": [], + "label": "resolvePath", + "description": [], + "signature": [ + "(p: ", + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + }, + ") => string" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.resolvePath.$1", + "type": "Object", + "tags": [], + "label": "p", + "description": [], + "signature": [ + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + } + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.getAllArchiveFilenames", + "type": "Function", + "tags": [], + "label": "getAllArchiveFilenames", + "description": [], + "signature": [ + "() => string[]" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.getDownloadUrl", + "type": "Function", + "tags": [], + "label": "getDownloadUrl", + "description": [], + "signature": [ + "(p: ", + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + }, + ") => string" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.getDownloadUrl.$1", + "type": "Object", + "tags": [], + "label": "p", + "description": [], + "signature": [ + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + } + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.getBinaryPath", + "type": "Function", + "tags": [], + "label": "getBinaryPath", + "description": [], + "signature": [ + "(p: ", + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + }, + ", chromiumPath: string) => string" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.getBinaryPath.$1", + "type": "Object", + "tags": [], + "label": "p", + "description": [], + "signature": [ + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + } + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ChromiumArchivePaths.getBinaryPath.$2", + "type": "string", + "tags": [], + "label": "chromiumPath", + "description": [], + "signature": [ + "string" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "functions": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.args", + "type": "Function", + "tags": [], + "label": "args", + "description": [], + "signature": [ + "({ userDataDir, disableSandbox, windowSize, proxy: proxyConfig, }: LaunchArgs) => string[]" + ], + "path": "packages/kbn-screenshotting-server/src/args.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.args.$1", + "type": "Object", + "tags": [], + "label": "{\n userDataDir,\n disableSandbox,\n windowSize,\n proxy: proxyConfig,\n}", + "description": [], + "signature": [ + "LaunchArgs" + ], + "path": "packages/kbn-screenshotting-server/src/args.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.createConfig", + "type": "Function", + "tags": [], + "label": "createConfig", + "description": [], + "signature": [ + "(parentLogger: ", + { + "pluginId": "@kbn/logging", + "scope": "common", + "docId": "kibKbnLoggingPluginApi", + "section": "def-common.Logger", + "text": "Logger" + }, + ", config: Readonly<{} & { enabled: boolean; capture: Readonly<{ loadDelay?: number | moment.Duration | undefined; } & { zoom: number; timeouts: Readonly<{} & { renderComplete: number | moment.Duration; openUrl: number | moment.Duration; waitForElements: number | moment.Duration; }>; }>; browser: Readonly<{} & { autoDownload: boolean; chromium: Readonly<{ inspect?: boolean | undefined; disableSandbox?: boolean | undefined; } & { proxy: Readonly<{ server?: string | undefined; bypass?: string[] | undefined; } & { enabled: boolean; }>; }>; }>; networkPolicy: Readonly<{} & { enabled: boolean; rules: Readonly<{ host?: string | undefined; protocol?: string | undefined; } & { allow: boolean; }>[]; }>; poolSize: number; }>) => Promise; }>; browser: Readonly<{} & { autoDownload: boolean; chromium: Readonly<{ inspect?: boolean | undefined; disableSandbox?: boolean | undefined; } & { proxy: Readonly<{ server?: string | undefined; bypass?: string[] | undefined; } & { enabled: boolean; }>; }>; }>; networkPolicy: Readonly<{} & { enabled: boolean; rules: Readonly<{ host?: string | undefined; protocol?: string | undefined; } & { allow: boolean; }>[]; }>; poolSize: number; }>>" + ], + "path": "packages/kbn-screenshotting-server/src/config/create_config.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.createConfig.$1", + "type": "Object", + "tags": [], + "label": "parentLogger", + "description": [], + "signature": [ + { + "pluginId": "@kbn/logging", + "scope": "common", + "docId": "kibKbnLoggingPluginApi", + "section": "def-common.Logger", + "text": "Logger" + } + ], + "path": "packages/kbn-screenshotting-server/src/config/create_config.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.createConfig.$2", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "signature": [ + "Readonly<{} & { enabled: boolean; capture: Readonly<{ loadDelay?: number | moment.Duration | undefined; } & { zoom: number; timeouts: Readonly<{} & { renderComplete: number | moment.Duration; openUrl: number | moment.Duration; waitForElements: number | moment.Duration; }>; }>; browser: Readonly<{} & { autoDownload: boolean; chromium: Readonly<{ inspect?: boolean | undefined; disableSandbox?: boolean | undefined; } & { proxy: Readonly<{ server?: string | undefined; bypass?: string[] | undefined; } & { enabled: boolean; }>; }>; }>; networkPolicy: Readonly<{} & { enabled: boolean; rules: Readonly<{ host?: string | undefined; protocol?: string | undefined; } & { allow: boolean; }>[]; }>; poolSize: number; }>" + ], + "path": "packages/kbn-screenshotting-server/src/config/create_config.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.durationToNumber", + "type": "Function", + "tags": [], + "label": "durationToNumber", + "description": [ + "\nHelper function" + ], + "signature": [ + "(value: number | moment.Duration) => number" + ], + "path": "packages/kbn-screenshotting-server/src/config/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.durationToNumber.$1", + "type": "CompoundType", + "tags": [], + "label": "value", + "description": [], + "signature": [ + "number | moment.Duration" + ], + "path": "packages/kbn-screenshotting-server/src/config/index.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.getChromiumPackage", + "type": "Function", + "tags": [], + "label": "getChromiumPackage", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/screenshotting-server", + "scope": "server", + "docId": "kibKbnScreenshottingServerPluginApi", + "section": "def-server.PackageInfo", + "text": "PackageInfo" + } + ], + "path": "packages/kbn-screenshotting-server/src/get_chromium_package.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [], + "initialIsOpen": false + } + ], + "interfaces": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo", + "type": "Interface", + "tags": [], + "label": "PackageInfo", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.platform", + "type": "CompoundType", + "tags": [], + "label": "platform", + "description": [], + "signature": [ + "\"linux\" | \"darwin\" | \"win32\"" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.architecture", + "type": "CompoundType", + "tags": [], + "label": "architecture", + "description": [], + "signature": [ + "\"x64\" | \"arm64\"" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.archiveFilename", + "type": "string", + "tags": [], + "label": "archiveFilename", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.archiveChecksum", + "type": "string", + "tags": [], + "label": "archiveChecksum", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.binaryChecksum", + "type": "string", + "tags": [], + "label": "binaryChecksum", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.binaryRelativePath", + "type": "string", + "tags": [], + "label": "binaryRelativePath", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.isPreInstalled", + "type": "boolean", + "tags": [], + "label": "isPreInstalled", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.location", + "type": "CompoundType", + "tags": [], + "label": "location", + "description": [], + "signature": [ + "\"custom\" | \"common\"" + ], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.PackageInfo.revision", + "type": "number", + "tags": [], + "label": "revision", + "description": [], + "path": "packages/kbn-screenshotting-server/src/paths.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ConfigType", + "type": "Type", + "tags": [], + "label": "ConfigType", + "description": [], + "signature": [ + "{ readonly enabled: boolean; readonly capture: Readonly<{ loadDelay?: number | moment.Duration | undefined; } & { zoom: number; timeouts: Readonly<{} & { renderComplete: number | moment.Duration; openUrl: number | moment.Duration; waitForElements: number | moment.Duration; }>; }>; readonly browser: Readonly<{} & { autoDownload: boolean; chromium: Readonly<{ inspect?: boolean | undefined; disableSandbox?: boolean | undefined; } & { proxy: Readonly<{ server?: string | undefined; bypass?: string[] | undefined; } & { enabled: boolean; }>; }>; }>; readonly networkPolicy: Readonly<{} & { enabled: boolean; rules: Readonly<{ host?: string | undefined; protocol?: string | undefined; } & { allow: boolean; }>[]; }>; readonly poolSize: number; }" + ], + "path": "packages/kbn-screenshotting-server/src/config/schema.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + } + ], + "objects": [ + { + "parentPluginId": "@kbn/screenshotting-server", + "id": "def-server.ConfigSchema", + "type": "Object", + "tags": [], + "label": "ConfigSchema", + "description": [], + "signature": [ + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ enabled: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ConditionalType", + "text": "ConditionalType" + }, + "; networkPolicy: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ enabled: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; rules: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "[]>; }>; browser: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ autoDownload: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ConditionalType", + "text": "ConditionalType" + }, + "; chromium: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ inspect: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ConditionalType", + "text": "ConditionalType" + }, + "; disableSandbox: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; proxy: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ enabled: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; server: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ConditionalType", + "text": "ConditionalType" + }, + "; bypass: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ConditionalType", + "text": "ConditionalType" + }, + "; }>; }>; }>; capture: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ timeouts: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ openUrl: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; waitForElements: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; renderComplete: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; }>; zoom: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; loadDelay: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; }>; poolSize: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; }>" + ], + "path": "packages/kbn-screenshotting-server/src/config/schema.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_screenshotting_server.mdx b/api_docs/kbn_screenshotting_server.mdx new file mode 100644 index 0000000000000..12c57a959b5c0 --- /dev/null +++ b/api_docs/kbn_screenshotting_server.mdx @@ -0,0 +1,42 @@ +--- +#### +#### 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: kibKbnScreenshottingServerPluginApi +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-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/screenshotting-server'] +--- +import kbnScreenshottingServerObj from './kbn_screenshotting_server.devdocs.json'; + + + +Contact [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 35 | 0 | 34 | 0 | + +## Server + +### Objects + + +### Functions + + +### Classes + + +### Interfaces + + +### Consts, variables and types + + diff --git a/api_docs/kbn_search_api_panels.mdx b/api_docs/kbn_search_api_panels.mdx index 0a55e1202f858..c4361738cdf67 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-08-21 +date: 2024-08-23 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 953bb3008f950..96dbe8adacaf2 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-08-21 +date: 2024-08-23 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 3d7214443c301..a4ca5f1ac69fc 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_search_index_documents.mdx index 222eb1298f972..908d0a740ebd2 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-index-documents'] --- import kbnSearchIndexDocumentsObj from './kbn_search_index_documents.devdocs.json'; diff --git a/api_docs/kbn_search_response_warnings.mdx b/api_docs/kbn_search_response_warnings.mdx index 675519dbee5b0..dc2361bcb7301 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-08-21 +date: 2024-08-23 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 4d475339d0a99..ebcf9f7900675 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-08-21 +date: 2024-08-23 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 59f73471533fa..9d7c8b27af6db 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_security_authorization_core.devdocs.json new file mode 100644 index 0000000000000..75a43d937d9f0 --- /dev/null +++ b/api_docs/kbn_security_authorization_core.devdocs.json @@ -0,0 +1,468 @@ +{ + "id": "@kbn/security-authorization-core", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions", + "type": "Class", + "tags": [], + "label": "Actions", + "description": [ + "Actions are used to create the \"actions\" that are associated with Elasticsearch's\napplication privileges, and are used to perform the authorization checks implemented\nby the various `checkPrivilegesWithRequest` derivatives." + ], + "signature": [ + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.Actions", + "text": "Actions" + }, + " implements ", + { + "pluginId": "@kbn/security-plugin-types-server", + "scope": "server", + "docId": "kibKbnSecurityPluginTypesServerPluginApi", + "section": "def-server.Actions", + "text": "Actions" + } + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.api", + "type": "Object", + "tags": [], + "label": "api", + "description": [], + "signature": [ + "ApiActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.app", + "type": "Object", + "tags": [], + "label": "app", + "description": [], + "signature": [ + "AppActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.cases", + "type": "Object", + "tags": [], + "label": "cases", + "description": [], + "signature": [ + "CasesActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.login", + "type": "string", + "tags": [], + "label": "login", + "description": [], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.savedObject", + "type": "Object", + "tags": [], + "label": "savedObject", + "description": [], + "signature": [ + "SavedObjectActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.alerting", + "type": "Object", + "tags": [], + "label": "alerting", + "description": [], + "signature": [ + "AlertingActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.space", + "type": "Object", + "tags": [], + "label": "space", + "description": [], + "signature": [ + "SpaceActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.ui", + "type": "Object", + "tags": [], + "label": "ui", + "description": [], + "signature": [ + "UIActions" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.Actions.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/authorization_core/src/actions/actions.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false + } + ], + "functions": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.privilegesFactory", + "type": "Function", + "tags": [], + "label": "privilegesFactory", + "description": [], + "signature": [ + "(actions: ", + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.Actions", + "text": "Actions" + }, + ", featuresService: ", + { + "pluginId": "features", + "scope": "server", + "docId": "kibFeaturesPluginApi", + "section": "def-server.FeaturesPluginSetup", + "text": "FeaturesPluginSetup" + }, + ", licenseService: Pick<", + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.SecurityLicense", + "text": "SecurityLicense" + }, + ", \"getFeatures\" | \"hasAtLeast\">) => { get(respectLicenseLevel?: boolean): { features: Record>; global: { all: string[]; read: string[]; }; space: { all: string[]; read: string[]; }; reserved: Record; }; }" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.privilegesFactory.$1", + "type": "Object", + "tags": [], + "label": "actions", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.Actions", + "text": "Actions" + } + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.privilegesFactory.$2", + "type": "Object", + "tags": [], + "label": "featuresService", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "server", + "docId": "kibFeaturesPluginApi", + "section": "def-server.FeaturesPluginSetup", + "text": "FeaturesPluginSetup" + } + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.privilegesFactory.$3", + "type": "Object", + "tags": [], + "label": "licenseService", + "description": [], + "signature": [ + "Pick<", + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.SecurityLicense", + "text": "SecurityLicense" + }, + ", \"getFeatures\" | \"hasAtLeast\">" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + } + ], + "interfaces": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.PrivilegesService", + "type": "Interface", + "tags": [], + "label": "PrivilegesService", + "description": [], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.PrivilegesService.get", + "type": "Function", + "tags": [], + "label": "get", + "description": [], + "signature": [ + "(respectLicenseLevel?: boolean | undefined) => ", + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.RawKibanaPrivileges", + "text": "RawKibanaPrivileges" + } + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.PrivilegesService.get.$1", + "type": "CompoundType", + "tags": [], + "label": "respectLicenseLevel", + "description": [], + "signature": [ + "boolean | undefined" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaFeaturePrivileges", + "type": "Interface", + "tags": [], + "label": "RawKibanaFeaturePrivileges", + "description": [], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaFeaturePrivileges.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[featureId: string]: { [privilegeId: string]: string[]; }", + "description": [], + "signature": [ + "[featureId: string]: { [privilegeId: string]: string[]; }" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaPrivileges", + "type": "Interface", + "tags": [], + "label": "RawKibanaPrivileges", + "description": [], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaPrivileges.global", + "type": "Object", + "tags": [], + "label": "global", + "description": [], + "signature": [ + "{ [x: string]: string[]; }" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaPrivileges.features", + "type": "Object", + "tags": [], + "label": "features", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.RawKibanaFeaturePrivileges", + "text": "RawKibanaFeaturePrivileges" + } + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaPrivileges.space", + "type": "Object", + "tags": [], + "label": "space", + "description": [], + "signature": [ + "{ [x: string]: string[]; }" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.RawKibanaPrivileges.reserved", + "type": "Object", + "tags": [], + "label": "reserved", + "description": [], + "signature": [ + "{ [x: string]: string[]; }" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "enums": [], + "misc": [ + { + "parentPluginId": "@kbn/security-authorization-core", + "id": "def-server.CasesSupportedOperations", + "type": "Type", + "tags": [], + "label": "CasesSupportedOperations", + "description": [], + "signature": [ + "\"getTags\" | \"pushCase\" | \"createCase\" | \"createComment\" | \"getCase\" | \"getComment\" | \"getReporters\" | \"getUserActions\" | \"findConfigurations\" | \"updateCase\" | \"updateComment\" | \"deleteCase\" | \"deleteComment\" | \"createConfiguration\" | \"updateConfiguration\"" + ], + "path": "x-pack/packages/security/authorization_core/src/privileges/feature_privilege_builder/cases.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_security_authorization_core.mdx b/api_docs/kbn_security_authorization_core.mdx new file mode 100644 index 0000000000000..badff5202e268 --- /dev/null +++ b/api_docs/kbn_security_authorization_core.mdx @@ -0,0 +1,39 @@ +--- +#### +#### 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: kibKbnSecurityAuthorizationCorePluginApi +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-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-authorization-core'] +--- +import kbnSecurityAuthorizationCoreObj from './kbn_security_authorization_core.devdocs.json'; + + + +Contact [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 25 | 0 | 24 | 7 | + +## Server + +### Functions + + +### Classes + + +### Interfaces + + +### Consts, variables and types + + diff --git a/api_docs/kbn_security_form_components.mdx b/api_docs/kbn_security_form_components.mdx index e7d10f1143dbc..030d2324fe4ba 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-08-21 +date: 2024-08-23 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 f4785fed7ee8e..fa82b3e9bcfb5 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-08-21 +date: 2024-08-23 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 14f119c67a2ec..39d351ade594d 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-08-21 +date: 2024-08-23 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 5e7780e51fcbc..80c809cc7dd3a 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_security_plugin_types_server.mdx index 9c68c81026691..a2acfc49e4148 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_security_role_management_model.devdocs.json new file mode 100644 index 0000000000000..7182dd6e7bd9c --- /dev/null +++ b/api_docs/kbn_security_role_management_model.devdocs.json @@ -0,0 +1,1489 @@ +{ + "id": "@kbn/security-role-management-model", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege", + "type": "Class", + "tags": [], + "label": "KibanaPrivilege", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege.Unnamed.$1", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege.Unnamed.$2", + "type": "Array", + "tags": [], + "label": "actions", + "description": [], + "signature": [ + "string[]" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege.name", + "type": "string", + "tags": [], + "label": "name", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege.grantsPrivilege", + "type": "Function", + "tags": [], + "label": "grantsPrivilege", + "description": [], + "signature": [ + "(candidatePrivilege: ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + }, + ") => boolean" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivilege.grantsPrivilege.$1", + "type": "Object", + "tags": [], + "label": "candidatePrivilege", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges", + "type": "Class", + "tags": [], + "label": "KibanaPrivileges", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "rawKibanaPrivileges", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.RawKibanaPrivileges", + "text": "RawKibanaPrivileges" + } + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.Unnamed.$2", + "type": "Array", + "tags": [], + "label": "features", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.KibanaFeature", + "text": "KibanaFeature" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.getBasePrivileges", + "type": "Function", + "tags": [], + "label": "getBasePrivileges", + "description": [], + "signature": [ + "(entry: ", + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.RoleKibanaPrivilege", + "text": "RoleKibanaPrivilege" + }, + ") => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.getBasePrivileges.$1", + "type": "Object", + "tags": [], + "label": "entry", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.RoleKibanaPrivilege", + "text": "RoleKibanaPrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.getSecuredFeature", + "type": "Function", + "tags": [], + "label": "getSecuredFeature", + "description": [], + "signature": [ + "(featureId: string) => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredFeature", + "text": "SecuredFeature" + } + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.getSecuredFeature.$1", + "type": "string", + "tags": [], + "label": "featureId", + "description": [], + "signature": [ + "string" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.getSecuredFeatures", + "type": "Function", + "tags": [], + "label": "getSecuredFeatures", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredFeature", + "text": "SecuredFeature" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.createCollectionFromRoleKibanaPrivileges", + "type": "Function", + "tags": [], + "label": "createCollectionFromRoleKibanaPrivileges", + "description": [], + "signature": [ + "(roleKibanaPrivileges: ", + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.RoleKibanaPrivilege", + "text": "RoleKibanaPrivilege" + }, + "[]) => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.PrivilegeCollection", + "text": "PrivilegeCollection" + } + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.KibanaPrivileges.createCollectionFromRoleKibanaPrivileges.$1", + "type": "Array", + "tags": [], + "label": "roleKibanaPrivileges", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.RoleKibanaPrivilege", + "text": "RoleKibanaPrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege", + "type": "Class", + "tags": [], + "label": "PrimaryFeaturePrivilege", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.PrimaryFeaturePrivilege", + "text": "PrimaryFeaturePrivilege" + }, + " extends ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.Unnamed.$1", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.Unnamed.$2", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.FeatureKibanaPrivileges", + "text": "FeatureKibanaPrivileges" + } + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.Unnamed.$3", + "type": "Array", + "tags": [], + "label": "actions", + "description": [], + "signature": [ + "string[]" + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.isMinimalFeaturePrivilege", + "type": "Function", + "tags": [], + "label": "isMinimalFeaturePrivilege", + "description": [], + "signature": [ + "() => boolean" + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.getMinimalPrivilegeId", + "type": "Function", + "tags": [], + "label": "getMinimalPrivilegeId", + "description": [], + "signature": [ + "() => string" + ], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.requireAllSpaces", + "type": "boolean", + "tags": [], + "label": "requireAllSpaces", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrimaryFeaturePrivilege.disabled", + "type": "boolean", + "tags": [], + "label": "disabled", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/primary_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrivilegeCollection", + "type": "Class", + "tags": [], + "label": "PrivilegeCollection", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/privilege_collection.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrivilegeCollection.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/privilege_collection.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrivilegeCollection.Unnamed.$1", + "type": "Array", + "tags": [], + "label": "privileges", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/privilege_collection.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrivilegeCollection.grantsPrivilege", + "type": "Function", + "tags": [], + "label": "grantsPrivilege", + "description": [], + "signature": [ + "(privilege: ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + }, + ") => boolean" + ], + "path": "x-pack/packages/security/role_management_model/src/privilege_collection.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.PrivilegeCollection.grantsPrivilege.$1", + "type": "Object", + "tags": [], + "label": "privilege", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/privilege_collection.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature", + "type": "Class", + "tags": [], + "label": "SecuredFeature", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredFeature", + "text": "SecuredFeature" + }, + " extends ", + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.KibanaFeature", + "text": "KibanaFeature" + } + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.KibanaFeatureConfig", + "text": "KibanaFeatureConfig" + } + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.Unnamed.$2", + "type": "Object", + "tags": [], + "label": "actionMapping", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.Unnamed.$2.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[privilegeId: string]: string[]", + "description": [], + "signature": [ + "[privilegeId: string]: string[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getPrivilegesTooltip", + "type": "Function", + "tags": [], + "label": "getPrivilegesTooltip", + "description": [], + "signature": [ + "() => string | undefined" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getAllPrivileges", + "type": "Function", + "tags": [], + "label": "getAllPrivileges", + "description": [], + "signature": [ + "() => (", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.PrimaryFeaturePrivilege", + "text": "PrimaryFeaturePrivilege" + }, + " | ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + ")[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getPrimaryFeaturePrivileges", + "type": "Function", + "tags": [], + "label": "getPrimaryFeaturePrivileges", + "description": [], + "signature": [ + "({ includeMinimalFeaturePrivileges }?: { includeMinimalFeaturePrivileges: boolean; }) => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.PrimaryFeaturePrivilege", + "text": "PrimaryFeaturePrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getPrimaryFeaturePrivileges.$1", + "type": "Object", + "tags": [], + "label": "{ includeMinimalFeaturePrivileges }", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getPrimaryFeaturePrivileges.$1.includeMinimalFeaturePrivileges", + "type": "boolean", + "tags": [], + "label": "includeMinimalFeaturePrivileges", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getMinimalFeaturePrivileges", + "type": "Function", + "tags": [], + "label": "getMinimalFeaturePrivileges", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.PrimaryFeaturePrivilege", + "text": "PrimaryFeaturePrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getSubFeaturePrivileges", + "type": "Function", + "tags": [], + "label": "getSubFeaturePrivileges", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredFeature.getSubFeatures", + "type": "Function", + "tags": [], + "label": "getSubFeatures", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredSubFeature", + "text": "SecuredSubFeature" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature", + "type": "Class", + "tags": [], + "label": "SecuredSubFeature", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredSubFeature", + "text": "SecuredSubFeature" + }, + " extends ", + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.SubFeature", + "text": "SubFeature" + } + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privileges", + "type": "Array", + "tags": [], + "label": "privileges", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privilegesTooltip", + "type": "string", + "tags": [], + "label": "privilegesTooltip", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.SubFeatureConfig", + "text": "SubFeatureConfig" + } + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.Unnamed.$2", + "type": "Object", + "tags": [], + "label": "actionMapping", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.Unnamed.$2.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[privilegeId: string]: string[]", + "description": [], + "signature": [ + "[privilegeId: string]: string[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.getPrivilegeGroups", + "type": "Function", + "tags": [], + "label": "getPrivilegeGroups", + "description": [], + "signature": [ + "() => ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilegeGroup", + "text": "SubFeaturePrivilegeGroup" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privilegeIterator", + "type": "Function", + "tags": [], + "label": "privilegeIterator", + "description": [], + "signature": [ + "({ predicate, }?: { predicate?: ((privilege: ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + ", feature: ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredSubFeature", + "text": "SecuredSubFeature" + }, + ") => boolean) | undefined; }) => IterableIterator<", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + ">" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privilegeIterator.$1", + "type": "Object", + "tags": [], + "label": "{\n predicate = () => true,\n }", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privilegeIterator.$1.predicate", + "type": "Function", + "tags": [], + "label": "predicate", + "description": [], + "signature": [ + "((privilege: ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + ", feature: ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredSubFeature", + "text": "SecuredSubFeature" + }, + ") => boolean) | undefined" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privilegeIterator.$1.predicate.$1", + "type": "Object", + "tags": [], + "label": "privilege", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.privilegeIterator.$1.predicate.$2", + "type": "Object", + "tags": [], + "label": "feature", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SecuredSubFeature", + "text": "SecuredSubFeature" + } + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ] + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SecuredSubFeature.getDescription", + "type": "Function", + "tags": [], + "label": "getDescription", + "description": [], + "signature": [ + "() => string" + ], + "path": "x-pack/packages/security/role_management_model/src/secured_sub_feature.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege", + "type": "Class", + "tags": [], + "label": "SubFeaturePrivilege", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + " extends ", + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.KibanaPrivilege", + "text": "KibanaPrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "subPrivilegeConfig", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.SubFeaturePrivilegeConfig", + "text": "SubFeaturePrivilegeConfig" + } + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege.Unnamed.$2", + "type": "Array", + "tags": [], + "label": "actions", + "description": [], + "signature": [ + "string[]" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege.name", + "type": "string", + "tags": [], + "label": "name", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege.disabled", + "type": "CompoundType", + "tags": [], + "label": "disabled", + "description": [], + "signature": [ + "boolean | undefined" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilege.requireAllSpaces", + "type": "boolean", + "tags": [], + "label": "requireAllSpaces", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup", + "type": "Class", + "tags": [], + "label": "SubFeaturePrivilegeGroup", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup.Unnamed", + "type": "Function", + "tags": [], + "label": "Constructor", + "description": [], + "signature": [ + "any" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup.Unnamed.$1", + "type": "Object", + "tags": [], + "label": "config", + "description": [], + "signature": [ + { + "pluginId": "features", + "scope": "common", + "docId": "kibFeaturesPluginApi", + "section": "def-common.SubFeaturePrivilegeGroupConfig", + "text": "SubFeaturePrivilegeGroupConfig" + } + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup.Unnamed.$2", + "type": "Object", + "tags": [], + "label": "actionMapping", + "description": [], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup.Unnamed.$2.Unnamed", + "type": "IndexSignature", + "tags": [], + "label": "[privilegeId: string]: string[]", + "description": [], + "signature": [ + "[privilegeId: string]: string[]" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], + "returnComment": [] + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup.groupType", + "type": "CompoundType", + "tags": [], + "label": "groupType", + "description": [], + "signature": [ + "\"mutually_exclusive\" | \"independent\"" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.SubFeaturePrivilegeGroup.privileges", + "type": "Array", + "tags": [], + "label": "privileges", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-role-management-model", + "scope": "common", + "docId": "kibKbnSecurityRoleManagementModelPluginApi", + "section": "def-common.SubFeaturePrivilege", + "text": "SubFeaturePrivilege" + }, + "[]" + ], + "path": "x-pack/packages/security/role_management_model/src/sub_feature_privilege_group.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], + "functions": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.isGlobalPrivilegeDefinition", + "type": "Function", + "tags": [], + "label": "isGlobalPrivilegeDefinition", + "description": [ + "\nDetermines if the passed privilege spec defines global privileges." + ], + "signature": [ + "(privilegeSpec: ", + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.RoleKibanaPrivilege", + "text": "RoleKibanaPrivilege" + }, + ") => boolean" + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/security-role-management-model", + "id": "def-common.isGlobalPrivilegeDefinition.$1", + "type": "Object", + "tags": [], + "label": "privilegeSpec", + "description": [], + "signature": [ + { + "pluginId": "@kbn/security-plugin-types-common", + "scope": "common", + "docId": "kibKbnSecurityPluginTypesCommonPluginApi", + "section": "def-common.RoleKibanaPrivilege", + "text": "RoleKibanaPrivilege" + } + ], + "path": "x-pack/packages/security/role_management_model/src/kibana_privileges.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + } + ], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_security_role_management_model.mdx b/api_docs/kbn_security_role_management_model.mdx new file mode 100644 index 0000000000000..531a52a37c5cd --- /dev/null +++ b/api_docs/kbn_security_role_management_model.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: kibKbnSecurityRoleManagementModelPluginApi +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-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/security-role-management-model'] +--- +import kbnSecurityRoleManagementModelObj from './kbn_security_role_management_model.devdocs.json'; + + + +Contact [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 75 | 0 | 74 | 0 | + +## Common + +### Functions + + +### Classes + + diff --git a/api_docs/kbn_security_solution_distribution_bar.mdx b/api_docs/kbn_security_solution_distribution_bar.mdx index 278b84dfac104..31306e2d72aab 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-08-21 +date: 2024-08-23 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 7a53304353668..31137a5d7d719 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-08-21 +date: 2024-08-23 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 1ffc44303ab4f..eb519bebe55ae 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-08-21 +date: 2024-08-23 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 9173fb2788412..2258cc7d71131 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-08-21 +date: 2024-08-23 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 bc0eea8367c75..ac60145edc58d 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-08-21 +date: 2024-08-23 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_securitysolution_autocomplete.mdx b/api_docs/kbn_securitysolution_autocomplete.mdx index 5666f2cf57549..4950f118e8ee7 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-08-21 +date: 2024-08-23 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 6f16c1747d5fd..5061443dec2a1 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-08-21 +date: 2024-08-23 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 14ffa1447d3a9..c58ff670ae158 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-08-21 +date: 2024-08-23 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 d1917c6606aca..6898b0286e09d 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-08-21 +date: 2024-08-23 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 fa61ae7f0558f..c74cbf9537ed0 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\" | \"path\" | \"code\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"form\" | \"line\" | \"rect\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" + "\"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\" | \"line\" | \"rect\" | \"code\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" ], "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\" | \"path\" | \"code\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"form\" | \"line\" | \"rect\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" + "\"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\" | \"line\" | \"rect\" | \"code\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" ], "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\" | \"path\" | \"code\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"form\" | \"line\" | \"rect\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" + "\"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\" | \"line\" | \"rect\" | \"code\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" ], "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\" | \"path\" | \"code\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"form\" | \"line\" | \"rect\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" + "\"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\" | \"line\" | \"rect\" | \"code\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" ], "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\" | \"path\" | \"code\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"q\" | \"body\" | \"html\" | \"stop\" | \"main\" | \"form\" | \"line\" | \"rect\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" + "\"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\" | \"line\" | \"rect\" | \"code\" | \"label\" | \"progress\" | \"article\" | \"image\" | \"menu\" | \"base\" | React.ComponentType | \"s\" | \"legend\" | \"canvas\" | \"svg\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"select\" | \"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\" | \"ruby\" | \"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\" | \"metadata\" | \"mpath\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\" | \"view\"" ], "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 5de45f87985c7..ef96444422ce2 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-08-21 +date: 2024-08-23 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 13792167dd3e3..7278c5f686b04 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-08-21 +date: 2024-08-23 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 541df0a28e1a7..390a0ec22753f 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-08-21 +date: 2024-08-23 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 d9e9fd7c027e1..224cf584847f1 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-08-21 +date: 2024-08-23 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 8a535c6146e86..318bb58a09648 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-08-21 +date: 2024-08-23 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 278313065386b..74ee5ce8c2bfd 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-08-21 +date: 2024-08-23 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 4e41c7d4a68c5..657f5f85e2391 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-08-21 +date: 2024-08-23 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 324d21dbb3445..c99f66064bee1 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-08-21 +date: 2024-08-23 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 a70620893f5a5..e9174cdd344dc 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-08-21 +date: 2024-08-23 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 ad048a771e38b..d7d376d363d78 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-08-21 +date: 2024-08-23 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 d90b7a297a4ef..608ec97b54c9e 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-08-21 +date: 2024-08-23 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 151039f93bdd5..aa444eabe5931 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-08-21 +date: 2024-08-23 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 58072807f23fc..831e018a82546 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-08-21 +date: 2024-08-23 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 562f92376a4bb..9921697008aad 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-08-21 +date: 2024-08-23 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 93d27fa11e926..5b09548b80c89 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-08-21 +date: 2024-08-23 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 2967f6f57d06a..a734378af95b4 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_server_route_repository_utils.devdocs.json index 8795640805fec..b5c3169828c1a 100644 --- a/api_docs/kbn_server_route_repository_utils.devdocs.json +++ b/api_docs/kbn_server_route_repository_utils.devdocs.json @@ -596,7 +596,7 @@ "label": "ZodParamsObject", "description": [], "signature": [ - "Zod.ZodObject<{ path?: any; query?: any; body?: any; }, Zod.UnknownKeysParam, Zod.ZodTypeAny, { query?: any; path?: any; body?: any; }, { query?: any; path?: any; body?: any; }>" + "Zod.ZodObject<{ path?: any; query?: any; body?: any; }, Zod.UnknownKeysParam, Zod.ZodTypeAny, { query?: any; body?: any; path?: any; }, { query?: any; body?: any; path?: any; }>" ], "path": "packages/kbn-server-route-repository-utils/src/typings.ts", "deprecated": false, diff --git a/api_docs/kbn_server_route_repository_utils.mdx b/api_docs/kbn_server_route_repository_utils.mdx index db3a181323f13..20bf284859ca7 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-08-21 +date: 2024-08-23 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 ac01f02a28f25..1de3929c01581 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-08-21 +date: 2024-08-23 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 b16e7a0074fe2..b09ba0b4043c3 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-08-21 +date: 2024-08-23 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 7204f3519c4f6..7247c3f389f9c 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-08-21 +date: 2024-08-23 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 366f7d5cc4fc7..3e388102ab34b 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-08-21 +date: 2024-08-23 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 fc92d4f4203a6..3a4db5270ae9f 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-08-21 +date: 2024-08-23 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 efcc84fa51b4e..b158030222ea1 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-08-21 +date: 2024-08-23 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 dbeb733590223..a03b47edc4bb2 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-08-21 +date: 2024-08-23 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 47477c645954e..f05ca50ae482b 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-08-21 +date: 2024-08-23 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 a54f78b7e058e..82acd79904a3a 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-08-21 +date: 2024-08-23 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 505d2c895275e..8cd6d51f54b2c 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-08-21 +date: 2024-08-23 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 a81055b566901..2d6623fe92ccc 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-08-21 +date: 2024-08-23 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 e8e1831859243..9cca26e4eaa0f 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_shared_ux_chrome_navigation.mdx index 9d0daa1cbe18a..0312bac82fe60 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-08-21 +date: 2024-08-23 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 6200e877954c8..88a54bb14a57b 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-08-21 +date: 2024-08-23 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 db132252dd765..eca64b8995263 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-08-21 +date: 2024-08-23 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 bef75a2b99bdd..7a0073e11be1a 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-08-21 +date: 2024-08-23 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 ad3dbb869fbfc..254c04ad7083d 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-08-21 +date: 2024-08-23 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 c56b7a96f91ba..ffed47c1c4737 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-08-21 +date: 2024-08-23 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 7df9e9328a200..b385d83a9a5f5 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-08-21 +date: 2024-08-23 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 7f3c15d6d1e04..1c63aa07fbf4b 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-08-21 +date: 2024-08-23 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 18590d719f896..878bb783e079a 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-08-21 +date: 2024-08-23 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 25cb55a83cc07..a331639c4ffbb 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-08-21 +date: 2024-08-23 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 4a622d02670cd..8bb41978cf5f5 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-08-21 +date: 2024-08-23 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 e4c393c815e07..f20211955ad79 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-08-21 +date: 2024-08-23 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 772aaca058201..4ab53420a9176 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-08-21 +date: 2024-08-23 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 cc6f21ca67afd..de459da2915c8 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-08-21 +date: 2024-08-23 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 b90f43ba70a53..90f4086d6670f 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-08-21 +date: 2024-08-23 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 ac51e9a5b82e1..414dec3c3ed76 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-08-21 +date: 2024-08-23 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 7c58527f46a95..ed53504957d15 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-08-21 +date: 2024-08-23 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 aa954c5c7d06f..2b3fb4957d4d7 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-08-21 +date: 2024-08-23 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 11a7a53e03d1b..739e445148849 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-08-21 +date: 2024-08-23 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 f200b957db555..e21d27e4abb42 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-08-21 +date: 2024-08-23 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 9ea31ddff9a46..c8fc18951e04f 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-08-21 +date: 2024-08-23 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 7f7df58deca94..d59bd03a1c2a6 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-08-21 +date: 2024-08-23 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 3f13def309d91..c9d6e5c85886b 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-08-21 +date: 2024-08-23 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 61f47a23bc521..f3b6efaf2fb4f 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-08-21 +date: 2024-08-23 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 022fa612c9698..b7ea8ed510c11 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-08-21 +date: 2024-08-23 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 883458daf8d65..7f3f11fb29dde 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-08-21 +date: 2024-08-23 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 4f874ae879981..23e8dd74d96d4 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-08-21 +date: 2024-08-23 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 127802b5df9a0..5862bf0cdec99 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-08-21 +date: 2024-08-23 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 d72e647a843be..cbecc936edfae 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-08-21 +date: 2024-08-23 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 2a76f496c7595..2b1964ae9fbd6 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-08-21 +date: 2024-08-23 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 3267493a103dc..59e5921d23043 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-08-21 +date: 2024-08-23 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 642eccde88081..3380fdf3c2038 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-08-21 +date: 2024-08-23 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 8d994fd14dc26..576eee12e9906 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_shared_ux_table_persist.devdocs.json new file mode 100644 index 0000000000000..470b02bafd6c9 --- /dev/null +++ b/api_docs/kbn_shared_ux_table_persist.devdocs.json @@ -0,0 +1,86 @@ +{ + "id": "@kbn/shared-ux-table-persist", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [] + }, + "common": { + "classes": [], + "functions": [ + { + "parentPluginId": "@kbn/shared-ux-table-persist", + "id": "def-common.useEuiTablePersist", + "type": "Function", + "tags": [], + "label": "useEuiTablePersist", + "description": [ + "\nA hook that stores and retrieves from local storage the table page size and sort criteria.\nReturns the persisting page size and sort and the onTableChange handler that should be passed\nas props to an Eui table component." + ], + "signature": [ + "({ tableId, customOnTableChange, initialSort, initialPageSize, pageSizeOptions, }: ", + "EuiTablePersistProps", + ") => { pageSize: number; sorting: boolean | { sort: ", + "PropertySort", + "; }; onTableChange: (nextValues: ", + "Criteria", + ") => void; }" + ], + "path": "packages/shared-ux/table_persist/src/use_table_persist.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/shared-ux-table-persist", + "id": "def-common.useEuiTablePersist.$1", + "type": "Object", + "tags": [], + "label": "{\n tableId,\n customOnTableChange,\n initialSort,\n initialPageSize,\n pageSizeOptions,\n}", + "description": [], + "signature": [ + "EuiTablePersistProps", + "" + ], + "path": "packages/shared-ux/table_persist/src/use_table_persist.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + } + ], + "interfaces": [], + "enums": [], + "misc": [ + { + "parentPluginId": "@kbn/shared-ux-table-persist", + "id": "def-common.DEFAULT_PAGE_SIZE_OPTIONS", + "type": "Array", + "tags": [], + "label": "DEFAULT_PAGE_SIZE_OPTIONS", + "description": [], + "signature": [ + "number[]" + ], + "path": "packages/shared-ux/table_persist/src/constants.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + } + ], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/kbn_shared_ux_table_persist.mdx b/api_docs/kbn_shared_ux_table_persist.mdx new file mode 100644 index 0000000000000..33f2a75eeb912 --- /dev/null +++ b/api_docs/kbn_shared_ux_table_persist.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: kibKbnSharedUxTablePersistPluginApi +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-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-table-persist'] +--- +import kbnSharedUxTablePersistObj from './kbn_shared_ux_table_persist.devdocs.json'; + + + +Contact [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 3 | 0 | 2 | 2 | + +## Common + +### Functions + + +### Consts, variables and types + + diff --git a/api_docs/kbn_shared_ux_utility.mdx b/api_docs/kbn_shared_ux_utility.mdx index 9af5b06421230..d5c9707572867 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_slo_schema.mdx index 5dacd4fc1ae77..8d1627f084c4a 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-08-21 +date: 2024-08-23 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 85a8f3c1b983d..677105b6c7bd9 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-08-21 +date: 2024-08-23 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 290c576a34cee..66e63ac694980 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/sort-predicates'] --- import kbnSortPredicatesObj from './kbn_sort_predicates.devdocs.json'; diff --git a/api_docs/kbn_std.mdx b/api_docs/kbn_std.mdx index 038f512b3a661..5ce583bfa71c4 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-08-21 +date: 2024-08-23 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 cc3613a140aa5..e298f808ea98c 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-08-21 +date: 2024-08-23 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 ad98f5cac7cce..2546fa95132e7 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-08-21 +date: 2024-08-23 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 a11fd099d35f9..9926f39666033 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-08-21 +date: 2024-08-23 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 2da17c9203aac..ef4e16584ffe4 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-08-21 +date: 2024-08-23 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 db6bca2a9aee6..447d21aa5ec39 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-08-21 +date: 2024-08-23 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 23535601ecf49..54f5af848ac5b 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-08-21 +date: 2024-08-23 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 ad9689ea9819d..49cadfd214ea4 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-08-21 +date: 2024-08-23 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 57183a2789b00..3b9cc45e919d6 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-08-21 +date: 2024-08-23 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 870871ae2fe05..8dceb39f8565f 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_text_based_editor.mdx index d58748c670f06..3ec2d1a5a745d 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/text-based-editor'] --- import kbnTextBasedEditorObj from './kbn_text_based_editor.devdocs.json'; diff --git a/api_docs/kbn_timerange.mdx b/api_docs/kbn_timerange.mdx index 2c21e29adfeb3..b11747c1501bd 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/timerange'] --- import kbnTimerangeObj from './kbn_timerange.devdocs.json'; diff --git a/api_docs/kbn_tooling_log.devdocs.json b/api_docs/kbn_tooling_log.devdocs.json index 14df922644371..6321db886076e 100644 --- a/api_docs/kbn_tooling_log.devdocs.json +++ b/api_docs/kbn_tooling_log.devdocs.json @@ -620,7 +620,7 @@ "tags": [], "label": "write", "description": [ - "\nCalled by ToolingLog, extends messages with the source if message includes one." + "\nCalled by ToolingLog, extends messages with the source and context if message include it." ], "signature": [ "(msg: ", @@ -1086,6 +1086,22 @@ "path": "packages/kbn-tooling-log/src/message.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "@kbn/tooling-log", + "id": "def-common.Message.context", + "type": "string", + "tags": [], + "label": "context", + "description": [ + "an identifier of the logging entity" + ], + "signature": [ + "string | undefined" + ], + "path": "packages/kbn-tooling-log/src/message.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false @@ -1139,6 +1155,22 @@ "path": "packages/kbn-tooling-log/src/tooling_log.ts", "deprecated": false, "trackAdoption": false + }, + { + "parentPluginId": "@kbn/tooling-log", + "id": "def-common.ToolingLogOptions.context", + "type": "string", + "tags": [], + "label": "context", + "description": [ + "\nA string, conveniently the name of the script,\nthat will be prepended to log messages.\nCan be useful to identify which entity is emitting the log." + ], + "signature": [ + "string | undefined" + ], + "path": "packages/kbn-tooling-log/src/tooling_log.ts", + "deprecated": false, + "trackAdoption": false } ], "initialIsOpen": false diff --git a/api_docs/kbn_tooling_log.mdx b/api_docs/kbn_tooling_log.mdx index 37a23f69529bb..27f6b408c8df7 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/tooling-log'] --- import kbnToolingLogObj from './kbn_tooling_log.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 | |-------------------|-----------|------------------------|-----------------| -| 72 | 0 | 55 | 0 | +| 74 | 0 | 55 | 0 | ## Common diff --git a/api_docs/kbn_triggers_actions_ui_types.mdx b/api_docs/kbn_triggers_actions_ui_types.mdx index 947c3e02540fc..a51c1b6173e05 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-08-21 +date: 2024-08-23 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 94c8a8b719c19..fce78359050f7 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-08-21 +date: 2024-08-23 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 2b7f6d5f3d89e..6caf3ac9d3184 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-08-21 +date: 2024-08-23 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 faace1b7ea078..4e891254e3d78 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_ui_actions_browser.mdx index 79475c6855d73..675e22d08092b 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-08-21 +date: 2024-08-23 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 262fee9c702a3..bb0894d12d32a 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-08-21 +date: 2024-08-23 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.mdx b/api_docs/kbn_ui_theme.mdx index 14e57f7f6309e..948d6a0c1dbab 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-08-21 +date: 2024-08-23 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 afc67cc9c1d89..7deda8b6ae014 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-08-21 +date: 2024-08-23 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 ee8b92cdabc39..267888acc285f 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-08-21 +date: 2024-08-23 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 af9313eb31b68..9b11af1fa6cf7 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-08-21 +date: 2024-08-23 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 e842ce58db5da..2abf40ca1dace 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-08-21 +date: 2024-08-23 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 7b2ab5c4ac96f..7a7293261be72 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-08-21 +date: 2024-08-23 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 08ba8984416c2..d1c86be4b386c 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-08-21 +date: 2024-08-23 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 02d8f46c40852..b81852c5e29c7 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-08-21 +date: 2024-08-23 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 60d2c8218ba25..07dbbf4a5d935 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-08-21 +date: 2024-08-23 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 5951bf664db7d..c64f2dbbf02e7 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-08-21 +date: 2024-08-23 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 1f9c43a15bea6..75001a6a02598 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-08-21 +date: 2024-08-23 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 12aa6f1b3a1c8..ba20658c91538 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-08-21 +date: 2024-08-23 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 310f6f29748e5..4b0832d360457 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-08-21 +date: 2024-08-23 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 e474d63aaf079..a19da2fa87b9c 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-08-21 +date: 2024-08-23 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 3f203d121032e..48fdc9abd3372 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-08-21 +date: 2024-08-23 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.devdocs.json b/api_docs/kbn_zod.devdocs.json index 7687287d2a6dd..4103b5ce494a8 100644 --- a/api_docs/kbn_zod.devdocs.json +++ b/api_docs/kbn_zod.devdocs.json @@ -19062,7 +19062,7 @@ "label": "UnknownKeysParam", "description": [], "signature": [ - "\"passthrough\" | \"strict\" | \"strip\"" + "\"strict\" | \"passthrough\" | \"strip\"" ], "path": "node_modules/zod/lib/types.d.ts", "deprecated": false, diff --git a/api_docs/kbn_zod.mdx b/api_docs/kbn_zod.mdx index 5059cfb61854a..ff94665fc5d89 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-08-21 +date: 2024-08-23 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 e7f1df7f1af4d..2f47511afeabc 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-08-21 +date: 2024-08-23 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 7fc5d5ace2284..31e2451f79511 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'kibanaOverview'] --- import kibanaOverviewObj from './kibana_overview.devdocs.json'; diff --git a/api_docs/kibana_react.mdx b/api_docs/kibana_react.mdx index 51f8c2423261f..5733095c33f19 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-08-21 +date: 2024-08-23 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 c43e1db72b313..ffdad60028e3f 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-08-21 +date: 2024-08-23 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 0e890beee922e..7f151cb600d5a 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-08-21 +date: 2024-08-23 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 4e115fd177835..85a362470f83b 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-08-21 +date: 2024-08-23 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 154ac0c74d58f..a78936e3541ea 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-08-21 +date: 2024-08-23 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 c4fa9d83a5b99..414031e0a16ca 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-08-21 +date: 2024-08-23 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 a326e280cc72b..4b2b5ca92e7da 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-08-21 +date: 2024-08-23 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 01027d1dd7994..57ec05e6a20a2 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-08-21 +date: 2024-08-23 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 a9f139124e9a0..2e6361544f03c 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'lists'] --- import listsObj from './lists.devdocs.json'; diff --git a/api_docs/logs_data_access.mdx b/api_docs/logs_data_access.mdx index a59305f9809c5..17648f309bf24 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'logsDataAccess'] --- import logsDataAccessObj from './logs_data_access.devdocs.json'; diff --git a/api_docs/logs_explorer.devdocs.json b/api_docs/logs_explorer.devdocs.json index 79932865de8a7..dc0818e98bd7f 100644 --- a/api_docs/logs_explorer.devdocs.json +++ b/api_docs/logs_explorer.devdocs.json @@ -355,6 +355,8 @@ "<(", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -375,6 +377,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -399,6 +403,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -421,6 +427,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanelGroupAPI", " & ", "WithControlPanels", @@ -499,6 +507,8 @@ "<(", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -519,6 +529,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -543,6 +555,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -565,6 +579,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanelGroupAPI", " & ", "WithControlPanels", @@ -698,15 +714,7 @@ "section": "def-public.LogsExplorerCustomizations", "text": "LogsExplorerCustomizations" }, - " | undefined; initialState?: ", - { - "pluginId": "logsExplorer", - "scope": "public", - "docId": "kibLogsExplorerPluginApi", - "section": "def-public.LogsExplorerPublicStateUpdate", - "text": "LogsExplorerPublicStateUpdate" - }, - " | undefined; }) => Promise<", + " | undefined; initialState?: InitialState | undefined; }) => Promise<", { "pluginId": "logsExplorer", "scope": "public", @@ -737,15 +745,7 @@ "section": "def-public.LogsExplorerCustomizations", "text": "LogsExplorerCustomizations" }, - " | undefined; initialState?: ", - { - "pluginId": "logsExplorer", - "scope": "public", - "docId": "kibLogsExplorerPluginApi", - "section": "def-public.LogsExplorerPublicStateUpdate", - "text": "LogsExplorerPublicStateUpdate" - }, - " | undefined; }" + " | undefined; initialState?: InitialState | undefined; }" ], "path": "x-pack/plugins/observability_solution/logs_explorer/public/controller/create_controller.ts", "deprecated": false, @@ -765,6 +765,8 @@ "(", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -785,6 +787,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -809,6 +813,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanels", " & ", { @@ -831,6 +837,8 @@ ") | (", "WithDataSourceSelection", " & ", + "WithAllSelection", + " & ", "WithControlPanelGroupAPI", " & ", "WithControlPanels", @@ -942,7 +950,29 @@ "initialIsOpen": false } ], - "objects": [], + "objects": [ + { + "parentPluginId": "logsExplorer", + "id": "def-public.DEFAULT_ALL_SELECTION", + "type": "Object", + "tags": [], + "label": "DEFAULT_ALL_SELECTION", + "description": [], + "signature": [ + { + "pluginId": "logsExplorer", + "scope": "common", + "docId": "kibLogsExplorerPluginApi", + "section": "def-common.AllDatasetSelection", + "text": "AllDatasetSelection" + } + ], + "path": "x-pack/plugins/observability_solution/logs_explorer/public/state_machines/logs_explorer_controller/src/default_all_selection.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + } + ], "setup": { "parentPluginId": "logsExplorer", "id": "def-public.LogsExplorerPluginSetup", @@ -1017,15 +1047,7 @@ "section": "def-public.LogsExplorerCustomizations", "text": "LogsExplorerCustomizations" }, - " | undefined; initialState?: ", - { - "pluginId": "logsExplorer", - "scope": "public", - "docId": "kibLogsExplorerPluginApi", - "section": "def-public.LogsExplorerPublicStateUpdate", - "text": "LogsExplorerPublicStateUpdate" - }, - " | undefined; }) => Promise<", + " | undefined; initialState?: InitialState | undefined; }) => Promise<", { "pluginId": "logsExplorer", "scope": "public", @@ -1056,15 +1078,7 @@ "section": "def-public.LogsExplorerCustomizations", "text": "LogsExplorerCustomizations" }, - " | undefined; initialState?: ", - { - "pluginId": "logsExplorer", - "scope": "public", - "docId": "kibLogsExplorerPluginApi", - "section": "def-public.LogsExplorerPublicStateUpdate", - "text": "LogsExplorerPublicStateUpdate" - }, - " | undefined; }" + " | undefined; initialState?: InitialState | undefined; }" ], "path": "x-pack/plugins/observability_solution/logs_explorer/public/controller/create_controller.ts", "deprecated": false, @@ -1172,6 +1186,22 @@ "children": [], "returnComment": [] }, + { + "parentPluginId": "logsExplorer", + "id": "def-common.AllDatasetSelection.getLocatorPlainSelection", + "type": "Function", + "tags": [], + "label": "getLocatorPlainSelection", + "description": [], + "signature": [ + "() => { selectionType: \"all\"; }" + ], + "path": "x-pack/plugins/observability_solution/logs_explorer/common/data_source_selection/all_dataset_selection.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + }, { "parentPluginId": "logsExplorer", "id": "def-common.AllDatasetSelection.create", @@ -1180,7 +1210,7 @@ "label": "create", "description": [], "signature": [ - "() => ", + "({ indices }: { indices: string; }) => ", { "pluginId": "logsExplorer", "scope": "common", @@ -1192,7 +1222,32 @@ "path": "x-pack/plugins/observability_solution/logs_explorer/common/data_source_selection/all_dataset_selection.ts", "deprecated": false, "trackAdoption": false, - "children": [], + "children": [ + { + "parentPluginId": "logsExplorer", + "id": "def-common.AllDatasetSelection.create.$1", + "type": "Object", + "tags": [], + "label": "{ indices }", + "description": [], + "path": "x-pack/plugins/observability_solution/logs_explorer/common/data_source_selection/all_dataset_selection.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "logsExplorer", + "id": "def-common.AllDatasetSelection.create.$1.indices", + "type": "string", + "tags": [], + "label": "indices", + "description": [], + "path": "x-pack/plugins/observability_solution/logs_explorer/common/data_source_selection/all_dataset_selection.ts", + "deprecated": false, + "trackAdoption": false + } + ] + } + ], "returnComment": [] } ], @@ -1564,7 +1619,15 @@ "Branded", "; } & { title?: string | undefined; }; }; }) => ", + ">; } & { title?: string | undefined; }; }; }, allSelection: ", + { + "pluginId": "logsExplorer", + "scope": "common", + "docId": "kibLogsExplorerPluginApi", + "section": "def-common.AllDatasetSelection", + "text": "AllDatasetSelection" + }, + ") => ", { "pluginId": "logsExplorer", "scope": "common", @@ -1617,6 +1680,27 @@ "deprecated": false, "trackAdoption": false, "isRequired": true + }, + { + "parentPluginId": "logsExplorer", + "id": "def-common.hydrateDataSourceSelection.$2", + "type": "Object", + "tags": [], + "label": "allSelection", + "description": [], + "signature": [ + { + "pluginId": "logsExplorer", + "scope": "common", + "docId": "kibLogsExplorerPluginApi", + "section": "def-common.AllDatasetSelection", + "text": "AllDatasetSelection" + } + ], + "path": "x-pack/plugins/observability_solution/logs_explorer/common/data_source_selection/hydrate_data_source_selection.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true } ], "returnComment": [], diff --git a/api_docs/logs_explorer.mdx b/api_docs/logs_explorer.mdx index 0d9fa193adec9..c1db007d2bd12 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'logsExplorer'] --- import logsExplorerObj from './logs_explorer.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 117 | 4 | 117 | 22 | +| 122 | 4 | 122 | 23 | ## Client @@ -31,6 +31,9 @@ Contact [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux ### Start +### Objects + + ### Functions diff --git a/api_docs/logs_shared.mdx b/api_docs/logs_shared.mdx index e5d884d8bee1e..26a9dabfba0d7 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-08-21 +date: 2024-08-23 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 c7463ba1c9011..e0987b7750b54 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-08-21 +date: 2024-08-23 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 204a29bf6ee59..81bf336ba778e 100644 --- a/api_docs/maps.mdx +++ b/api_docs/maps.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/maps title: "maps" image: https://source.unsplash.com/400x175/?github description: API docs for the maps plugin -date: 2024-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'maps'] --- import mapsObj from './maps.devdocs.json'; diff --git a/api_docs/maps_ems.mdx b/api_docs/maps_ems.mdx index 96059eb6083ea..f1630bb32fb06 100644 --- a/api_docs/maps_ems.mdx +++ b/api_docs/maps_ems.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/mapsEms title: "mapsEms" image: https://source.unsplash.com/400x175/?github description: API docs for the mapsEms plugin -date: 2024-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'mapsEms'] --- import mapsEmsObj from './maps_ems.devdocs.json'; diff --git a/api_docs/metrics_data_access.devdocs.json b/api_docs/metrics_data_access.devdocs.json index 5e4535366a663..f6ec0aeef0bca 100644 --- a/api_docs/metrics_data_access.devdocs.json +++ b/api_docs/metrics_data_access.devdocs.json @@ -624,9 +624,14 @@ "label": "networkTraffic", "description": [], "signature": [ - "(id: string, field: string) => { [x: string]: { [x: string]: { field: string; } | undefined; } | { percentiles: { field: string; percents: number[]; }; } | { bucket_script: { buckets_path: { [x: string]: string; }; script: { source: string; lang: \"painless\" | \"expression\"; }; } & { gap_policy?: \"insert_zeros\" | \"skip\" | undefined; }; } | { cumulative_sum: { buckets_path: string; }; } | { derivative: { buckets_path: string; gap_policy: \"insert_zeros\" | \"skip\"; unit: string; }; } | { sum_bucket: { buckets_path: string; }; } | ", - "SnapshotTermsWithAggregation", - " | { cardinality: { field?: string | undefined; }; } | { top_metrics: { metrics: { field: string; }[] | { field: string; }; } & { size?: number | undefined; sort?: { [x: string]: \"asc\" | \"desc\"; } | undefined; }; } | { filter: { exists: { field: string; }; }; aggs: { period: { max: { field: string; }; }; }; }; }" + "(id: string, field: string) => ", + { + "pluginId": "metricsDataAccess", + "scope": "common", + "docId": "kibMetricsDataAccessPluginApi", + "section": "def-common.MetricsUIAggregation", + "text": "MetricsUIAggregation" + } ], "path": "x-pack/plugins/observability_solution/metrics_data_access/common/inventory_models/shared/metrics/snapshot/network_traffic.ts", "deprecated": false, @@ -667,7 +672,49 @@ "initialIsOpen": false } ], - "interfaces": [], + "interfaces": [ + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIMetric", + "type": "Interface", + "tags": [], + "label": "MetricsAPIMetric", + "description": [], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIMetric.id", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIMetric.aggregations", + "type": "Object", + "tags": [], + "label": "aggregations", + "description": [], + "signature": [ + "{ [x: string]: ", + "AggregationsAggregate", + "; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + } + ], "enums": [], "misc": [ { @@ -2161,6 +2208,134 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIColumn", + "type": "Type", + "tags": [], + "label": "MetricsAPIColumn", + "description": [], + "signature": [ + "{ name: string; type: \"string\" | \"number\" | \"date\"; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIColumnType", + "type": "Type", + "tags": [], + "label": "MetricsAPIColumnType", + "description": [], + "signature": [ + "\"string\" | \"number\" | \"date\"" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIPageInfo", + "type": "Type", + "tags": [], + "label": "MetricsAPIPageInfo", + "description": [], + "signature": [ + "{ afterKey: { [x: string]: string | null; } | null | undefined; } & { interval?: number | undefined; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIRequest", + "type": "Type", + "tags": [], + "label": "MetricsAPIRequest", + "description": [], + "signature": [ + "Omit<{ timerange: { from: number; to: number; interval: string; }; indexPattern: string; metrics: { id: string; aggregations: { [key: string]: unknown; }; }[]; includeTimeseries: boolean | undefined; } & { groupBy?: (string | null | undefined)[] | undefined; groupInstance?: (string | null | undefined)[] | undefined; modules?: string[] | undefined; afterKey?: { [x: string]: string | null; } | null | undefined; limit?: number | null | undefined; filters?: { [key: string]: unknown; }[] | undefined; dropPartialBuckets?: boolean | undefined; alignDataToEnd?: boolean | undefined; }, \"metrics\"> & { metrics: ", + { + "pluginId": "metricsDataAccess", + "scope": "common", + "docId": "kibMetricsDataAccessPluginApi", + "section": "def-common.MetricsAPIMetric", + "text": "MetricsAPIMetric" + }, + "[]; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIResponse", + "type": "Type", + "tags": [], + "label": "MetricsAPIResponse", + "description": [], + "signature": [ + "{ series: ({ id: string; columns: { name: string; type: \"string\" | \"number\" | \"date\"; }[]; rows: ({ timestamp: number; } & { [x: string]: string | number | object[] | null | undefined; })[]; } & { keys?: string[] | undefined; } & { metricsets?: string[] | undefined; })[]; info: { afterKey: { [x: string]: string | null; } | null | undefined; } & { interval?: number | undefined; }; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIRow", + "type": "Type", + "tags": [], + "label": "MetricsAPIRow", + "description": [], + "signature": [ + "{ timestamp: number; } & { [x: string]: string | number | object[] | null | undefined; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPISeries", + "type": "Type", + "tags": [], + "label": "MetricsAPISeries", + "description": [], + "signature": [ + "{ id: string; columns: { name: string; type: \"string\" | \"number\" | \"date\"; }[]; rows: ({ timestamp: number; } & { [x: string]: string | number | object[] | null | undefined; })[]; } & { keys?: string[] | undefined; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPITimerange", + "type": "Type", + "tags": [], + "label": "MetricsAPITimerange", + "description": [], + "signature": [ + "{ from: number; to: number; interval: string; }" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "metricsDataAccess", "id": "def-common.MetricsUIAggregation", @@ -2169,9 +2344,9 @@ "label": "MetricsUIAggregation", "description": [], "signature": [ - "{ [x: string]: { [x: string]: { field: string; } | undefined; } | { percentiles: { field: string; percents: number[]; }; } | { bucket_script: { buckets_path: { [x: string]: string; }; script: { source: string; lang: \"painless\" | \"expression\"; }; } & { gap_policy?: \"insert_zeros\" | \"skip\" | undefined; }; } | { cumulative_sum: { buckets_path: string; }; } | { derivative: { buckets_path: string; gap_policy: \"insert_zeros\" | \"skip\"; unit: string; }; } | { sum_bucket: { buckets_path: string; }; } | ", - "SnapshotTermsWithAggregation", - " | { cardinality: { field?: string | undefined; }; } | { top_metrics: { metrics: { field: string; }[] | { field: string; }; } & { size?: number | undefined; sort?: { [x: string]: \"asc\" | \"desc\"; } | undefined; }; } | { filter: { exists: { field: string; }; }; aggs: { period: { max: { field: string; }; }; }; }; }" + "{ [x: string]: ", + "AggregationsAggregate", + "; }" ], "path": "x-pack/plugins/observability_solution/metrics_data_access/common/inventory_models/types.ts", "deprecated": false, @@ -2357,12 +2532,14 @@ "label": "ESTermsWithAggregationRT", "description": [], "signature": [ - "Type", - "<", - "SnapshotTermsWithAggregation", - ", ", - "SnapshotTermsWithAggregation", - ", unknown>" + "TypeC", + "<{ terms: ", + "TypeC", + "<{ field: ", + "StringC", + "; }>; aggregations: ", + "UnknownRecordC", + "; }>" ], "path": "x-pack/plugins/observability_solution/metrics_data_access/common/inventory_models/types.ts", "deprecated": false, @@ -2574,146 +2751,452 @@ }, { "parentPluginId": "metricsDataAccess", - "id": "def-common.MetricsUIAggregationRT", + "id": "def-common.MetricsAPIColumnRT", "type": "Object", "tags": [], - "label": "MetricsUIAggregationRT", + "label": "MetricsAPIColumnRT", "description": [], "signature": [ + "TypeC", + "<{ name: ", + "StringC", + "; type: ", + "KeyofC", + "<{ date: null; number: null; string: null; }>; }>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIColumnTypeRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIColumnTypeRT", + "description": [], + "signature": [ + "KeyofC", + "<{ date: null; number: null; string: null; }>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIMetricRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIMetricRT", + "description": [], + "signature": [ + "TypeC", + "<{ id: ", + "StringC", + "; aggregations: ", + "UnknownRecordC", + "; }>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIPageInfoRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIPageInfoRT", + "description": [], + "signature": [ + "IntersectionC", + "<[", + "TypeC", + "<{ afterKey: ", + "UnionC", + "<[", + "NullC", + ", ", "RecordC", "<", "StringC", ", ", "UnionC", "<[", - "RecordC", + "StringC", + ", ", + "NullC", + "]>>, ", + "UndefinedC", + "]>; }>, ", + "PartialC", + "<{ interval: ", + "NumberC", + "; }>]>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIRequestRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIRequestRT", + "description": [], + "signature": [ + "IntersectionC", + "<[", + "TypeC", + "<{ timerange: ", + "TypeC", + "<{ from: ", + "NumberC", + "; to: ", + "NumberC", + "; interval: ", + "StringC", + "; }>; indexPattern: ", + "StringC", + "; metrics: ", + "ArrayC", + "<", + "TypeC", + "<{ id: ", + "StringC", + "; aggregations: ", + "UnknownRecordC", + "; }>>; includeTimeseries: ", + "UnionC", + "<[", + "BooleanC", + ", ", + "Type", + "]>; }>, ", + "PartialC", + "<{ groupBy: ", + "ArrayC", "<", + "UnionC", + "<[", "StringC", ", ", + "NullC", + ", ", + "UndefinedC", + "]>>; groupInstance: ", + "ArrayC", + "<", "UnionC", "<[", + "StringC", + ", ", + "NullC", + ", ", "UndefinedC", + "]>>; modules: ", + "ArrayC", + "<", + "StringC", + ">; afterKey: ", + "UnionC", + "<[", + "NullC", ", ", - "TypeC", - "<{ field: ", + "RecordC", + "<", "StringC", - "; }>]>>, ", + ", ", + "UnionC", + "<[", + "StringC", + ", ", + "NullC", + "]>>]>; limit: ", + "UnionC", + "<[", + "NumberC", + ", ", + "NullC", + "]>; filters: ", + "ArrayC", + "<", + "UnknownRecordC", + ">; dropPartialBuckets: ", + "BooleanC", + "; alignDataToEnd: ", + "BooleanC", + "; }>]>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIResponseRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIResponseRT", + "description": [], + "signature": [ "TypeC", - "<{ percentiles: ", + "<{ series: ", + "ArrayC", + "<", + "IntersectionC", + "<[", + "IntersectionC", + "<[", "TypeC", - "<{ field: ", + "<{ id: ", "StringC", - "; percents: ", + "; columns: ", "ArrayC", "<", - "NumberC", - ">; }>; }>, ", "TypeC", - "<{ bucket_script: ", + "<{ name: ", + "StringC", + "; type: ", + "KeyofC", + "<{ date: null; number: null; string: null; }>; }>>; rows: ", + "ArrayC", + "<", "IntersectionC", "<[", "TypeC", - "<{ buckets_path: ", + "<{ timestamp: ", + "NumberC", + "; }>, ", "RecordC", "<", "StringC", ", ", + "UnionC", + "<[", "StringC", - ">; script: ", - "TypeC", - "<{ source: ", + ", ", + "NumberC", + ", ", + "NullC", + ", ", + "UndefinedC", + ", ", + "ArrayC", + "<", + "ObjectC", + ">]>>]>>; }>, ", + "PartialC", + "<{ keys: ", + "ArrayC", + "<", "StringC", - "; lang: ", - "KeyofC", - "<{ painless: null; expression: null; }>; }>; }>, ", + ">; }>]>, ", "PartialC", - "<{ gap_policy: ", - "KeyofC", - "<{ skip: null; insert_zeros: null; }>; }>]>; }>, ", - "TypeC", - "<{ cumulative_sum: ", - "TypeC", - "<{ buckets_path: ", + "<{ metricsets: ", + "ArrayC", + "<", "StringC", - "; }>; }>, ", - "TypeC", - "<{ derivative: ", + ">; }>]>>; info: ", + "IntersectionC", + "<[", "TypeC", - "<{ buckets_path: ", + "<{ afterKey: ", + "UnionC", + "<[", + "NullC", + ", ", + "RecordC", + "<", "StringC", - "; gap_policy: ", - "KeyofC", - "<{ skip: null; insert_zeros: null; }>; unit: ", + ", ", + "UnionC", + "<[", "StringC", - "; }>; }>, ", + ", ", + "NullC", + "]>>, ", + "UndefinedC", + "]>; }>, ", + "PartialC", + "<{ interval: ", + "NumberC", + "; }>]>; }>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIResponseSeriesRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIResponseSeriesRT", + "description": [], + "signature": [ + "IntersectionC", + "<[", + "IntersectionC", + "<[", "TypeC", - "<{ sum_bucket: ", + "<{ id: ", + "StringC", + "; columns: ", + "ArrayC", + "<", "TypeC", - "<{ buckets_path: ", + "<{ name: ", "StringC", - "; }>; }>, ", - "Type", + "; type: ", + "KeyofC", + "<{ date: null; number: null; string: null; }>; }>>; rows: ", + "ArrayC", "<", - "SnapshotTermsWithAggregation", - ", ", - "SnapshotTermsWithAggregation", - ", unknown>, ", + "IntersectionC", + "<[", "TypeC", - "<{ cardinality: ", + "<{ timestamp: ", + "NumberC", + "; }>, ", + "RecordC", + "<", + "StringC", + ", ", + "UnionC", + "<[", + "StringC", + ", ", + "NumberC", + ", ", + "NullC", + ", ", + "UndefinedC", + ", ", + "ArrayC", + "<", + "ObjectC", + ">]>>]>>; }>, ", "PartialC", - "<{ field: ", + "<{ keys: ", + "ArrayC", + "<", "StringC", - "; }>; }>, ", - "TypeC", - "<{ top_metrics: ", + ">; }>]>, ", + "PartialC", + "<{ metricsets: ", + "ArrayC", + "<", + "StringC", + ">; }>]>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPIRowRT", + "type": "Object", + "tags": [], + "label": "MetricsAPIRowRT", + "description": [], + "signature": [ "IntersectionC", "<[", "TypeC", - "<{ metrics: ", + "<{ timestamp: ", + "NumberC", + "; }>, ", + "RecordC", + "<", + "StringC", + ", ", "UnionC", "<[", + "StringC", + ", ", + "NumberC", + ", ", + "NullC", + ", ", + "UndefinedC", + ", ", "ArrayC", "<", + "ObjectC", + ">]>>]>" + ], + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "metricsDataAccess", + "id": "def-common.MetricsAPISeriesRT", + "type": "Object", + "tags": [], + "label": "MetricsAPISeriesRT", + "description": [], + "signature": [ + "IntersectionC", + "<[", "TypeC", - "<{ field: ", + "<{ id: ", "StringC", - "; }>>, ", + "; columns: ", + "ArrayC", + "<", "TypeC", - "<{ field: ", + "<{ name: ", "StringC", - "; }>]>; }>, ", - "PartialC", - "<{ size: ", + "; type: ", + "KeyofC", + "<{ date: null; number: null; string: null; }>; }>>; rows: ", + "ArrayC", + "<", + "IntersectionC", + "<[", + "TypeC", + "<{ timestamp: ", "NumberC", - "; sort: ", + "; }>, ", "RecordC", "<", "StringC", ", ", "UnionC", "<[", - "LiteralC", - "<\"desc\">, ", - "LiteralC", - "<\"asc\">]>>; }>]>; }>, ", - "TypeC", - "<{ filter: ", - "TypeC", - "<{ exists: ", - "TypeC", - "<{ field: ", "StringC", - "; }>; }>; aggs: ", - "TypeC", - "<{ period: ", - "TypeC", - "<{ max: ", - "TypeC", - "<{ field: ", + ", ", + "NumberC", + ", ", + "NullC", + ", ", + "UndefinedC", + ", ", + "ArrayC", + "<", + "ObjectC", + ">]>>]>>; }>, ", + "PartialC", + "<{ keys: ", + "ArrayC", + "<", "StringC", - "; }>; }>; }>; }>]>>" + ">; }>]>" ], - "path": "x-pack/plugins/observability_solution/metrics_data_access/common/inventory_models/types.ts", + "path": "x-pack/plugins/observability_solution/metrics_data_access/common/http_api/metrics_api.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false diff --git a/api_docs/metrics_data_access.mdx b/api_docs/metrics_data_access.mdx index 0ebcbc1e59e4e..3d91b9fc9894a 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'metricsDataAccess'] --- import metricsDataAccessObj from './metrics_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 | |-------------------|-----------|------------------------|-----------------| -| 109 | 8 | 109 | 6 | +| 128 | 8 | 128 | 5 | ## Client @@ -56,6 +56,9 @@ Contact [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs- ### Functions +### Interfaces + + ### Consts, variables and types diff --git a/api_docs/ml.devdocs.json b/api_docs/ml.devdocs.json index 2667ec97d5072..5d035e99c13d4 100644 --- a/api_docs/ml.devdocs.json +++ b/api_docs/ml.devdocs.json @@ -1719,7 +1719,7 @@ "): Promise<", "InferenceModelConfigContainer", ">; getAllInferenceEndpoints(): Promise<{ endpoints: ", - "InferenceModelConfigContainer", + "GetInferenceEndpointsResponse", "[]; }>; }; notifications: { findMessages(params: ", "NotificationsQueryParams", "): Promise<", diff --git a/api_docs/ml.mdx b/api_docs/ml.mdx index 94b9d3bf30a6d..5dc2b430d2128 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ml'] --- import mlObj from './ml.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) for questi | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 154 | 3 | 67 | 102 | +| 154 | 3 | 67 | 103 | ## Client diff --git a/api_docs/mock_idp_plugin.mdx b/api_docs/mock_idp_plugin.mdx index 3d3c091e1485d..6f43591eab849 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-08-21 +date: 2024-08-23 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 329acdbfa25ce..e097e62b8a5b6 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-08-21 +date: 2024-08-23 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 4b1a2778bf3af..ffb6a748dcf4c 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-08-21 +date: 2024-08-23 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 c68cbdacac37b..9fa3ea112d4ba 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-08-21 +date: 2024-08-23 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 4d607f43b7558..b079605cc11ad 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-08-21 +date: 2024-08-23 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 29b4ffd789757..e842e4488d1cb 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-08-21 +date: 2024-08-23 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 e77a98ed72253..e65e8b6f565f3 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-08-21 +date: 2024-08-23 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 9ff3f59805dff..517ebad166e0a 100644 --- a/api_docs/observability.devdocs.json +++ b/api_docs/observability.devdocs.json @@ -10915,7 +10915,7 @@ "label": "value", "description": [], "signature": [ - "false" + "true" ], "path": "x-pack/plugins/observability_solution/observability/server/ui_settings.ts", "deprecated": false, diff --git a/api_docs/observability.mdx b/api_docs/observability.mdx index 79dcc2dc842ef..8dfe00bc850e6 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observability'] --- import observabilityObj from './observability.devdocs.json'; diff --git a/api_docs/observability_a_i_assistant.mdx b/api_docs/observability_a_i_assistant.mdx index 80ec4fefe40a6..ca2e54657c2e0 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityAIAssistant'] --- import observabilityAIAssistantObj from './observability_a_i_assistant.devdocs.json'; diff --git a/api_docs/observability_a_i_assistant_app.mdx b/api_docs/observability_a_i_assistant_app.mdx index d25268a424be1..2785e2169195d 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-08-21 +date: 2024-08-23 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 0bbbacdfb598c..f920dfbc800b3 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-08-21 +date: 2024-08-23 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 3b560559039c0..3e7947f22d1fe 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-08-21 +date: 2024-08-23 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 ccc157ddd6f3f..22be734488a54 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityOnboarding'] --- import observabilityOnboardingObj from './observability_onboarding.devdocs.json'; diff --git a/api_docs/observability_shared.mdx b/api_docs/observability_shared.mdx index f0405bab6de76..2071b367a363e 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityShared'] --- import observabilitySharedObj from './observability_shared.devdocs.json'; diff --git a/api_docs/osquery.mdx b/api_docs/osquery.mdx index cb87d1898ef0a..ab804ae459ced 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-08-21 +date: 2024-08-23 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 dc3e42f62e8e7..d7f555f0a84da 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-08-21 +date: 2024-08-23 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 be0804c75f33a..1ed74c3064395 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-08-21 +date: 2024-08-23 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 | |--------------|----------|------------------------| -| 836 | 710 | 45 | +| 843 | 717 | 46 | ### Public API health stats | API Count | Any Count | Missing comments | Missing exports | |--------------|----------|-----------------|--------| -| 52350 | 241 | 39281 | 1921 | +| 52603 | 241 | 39516 | 1932 | ## Plugin Directory @@ -31,7 +31,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/appex-sharedux @elastic/kibana-management](https://github.com/orgs/elastic/teams/appex-sharedux ) | - | 2 | 0 | 2 | 0 | | | [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | - | 4 | 0 | 4 | 1 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | AIOps plugin maintained by ML team. | 74 | 0 | 9 | 2 | -| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 871 | 1 | 839 | 52 | +| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 875 | 1 | 843 | 52 | | | [@elastic/obs-ux-infra_services-team](https://github.com/orgs/elastic/teams/obs-ux-infra_services-team) | The user interface for Elastic APM | 29 | 0 | 29 | 119 | | | [@elastic/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | - | 93 | 0 | 93 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 9 | 0 | 9 | 0 | @@ -49,7 +49,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-cloud-security-posture](https://github.com/orgs/elastic/teams/kibana-cloud-security-posture) | The cloud security posture plugin | 14 | 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 | 396 | 0 | 387 | 29 | +| | [@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 | 394 | 0 | 385 | 28 | | 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 | @@ -99,7 +99,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 247 | 0 | 102 | 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. | 84 | 0 | 84 | 8 | +| | [@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/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) | - | 1362 | 5 | 1239 | 74 | @@ -113,15 +113,15 @@ 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) | - | 227 | 0 | 222 | 1 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 16 | 0 | 14 | 11 | +| | [@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) | - | 16 | 0 | 14 | 11 | | | [@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 | 38 | 0 | 35 | 6 | | | [@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 | 47 | 0 | 40 | 3 | +| | [@elastic/security-scalability](https://github.com/orgs/elastic/teams/security-scalability) | Plugin implementing the Integration Assistant API and UI | 49 | 0 | 41 | 3 | | | [@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-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 94 | 0 | 94 | 5 | +| | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 92 | 0 | 92 | 5 | | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 5 | 0 | 5 | 2 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 6 | 0 | 6 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 153 | 0 | 121 | 3 | @@ -135,14 +135,14 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@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-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. | 117 | 4 | 117 | 22 | +| | [@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. | 122 | 4 | 122 | 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. | 300 | 0 | 272 | 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/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | Exposes utilities for accessing metrics data | 109 | 8 | 109 | 6 | -| | [@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/obs-knowledge-team](https://github.com/orgs/elastic/teams/obs-knowledge-team) | Exposes utilities for accessing metrics data | 128 | 8 | 128 | 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 | 103 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 2 | 0 | 2 | 0 | | | [@elastic/stack-monitoring](https://github.com/orgs/elastic/teams/stack-monitoring) | - | 15 | 3 | 13 | 1 | | | [@elastic/stack-monitoring](https://github.com/orgs/elastic/teams/stack-monitoring) | - | 9 | 0 | 9 | 0 | @@ -176,13 +176,14 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | This plugin contains the definition and helper methods around saved searches, used by discover and visualizations. | 61 | 0 | 60 | 3 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 32 | 0 | 13 | 0 | | | [@elastic/kibana-reporting-services](https://github.com/orgs/elastic/teams/kibana-reporting-services) | Kibana Screenshotting Plugin | 32 | 0 | 8 | 4 | +| | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | AI Assistant for Search | 6 | 0 | 6 | 0 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | Plugin hosting shared features for connectors | 19 | 0 | 19 | 3 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 18 | 0 | 10 | 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) | - | 15 | 0 | 9 | 1 | +| | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 17 | 0 | 11 | 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. | 447 | 0 | 231 | 1 | +| | [@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. | 447 | 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) | 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 | @@ -216,7 +217,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | This plugin visualizes data from Heartbeat, and integrates with other Observability solutions. | 1 | 0 | 1 | 0 | | urlDrilldown | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Adds drilldown implementations to Kibana | 0 | 0 | 0 | 0 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 12 | 0 | 12 | 0 | -| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 51 | 0 | 14 | 4 | +| | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 52 | 0 | 14 | 5 | | | [@elastic/obs-ux-infra_services-team](https://github.com/orgs/elastic/teams/obs-ux-infra_services-team) | - | 2 | 0 | 2 | 0 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | The default editor used in most aggregation-based visualizations. | 56 | 0 | 49 | 4 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | Contains the gauge chart implementation using the elastic-charts library. The goal is to eventually deprecate the old implementation and keep only this. Until then, the library used is defined by the Legacy charts library advanced setting. | 7 | 0 | 7 | 2 | @@ -246,7 +247,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 27 | 3 | 27 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 5 | 0 | 5 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 23 | 0 | 22 | 0 | -| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 217 | 0 | 214 | 0 | +| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 222 | 0 | 219 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 33 | 0 | 33 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 31 | 0 | 15 | 1 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 299 | 0 | 282 | 8 | @@ -279,12 +280,14 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 24 | 0 | 24 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 149 | 2 | 143 | 20 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 10 | 0 | 8 | 4 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 32 | 0 | 28 | 0 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 9 | 0 | 6 | 2 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 39 | 0 | 38 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 6 | 0 | 6 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 8 | 0 | 8 | 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) | - | 10 | 0 | 10 | 0 | -| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 50 | 0 | 33 | 3 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 51 | 0 | 33 | 3 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 30 | 0 | 30 | 0 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 195 | 1 | 128 | 0 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 100 | 0 | 0 | 0 | @@ -491,7 +494,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 5 | 0 | 5 | 1 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 41 | 0 | 27 | 6 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 33 | 0 | 24 | 1 | -| | [@elastic/security-threat-hunting-explore](https://github.com/orgs/elastic/teams/security-threat-hunting-explore) | - | 13 | 0 | 5 | 0 | +| | [@elastic/security-threat-hunting-explore](https://github.com/orgs/elastic/teams/security-threat-hunting-explore) | - | 14 | 0 | 6 | 0 | | | [@elastic/obs-ux-logs-team](https://github.com/orgs/elastic/teams/obs-ux-logs-team) | - | 35 | 0 | 34 | 0 | | | [@elastic/security-generative-ai](https://github.com/orgs/elastic/teams/security-generative-ai) | - | 156 | 0 | 130 | 9 | | | [@elastic/security-generative-ai](https://github.com/orgs/elastic/teams/security-generative-ai) | - | 346 | 0 | 320 | 0 | @@ -502,7 +505,7 @@ 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) | - | 150 | 1 | 120 | 15 | +| | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 152 | 1 | 120 | 15 | | | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 66 | 0 | 62 | 0 | | | [@elastic/kibana-esql](https://github.com/orgs/elastic/teams/kibana-esql) | - | 195 | 0 | 183 | 10 | | | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 40 | 0 | 40 | 0 | @@ -532,7 +535,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) | - | 29 | 0 | 29 | 0 | +| | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 41 | 0 | 41 | 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 | @@ -545,7 +548,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@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 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 8 | 0 | 8 | 0 | -| | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 2 | 0 | 2 | 0 | +| | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | - | 3 | 0 | 3 | 0 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 6 | 0 | 1 | 1 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 13 | 0 | 12 | 2 | | | [@elastic/kibana-management](https://github.com/orgs/elastic/teams/kibana-management) | - | 9 | 0 | 6 | 2 | @@ -641,6 +644,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 16 | 0 | 16 | 1 | | | [@elastic/security-detections-response](https://github.com/orgs/elastic/teams/security-detections-response) | - | 128 | 0 | 125 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 2 | 0 | 2 | 0 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 35 | 0 | 34 | 0 | | | [@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 | @@ -648,11 +652,13 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@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 | +| | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 25 | 0 | 24 | 7 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 35 | 0 | 25 | 0 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 7 | 0 | 7 | 0 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 118 | 0 | 59 | 0 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 51 | 0 | 25 | 0 | | | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 275 | 1 | 154 | 0 | +| | [@elastic/kibana-security](https://github.com/orgs/elastic/teams/kibana-security) | - | 75 | 0 | 74 | 0 | | | [@elastic/kibana-cloud-security-posture](https://github.com/orgs/elastic/teams/kibana-cloud-security-posture) | - | 6 | 0 | 0 | 0 | | | [@elastic/security-threat-hunting-explore](https://github.com/orgs/elastic/teams/security-threat-hunting-explore) | - | 15 | 0 | 15 | 7 | | | [@elastic/security-threat-hunting-explore](https://github.com/orgs/elastic/teams/security-threat-hunting-explore) | - | 54 | 0 | 49 | 0 | @@ -724,6 +730,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 2 | 0 | 0 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 15 | 0 | 4 | 0 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 8 | 0 | 8 | 4 | +| | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 3 | 0 | 2 | 2 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | - | 16 | 0 | 6 | 0 | | | [@elastic/obs-ux-management-team](https://github.com/orgs/elastic/teams/obs-ux-management-team) | - | 182 | 0 | 182 | 0 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 20 | 0 | 12 | 0 | @@ -740,7 +747,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@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/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) | - | 72 | 0 | 55 | 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 | | | [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) | - | 2 | 0 | 2 | 1 | | | [@elastic/kibana-operations](https://github.com/orgs/elastic/teams/kibana-operations) | - | 39 | 0 | 25 | 1 | diff --git a/api_docs/presentation_panel.mdx b/api_docs/presentation_panel.mdx index be5137f3154c8..aa02f40aef7d0 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-08-21 +date: 2024-08-23 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 ea36fe3484b61..9eaf48a3622a6 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-08-21 +date: 2024-08-23 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 deb10d5d03dc4..bac059a68f37f 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-08-21 +date: 2024-08-23 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 5c21b59a968fb..cb6172c4e273e 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-08-21 +date: 2024-08-23 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 a46760ae9a722..3d1c7cf8bdcb8 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-08-21 +date: 2024-08-23 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 c5d38cc85631d..ad4cc2ae99a86 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-08-21 +date: 2024-08-23 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 90598fd247d5d..440ece81cf7d0 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'rollup'] --- import rollupObj from './rollup.devdocs.json'; diff --git a/api_docs/rule_registry.devdocs.json b/api_docs/rule_registry.devdocs.json index 29dceb9bcf15d..36bcd64c65673 100644 --- a/api_docs/rule_registry.devdocs.json +++ b/api_docs/rule_registry.devdocs.json @@ -2221,7 +2221,7 @@ "section": "def-common.ActionGroup", "text": "ActionGroup" }, - "<\"default\">[]; schemas?: { params?: { type: \"zod\"; schema: Zod.ZodObject | Zod.ZodIntersection; } | { type: \"config-schema\"; schema: ", + "<\"default\">[]; schemas?: { params?: { type: \"zod\"; schema: any; } | { type: \"config-schema\"; schema: ", { "pluginId": "@kbn/config-schema", "scope": "common", diff --git a/api_docs/rule_registry.mdx b/api_docs/rule_registry.mdx index 5c8d7a5633cfd..af74a4e3d7437 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-08-21 +date: 2024-08-23 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 bb08953da9c37..1a4b2fceb9993 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-08-21 +date: 2024-08-23 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 2c9ead63edc66..1abdfa387d38a 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-08-21 +date: 2024-08-23 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 1e5b8a712ad6b..cbbb5f60a7271 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-08-21 +date: 2024-08-23 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 b6d8232762dae..cca089333172c 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-08-21 +date: 2024-08-23 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 c56109c9bc600..12f594b03c2c4 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-08-21 +date: 2024-08-23 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 67f7109195f0e..812997c8ddd93 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-08-21 +date: 2024-08-23 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 8355cd6f915b8..1179462c13786 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-08-21 +date: 2024-08-23 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 f24a982ad7154..464b53f00ebd7 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-08-21 +date: 2024-08-23 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 17da8b86fef28..a887bade5e4c8 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'screenshotting'] --- import screenshottingObj from './screenshotting.devdocs.json'; diff --git a/api_docs/search_assistant.devdocs.json b/api_docs/search_assistant.devdocs.json new file mode 100644 index 0000000000000..f2f5eb9bec4e8 --- /dev/null +++ b/api_docs/search_assistant.devdocs.json @@ -0,0 +1,114 @@ +{ + "id": "searchAssistant", + "client": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [], + "setup": { + "parentPluginId": "searchAssistant", + "id": "def-public.SearchAssistantPluginSetup", + "type": "Interface", + "tags": [], + "label": "SearchAssistantPluginSetup", + "description": [], + "path": "x-pack/plugins/search_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "lifecycle": "setup", + "initialIsOpen": true + }, + "start": { + "parentPluginId": "searchAssistant", + "id": "def-public.SearchAssistantPluginStart", + "type": "Interface", + "tags": [], + "label": "SearchAssistantPluginStart", + "description": [], + "path": "x-pack/plugins/search_assistant/public/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "lifecycle": "start", + "initialIsOpen": true + } + }, + "server": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [], + "objects": [], + "setup": { + "parentPluginId": "searchAssistant", + "id": "def-server.SearchAssistantPluginSetup", + "type": "Interface", + "tags": [], + "label": "SearchAssistantPluginSetup", + "description": [], + "path": "x-pack/plugins/search_assistant/server/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "lifecycle": "setup", + "initialIsOpen": true + }, + "start": { + "parentPluginId": "searchAssistant", + "id": "def-server.SearchAssistantPluginStart", + "type": "Interface", + "tags": [], + "label": "SearchAssistantPluginStart", + "description": [], + "path": "x-pack/plugins/search_assistant/server/types.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "lifecycle": "start", + "initialIsOpen": true + } + }, + "common": { + "classes": [], + "functions": [], + "interfaces": [], + "enums": [], + "misc": [ + { + "parentPluginId": "searchAssistant", + "id": "def-common.PLUGIN_ID", + "type": "string", + "tags": [], + "label": "PLUGIN_ID", + "description": [], + "signature": [ + "\"searchAssistant\"" + ], + "path": "x-pack/plugins/search_assistant/common/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "searchAssistant", + "id": "def-common.PLUGIN_NAME", + "type": "string", + "tags": [], + "label": "PLUGIN_NAME", + "description": [], + "signature": [ + "\"searchAssistant\"" + ], + "path": "x-pack/plugins/search_assistant/common/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + } + ], + "objects": [] + } +} \ No newline at end of file diff --git a/api_docs/search_assistant.mdx b/api_docs/search_assistant.mdx new file mode 100644 index 0000000000000..c84725550c6d2 --- /dev/null +++ b/api_docs/search_assistant.mdx @@ -0,0 +1,46 @@ +--- +#### +#### 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: kibSearchAssistantPluginApi +slug: /kibana-dev-docs/api/searchAssistant +title: "searchAssistant" +image: https://source.unsplash.com/400x175/?github +description: API docs for the searchAssistant plugin +date: 2024-08-23 +tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchAssistant'] +--- +import searchAssistantObj from './search_assistant.devdocs.json'; + +AI Assistant for Search + +Contact [@elastic/search-kibana](https://github.com/orgs/elastic/teams/search-kibana) for questions regarding this plugin. + +**Code health stats** + +| Public API count | Any count | Items lacking comments | Missing exports | +|-------------------|-----------|------------------------|-----------------| +| 6 | 0 | 6 | 0 | + +## Client + +### Setup + + +### Start + + +## Server + +### Setup + + +### Start + + +## Common + +### Consts, variables and types + + diff --git a/api_docs/search_connectors.mdx b/api_docs/search_connectors.mdx index 52aad0b4b2b63..50d26e136591e 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-08-21 +date: 2024-08-23 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 9052e610f9bdf..4bdd9c8b64b6a 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'searchHomepage'] --- import searchHomepageObj from './search_homepage.devdocs.json'; diff --git a/api_docs/search_inference_endpoints.mdx b/api_docs/search_inference_endpoints.mdx index b3b4382334a1d..eac1d82c53b30 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-08-21 +date: 2024-08-23 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 96012e37d74c1..65d41d4067493 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-08-21 +date: 2024-08-23 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 9acc1abcd944f..e5f8ac16bd1a3 100644 --- a/api_docs/search_playground.devdocs.json +++ b/api_docs/search_playground.devdocs.json @@ -245,6 +245,36 @@ "deprecated": false, "trackAdoption": false, "initialIsOpen": false + }, + { + "parentPluginId": "searchPlayground", + "id": "def-common.PLUGIN_PATH", + "type": "string", + "tags": [], + "label": "PLUGIN_PATH", + "description": [], + "signature": [ + "\"/app/search_playground\"" + ], + "path": "x-pack/plugins/search_playground/common/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "searchPlayground", + "id": "def-common.SEARCH_MODE_FEATURE_FLAG_ID", + "type": "string", + "tags": [], + "label": "SEARCH_MODE_FEATURE_FLAG_ID", + "description": [], + "signature": [ + "\"searchPlayground:searchModeEnabled\"" + ], + "path": "x-pack/plugins/search_playground/common/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false } ], "objects": [] diff --git a/api_docs/search_playground.mdx b/api_docs/search_playground.mdx index 05eb1e522bec0..6ac3a66ad4359 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-08-21 +date: 2024-08-23 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 | |-------------------|-----------|------------------------|-----------------| -| 15 | 0 | 9 | 1 | +| 17 | 0 | 11 | 1 | ## Client diff --git a/api_docs/security.devdocs.json b/api_docs/security.devdocs.json index e7af8f38e9928..bc5c1ffbd6fc9 100644 --- a/api_docs/security.devdocs.json +++ b/api_docs/security.devdocs.json @@ -5243,7 +5243,7 @@ "signature": [ "\"getTags\" | \"pushCase\" | \"createCase\" | \"createComment\" | \"getCase\" | \"getComment\" | \"getReporters\" | \"getUserActions\" | \"findConfigurations\" | \"updateCase\" | \"updateComment\" | \"deleteCase\" | \"deleteComment\" | \"createConfiguration\" | \"updateConfiguration\"" ], - "path": "x-pack/plugins/security/server/authorization/privileges/feature_privilege_builder/cases.ts", + "path": "x-pack/packages/security/authorization_core/src/privileges/feature_privilege_builder/cases.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -6779,7 +6779,7 @@ "tags": [], "label": "RawKibanaPrivileges", "description": [], - "path": "x-pack/plugins/security/common/model/raw_kibana_privileges.ts", + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", "deprecated": false, "trackAdoption": false, "children": [ @@ -6793,7 +6793,7 @@ "signature": [ "{ [x: string]: string[]; }" ], - "path": "x-pack/plugins/security/common/model/raw_kibana_privileges.ts", + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", "deprecated": false, "trackAdoption": false }, @@ -6805,9 +6805,15 @@ "label": "features", "description": [], "signature": [ - "RawKibanaFeaturePrivileges" + { + "pluginId": "@kbn/security-authorization-core", + "scope": "server", + "docId": "kibKbnSecurityAuthorizationCorePluginApi", + "section": "def-server.RawKibanaFeaturePrivileges", + "text": "RawKibanaFeaturePrivileges" + } ], - "path": "x-pack/plugins/security/common/model/raw_kibana_privileges.ts", + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", "deprecated": false, "trackAdoption": false }, @@ -6821,7 +6827,7 @@ "signature": [ "{ [x: string]: string[]; }" ], - "path": "x-pack/plugins/security/common/model/raw_kibana_privileges.ts", + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", "deprecated": false, "trackAdoption": false }, @@ -6835,7 +6841,7 @@ "signature": [ "{ [x: string]: string[]; }" ], - "path": "x-pack/plugins/security/common/model/raw_kibana_privileges.ts", + "path": "x-pack/packages/security/authorization_core/src/privileges/raw_kibana_privileges.ts", "deprecated": false, "trackAdoption": false } diff --git a/api_docs/security.mdx b/api_docs/security.mdx index 3a49496d9c59f..eb269da0adc38 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'security'] --- import securityObj from './security.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 | |-------------------|-----------|------------------------|-----------------| -| 447 | 0 | 231 | 1 | +| 447 | 0 | 231 | 0 | ## Client diff --git a/api_docs/security_solution.mdx b/api_docs/security_solution.mdx index 76e3f0eb16d65..da1e6a70bf239 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'securitySolution'] --- import securitySolutionObj from './security_solution.devdocs.json'; diff --git a/api_docs/security_solution_ess.mdx b/api_docs/security_solution_ess.mdx index 0b8192338f200..95a511f99d1da 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-08-21 +date: 2024-08-23 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 c95d112baf826..4d2303631756e 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-08-21 +date: 2024-08-23 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 5339d62777dc9..ab11d0ad37ef8 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-08-21 +date: 2024-08-23 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 64457a389d898..7f655fca58e0b 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-08-21 +date: 2024-08-23 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 ad4e045daad26..3ce5854182cd4 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-08-21 +date: 2024-08-23 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 91f38ffddd33e..7277033802b1d 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-08-21 +date: 2024-08-23 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 b42bd14e4814f..9217a1297810a 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-08-21 +date: 2024-08-23 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 6ad11c249a14c..d0007f69c9928 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-08-21 +date: 2024-08-23 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 3fa8205f21daf..fb57b41f6e06d 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'snapshotRestore'] --- import snapshotRestoreObj from './snapshot_restore.devdocs.json'; diff --git a/api_docs/spaces.mdx b/api_docs/spaces.mdx index 59ee65bf31011..e3703e983e728 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'spaces'] --- import spacesObj from './spaces.devdocs.json'; diff --git a/api_docs/stack_alerts.mdx b/api_docs/stack_alerts.mdx index dd3e1edc82e5e..642db789beb54 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-08-21 +date: 2024-08-23 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 aa1bcc88c2220..80b4556a34fff 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-08-21 +date: 2024-08-23 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 b5154724d4de1..edebb8a295200 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'taskManager'] --- import taskManagerObj from './task_manager.devdocs.json'; diff --git a/api_docs/telemetry.mdx b/api_docs/telemetry.mdx index b4231b1393830..14742dff6ee7c 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-08-21 +date: 2024-08-23 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 53d89401667e3..5912c990dcfde 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-08-21 +date: 2024-08-23 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 79e25ab8fea21..a74c217d3c4a4 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-08-21 +date: 2024-08-23 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 72a33933602e6..3cd851a6b90c2 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-08-21 +date: 2024-08-23 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 5717b3b5679e9..82b36503730a2 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-08-21 +date: 2024-08-23 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 7fa88cd29e24c..ddc62457e8849 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-08-21 +date: 2024-08-23 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 587ee4d50a51b..9792b40c46aca 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'transform'] --- import transformObj from './transform.devdocs.json'; diff --git a/api_docs/triggers_actions_ui.devdocs.json b/api_docs/triggers_actions_ui.devdocs.json index 303af21b7d997..5c0b17eb4499f 100644 --- a/api_docs/triggers_actions_ui.devdocs.json +++ b/api_docs/triggers_actions_ui.devdocs.json @@ -5065,7 +5065,7 @@ "label": "setRuleProperty", "description": [], "signature": [ - "(key: Prop, value: ", + "(key: Prop, value: ", "SanitizedRule", "[Prop] | null) => void" ], diff --git a/api_docs/triggers_actions_ui.mdx b/api_docs/triggers_actions_ui.mdx index f114e807a6166..b5fe646028a5d 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'triggersActionsUi'] --- import triggersActionsUiObj from './triggers_actions_ui.devdocs.json'; diff --git a/api_docs/ui_actions.mdx b/api_docs/ui_actions.mdx index 9915f54cf30fc..14bf81bcfef85 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-08-21 +date: 2024-08-23 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 604084df0e0ab..1fdb07fde8da0 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-08-21 +date: 2024-08-23 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 707278a98b02c..edd5423d1971a 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-08-21 +date: 2024-08-23 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 8d052cffd6859..7f9551ac55cc4 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-08-21 +date: 2024-08-23 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 adf143c4c9812..54b7c47deb42c 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-08-21 +date: 2024-08-23 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 7970e48549905..e90d4de39f9c7 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-08-21 +date: 2024-08-23 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 090f239187bfc..4ddc4f8074f00 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-08-21 +date: 2024-08-23 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 33c4f072403f0..6b64db71f7dc8 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'urlForwarding'] --- import urlForwardingObj from './url_forwarding.devdocs.json'; diff --git a/api_docs/usage_collection.devdocs.json b/api_docs/usage_collection.devdocs.json index 965b393222e37..c807c2733c9d6 100644 --- a/api_docs/usage_collection.devdocs.json +++ b/api_docs/usage_collection.devdocs.json @@ -2286,6 +2286,24 @@ "trackAdoption": false, "lifecycle": "setup", "initialIsOpen": true + }, + "start": { + "parentPluginId": "usageCollection", + "id": "def-server.UsageCollectionStart", + "type": "Type", + "tags": [], + "label": "UsageCollectionStart", + "description": [ + "Plugin's start API" + ], + "signature": [ + "UsageCountersServiceStart" + ], + "path": "src/plugins/usage_collection/server/plugin.ts", + "deprecated": false, + "trackAdoption": false, + "lifecycle": "start", + "initialIsOpen": true } }, "common": { diff --git a/api_docs/usage_collection.mdx b/api_docs/usage_collection.mdx index 874fb37bbe051..2403b51076c6f 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'usageCollection'] --- import usageCollectionObj from './usage_collection.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 | |-------------------|-----------|------------------------|-----------------| -| 51 | 0 | 14 | 4 | +| 52 | 0 | 14 | 5 | ## Client @@ -42,6 +42,9 @@ Contact [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core ### Setup +### Start + + ### Interfaces diff --git a/api_docs/ux.mdx b/api_docs/ux.mdx index 69415a4f66a57..ddf0576809d6d 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-08-21 +date: 2024-08-23 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 b4fa19141b172..c27f7da18f709 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-08-21 +date: 2024-08-23 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 5d2b80bfa8cd7..666ce1d6d2e93 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-08-21 +date: 2024-08-23 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 2085debcc87a8..84d46e34098b2 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-08-21 +date: 2024-08-23 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 3aacbcaa010ed..410042f5b675b 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-08-21 +date: 2024-08-23 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 ff42025077245..e1ead079f5fb6 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-08-21 +date: 2024-08-23 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 b0a0339e9d85a..985bff449c64e 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-08-21 +date: 2024-08-23 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 98ef8896c5cc6..65771f0f50810 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-08-21 +date: 2024-08-23 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 fa31eb5bc0996..4822e0c936b06 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-08-21 +date: 2024-08-23 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 949fe265475ad..f493ff35e75da 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-08-21 +date: 2024-08-23 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 ebf25c0da9c20..1de84e76ab942 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visTypeXy'] --- import visTypeXyObj from './vis_type_xy.devdocs.json'; diff --git a/api_docs/visualizations.mdx b/api_docs/visualizations.mdx index 037033558eac4..a400a3f4386f2 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-08-21 +date: 2024-08-23 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visualizations'] --- import visualizationsObj from './visualizations.devdocs.json'; diff --git a/dev_docs/tutorials/generating_oas_for_http_apis.mdx b/dev_docs/tutorials/generating_oas_for_http_apis.mdx index f47031887db80..19852206f8006 100644 --- a/dev_docs/tutorials/generating_oas_for_http_apis.mdx +++ b/dev_docs/tutorials/generating_oas_for_http_apis.mdx @@ -90,9 +90,17 @@ import { fooResource } from '../../schemas/v1'; // Note: this response schema is instantiated lazily to avoid creating schemas that are not needed in most cases! const fooResourceResponse = () => { return schema.object({ - id: schema.string({ maxLength: 20 }), - name: schema.string(), - createdAt: schema.string(), + id: schema.string({ + maxLength: 20, + meta: { description: 'Add a description.' } + }), + name: schema.string({ meta: { description: 'Add a description.' } }), + createdAt: schema.string({ + meta: { + description: 'Add a description.', + deprecated: true, // An indicator that the property is deprecated + }, + }), }) } @@ -106,6 +114,8 @@ function registerFooRoute(router: IRouter, docLinks: DoclinksStart) { access: 'public', summary: 'Create a foo resource' description: `A foo resource enables baz. See the following [documentation](${docLinks.links.fooResource}).`, + tags: ['oas-tag:my tag'], // Each operation must have a tag that's used to group similar endpoints in the docs + deprecated: true // An indicator that the operation is deprecated }) .addVersion({ version: '2023-10-31', diff --git a/docs/CHANGELOG.asciidoc b/docs/CHANGELOG.asciidoc index fde64e7449fb2..c095b28666d7a 100644 --- a/docs/CHANGELOG.asciidoc +++ b/docs/CHANGELOG.asciidoc @@ -94,6 +94,22 @@ This can manifest as a validation error causing Kibana to not start. For more information, refer to {kibana-pull}190590[#190590]. ==== +[discrete] +[[known-187823]] +.Connectors require update due to Microsoft Teams product retirement +[%collapsible] +==== +*Details* + +The original method for configuring incoming webhooks in Microsoft Teams is being retired. +Refer to https://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/[Retirement of Office 365 connectors within Microsoft Teams] and {kibana-issue}187823[#187823]. + +*Impact* + +If you used the *Incoming Webhook* app in Microsoft Teams to generate a webhook URL for a <>, it will stop working in December 2024. + +*Workaround* + +Use the *Workflows* app in Microsoft Teams to create a new webhook URL, as described in <>. +Update your Microsoft Teams connector to use the new URL before the end of December 2024. +==== [float] [[deprecations-8.15.0]] diff --git a/docs/developer/plugin-list.asciidoc b/docs/developer/plugin-list.asciidoc index 49b5755243076..1f4f516e59167 100644 --- a/docs/developer/plugin-list.asciidoc +++ b/docs/developer/plugin-list.asciidoc @@ -795,6 +795,10 @@ Elastic. It uses Chromium and Puppeteer underneath to run the browser in headless mode. +|{kib-repo}blob/{branch}/x-pack/plugins/search_assistant/README.md[searchAssistant] +|This holds the Search AI Assistant which targets Search users and Serverless Elasticsearch. + + |{kib-repo}blob/{branch}/x-pack/plugins/search_connectors/README.mdx[searchConnectors] |This plugin contains common assets and endpoints for the use of connectors in Kibana. Primarily used by the enterprise_search and serverless_search plugins. @@ -803,6 +807,10 @@ It uses Chromium and Puppeteer underneath to run the browser in headless mode. |The Search Homepage is a shared homepage for elasticsearch users. +|{kib-repo}blob/{branch}/x-pack/plugins/search_indices/README.mdx[searchIndices] +|The Search Indices plugin is a shared set of pages for elasticsearch users across stack and serverless search solutions. + + |{kib-repo}blob/{branch}/x-pack/plugins/search_inference_endpoints/README.md[searchInferenceEndpoints] |The Inference Endpoints is a tool used to manage inference endpoints diff --git a/docs/management/connectors/action-types/teams.asciidoc b/docs/management/connectors/action-types/teams.asciidoc index 97d953c13eb11..13c34d793913b 100644 --- a/docs/management/connectors/action-types/teams.asciidoc +++ b/docs/management/connectors/action-types/teams.asciidoc @@ -8,7 +8,7 @@ :frontmatter-tags-content-type: [how-to] :frontmatter-tags-user-goals: [configure] -The Microsoft Teams connector uses https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook[Incoming Webhooks]. +The Microsoft Teams connector uses a webhook to send notifications. [float] [[define-teams-ui]] diff --git a/docs/management/connectors/pre-configured-connectors.asciidoc b/docs/management/connectors/pre-configured-connectors.asciidoc index b7ae9feac2d6f..8f9536331bb1c 100644 --- a/docs/management/connectors/pre-configured-connectors.asciidoc +++ b/docs/management/connectors/pre-configured-connectors.asciidoc @@ -513,14 +513,19 @@ xpack.actions.preconfigured: jwtKeyId: fedcbazyxwvutsrqponmlkjihgfedcba <4> secrets: clientSecret: secretsecret <5> - privateKey: -----BEGIN RSA PRIVATE KEY-----\nprivatekeyhere\n-----END RSA PRIVATE KEY----- <6> + privateKey: | <6> + -----BEGIN RSA PRIVATE KEY----- + MIIE... + KAgD... + ... multiple lines of key data ... + -----END RSA PRIVATE KEY----- -- <1> Specifies whether the connector uses basic or OAuth authentication. <2> The user identifier. <3> The client identifier assigned to your OAuth application. <4> The key identifier assigned to the JWT verifier map of your OAuth application. <5> The client secret assigned to your OAuth application. -<6> The RSA private key. If it has a password, you must also provide `privateKeyPassword`. +<6> The RSA private key in multiline format. If it has a password, you must also provide `privateKeyPassword`. [float] [[preconfigured-servicenow-configuration]] @@ -563,14 +568,19 @@ xpack.actions.preconfigured: jwtKeyId: fedcbazyxwvutsrqponmlkjihgfedcba <4> secrets: clientSecret: secretsecret <5> - privateKey: -----BEGIN RSA PRIVATE KEY-----\nprivatekeyhere\n-----END RSA PRIVATE KEY----- <6> + privateKey: | <6> + -----BEGIN RSA PRIVATE KEY----- + MIIE... + KAgD... + ... multiple lines of key data ... + -----END RSA PRIVATE KEY----- -- <1> Specifies whether the connector uses basic or OAuth authentication. <2> The user identifier. <3> The client identifier assigned to your OAuth application. <4> The key ID assigned to the JWT verifier map of your OAuth application. <5> The client secret assigned to the OAuth application. -<6> The RSA private key. If it has a password, you must also provide `privateKeyPassword`. +<6> The RSA private key in multiline format. If it has a password, you must also provide `privateKeyPassword`. [float] [[preconfigured-servicenow-sir-configuration]] @@ -613,14 +623,19 @@ xpack.actions.preconfigured: jwtKeyId: fedcbazyxwvutsrqponmlkjihgfedcba <4> secrets: clientSecret: secretsecret <5> - privateKey: -----BEGIN RSA PRIVATE KEY-----\nprivatekeyhere\n-----END RSA PRIVATE KEY----- <6> + privateKey: | <6> + -----BEGIN RSA PRIVATE KEY----- + MIIE... + KAgD... + ... multiple lines of key data ... + -----END RSA PRIVATE KEY----- -- <1> Specifies whether the connector uses basic or OAuth authentication. <2> The user identifier. <3> The client identifier assigned to the OAuth application. <4> The key ID assigned to the JWT verifier map of your OAuth application. <5> The client secret assigned to the OAuth application. -<6> The RSA private key. If it has a password, you must also specify +<6> The RSA private key in multiline format. If it has a password, you must also specify `privateKeyPassword`. diff --git a/docs/settings/alert-action-settings.asciidoc b/docs/settings/alert-action-settings.asciidoc index d41871917c4a1..c688f933b0ff1 100644 --- a/docs/settings/alert-action-settings.asciidoc +++ b/docs/settings/alert-action-settings.asciidoc @@ -67,7 +67,9 @@ xpack.actions.customHostSettings: certificateAuthoritiesFiles: [ 'one.crt' ] certificateAuthoritiesData: | -----BEGIN CERTIFICATE----- - ... multiple lines of certificate data here ... + MIIDTD... + CwUAMD... + ... multiple lines of certificate data ... -----END CERTIFICATE----- smtp: requireTLS: true @@ -125,9 +127,8 @@ A file name or list of file names of PEM-encoded certificate files to use to validate the server. `xpack.actions.customHostSettings[n].ssl.certificateAuthoritiesData` {ess-icon}:: -The contents of a PEM-encoded certificate file, or multiple files appended -into a single string. This configuration can be used for environments where -the files cannot be made available. +The contents of one or more PEM-encoded certificate files in multiline format. +This configuration can be used for environments where the files cannot be made available. [[action-config-email-domain-allowlist]] `xpack.actions.email.domain_allowlist` {ess-icon}:: A list of allowed email domains which can be used with the email connector. When this setting is not used, all email domains are allowed. When this setting is used, if any email is attempted to be sent that (a) includes an addressee with an email domain that is not in the allowlist, or (b) includes a from address domain that is not in the allowlist, it will fail with a message indicating the email is not allowed. diff --git a/docs/settings/apm-settings.asciidoc b/docs/settings/apm-settings.asciidoc index 3cd04a4ff3733..901988cf67c29 100644 --- a/docs/settings/apm-settings.asciidoc +++ b/docs/settings/apm-settings.asciidoc @@ -82,19 +82,19 @@ Sets a `fixed_interval` for date histograms in metrics aggregations. Defaults to Set to `false` to disable cloud APM migrations. Defaults to `true`. `xpack.apm.indices.error` {ess-icon}:: -Matcher for all error indices. Defaults to `logs-apm*,apm-*`. +Matcher for all error indices. Defaults to `logs-apm*,apm-*,traces-*.otel-*`. `xpack.apm.indices.onboarding` {ess-icon}:: Matcher for all onboarding indices. Defaults to `apm-*`. `xpack.apm.indices.span` {ess-icon}:: -Matcher for all span indices. Defaults to `traces-apm*,apm-*`. +Matcher for all span indices. Defaults to `traces-apm*,apm-*,traces-*.otel-*`. `xpack.apm.indices.transaction` {ess-icon}:: -Matcher for all transaction indices. Defaults to `traces-apm*,apm-*`. +Matcher for all transaction indices. Defaults to `traces-apm*,apm-*,traces-*.otel-*`. `xpack.apm.indices.metric` {ess-icon}:: -Matcher for all metrics indices. Defaults to `metrics-apm*,apm-*`. +Matcher for all metrics indices. Defaults to `metrics-apm*,apm-*,metrics-*.otel-*`. `xpack.apm.indices.sourcemap` {ess-icon}:: Matcher for all source map indices. Defaults to `apm-*`. diff --git a/docs/user/alerting/alerting-setup.asciidoc b/docs/user/alerting/alerting-setup.asciidoc index cf1f84c9cc032..b3af9bfbe0303 100644 --- a/docs/user/alerting/alerting-setup.asciidoc +++ b/docs/user/alerting/alerting-setup.asciidoc @@ -54,12 +54,11 @@ To use {alert-features} in a {kib} app, you must have the appropriate feature pr |=== | Action | {kib} privileges -| Give full access to manage alerts, connectors, and rules in *{stack-manage-app}* or *Discover* +| Give full access to manage alerts, connectors, and rules in *{stack-manage-app}* a| * `All` for the *Management > {stack-rules-feature}* feature. * `All` for the *Management > Rules Settings* feature. * `All` for the *Management > {connectors-feature}* feature. -* `Read` index privileges for the `.alerts-*` system indices [NOTE] ==== @@ -77,12 +76,11 @@ For {observability} rules, you must have `all` privileges for the appropriate {o For Security rules, refer to {security-guide}/detections-permissions-section.html[Detections prerequisites and requirements]. ==== -| Give view-only access to alerts, connectors, and rules in *{stack-manage-app}* or *Discover* +| Give view-only access to alerts, connectors, and rules in *{stack-manage-app}* a| * `Read` for the *Management > {stack-rules-feature}* feature. * `Read` for the *Management > Rules Settings* feature. * `Read` for the *Management > {connectors-feature}* feature. -* `Read` index privileges for the `.alerts-*` system indices [NOTE] ==== @@ -93,12 +91,16 @@ For {observability} rules, you must have `read` privileges for the appropriate { For Security rules, refer to {security-guide}/detections-permissions-section.html[Detections prerequisites and requirements]. ==== -| Revoke all access to alerts, connectors, and rules in *{stack-manage-app}* or *Discover* +| Give view-only access to alerts in *Discover* or *Dashboards* +a| +* `Read` index privileges for the `.alerts-*` system indices. + +| Revoke all access to alerts, connectors, and rules in *{stack-manage-app}*, *Discover*, or *Dashboards* a| * `None` for the *Management > {stack-rules-feature}* feature. * `None` for the *Management > Rules Settings* feature. * `None` for the *Management > {connectors-feature}* feature. - +* No index privileges for the `.alerts-*` system indices. |=== For more information on configuring roles that provide access to features, go to <>. diff --git a/docs/user/reporting/reporting-csv-limitations.asciidoc b/docs/user/reporting/reporting-csv-limitations.asciidoc index 253d6e4d75157..277b720e21be1 100644 --- a/docs/user/reporting/reporting-csv-limitations.asciidoc +++ b/docs/user/reporting/reporting-csv-limitations.asciidoc @@ -7,4 +7,8 @@ We recommend using CSV reports to export moderate amounts of data only. The feat - Cross-cluster search is used - ES|QL is used and result row count exceeds the limits of ES|QL queries -To work around the limitations, use filters to create multiple smaller reports, or extract the data you need directly with the Elasticsearch APIs. See {ref}/scroll-api.html[Scroll API], {ref}/point-in-time-api.html[Point in time API], {ref}/esql-rest.html[ES|QL] or {ref}/sql-rest-format.html#_csv[SQL] with CSV response data format. <> can be adjusted to overcome some of these limiting scenarios. Results are dependent on data size, availability, and latency factors and are not guaranteed. \ No newline at end of file +To work around the limitations, use filters to create multiple smaller reports, or extract the data you need directly with the Elasticsearch APIs. + +For more information on using Elasticsearch APIs directly, see {ref}/scroll-api.html[Scroll API], {ref}/point-in-time-api.html[Point in time API], {ref}/esql-rest.html[ES|QL] or {ref}/sql-rest-format.html#_csv[SQL] with CSV response data format. We recommend that you use an official Elastic language client: details for each programming language library that Elastic provides are in the https://www.elastic.co/guide/en/elasticsearch/client/index.html[{es} Client documentation]. + +<> can be adjusted to overcome some of these limiting scenarios. Results are dependent on data size, availability, and latency factors and are not guaranteed. \ No newline at end of file diff --git a/docs/user/reporting/response-codes.asciidoc b/docs/user/reporting/response-codes.asciidoc index 24a12a3de93a5..0b60fac63dc4b 100644 --- a/docs/user/reporting/response-codes.asciidoc +++ b/docs/user/reporting/response-codes.asciidoc @@ -1,5 +1,7 @@ -The reporting APIs use HTTP response codes to give feedback. In automation, -this helps external systems track the various possible job states: +The response payload of a request to generate a report includes the path to +download a report. The API to download a report uses HTTP response codes to give +feedback. In automation, this helps external systems track the various possible +job states: - **`200` (OK)**: As expected, Kibana returns `200` status in the response for successful requests to queue or download reports. diff --git a/docs/user/whats-new.asciidoc b/docs/user/whats-new.asciidoc index 3410a889c8f26..2a726ba3dc4f3 100644 --- a/docs/user/whats-new.asciidoc +++ b/docs/user/whats-new.asciidoc @@ -7,28 +7,44 @@ check the <>. Previous versions: {kibana-ref-all}/8.14/whats-new.html[8.14] | {kibana-ref-all}/8.13/whats-new.html[8.13] | {kibana-ref-all}/8.12/whats-new.html[8.12] | {kibana-ref-all}/8.11/whats-new.html[8.11] | {kibana-ref-all}/8.10/whats-new.html[8.10] | {kibana-ref-all}/8.9/whats-new.html[8.9] | {kibana-ref-all}/8.8/whats-new.html[8.8] | {kibana-ref-all}/8.7/whats-new.html[8.7] | {kibana-ref-all}/8.6/whats-new.html[8.6] | {kibana-ref-all}/8.5/whats-new.html[8.5] | {kibana-ref-all}/8.4/whats-new.html[8.4] | {kibana-ref-all}/8.3/whats-new.html[8.3] | {kibana-ref-all}/8.2/whats-new.html[8.2] | {kibana-ref-all}/8.1/whats-new.html[8.1] | {kibana-ref-all}/8.0/whats-new.html[8.0] - [discrete] -=== Analyst Experience +=== ES|QL [discrete] -==== View dashboard creator and last editor +==== Filter UX improvements in ES|QL -You can now see who created and who last updated a dashboard. +We're thrilled to unveil a complete overhaul of filtering in the ES|QL UX. Now, you can seamlessly filter data by browsing a time series chart, allowing for quick and intuitive time-based filtering. Interactive chart filtering lets you refine your data directly by clicking on any chart, while creating WHERE clause filters from the Discover table or sidebar has never been easier. These enhancements streamline data exploration and analysis, making your ES|QL experience more efficient and user-friendly than ever. -You can find the creator information right from the dashboard list. +*Filter by clicking a chart:* -image::images/dashboard-creator.png[Dashboard creator column in dashboard list] +image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blt965a5190f246f7c8/669a7d41e5f7c84793b031cb/filter-by-clicking-chart.gif[Filter by clicking a chart] -Quickly find all dashboards created by the same user with a simple filter. +*Filter by browsing a time series chart:* -image::images/dashboard-creator-filter.png[Filtering dashboards by creator] +image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blta20c9a93dded707c/669a7d40843f93a02fe51013/filter-by-brushing-time-series.gif[Filter by browsing a time series chart] -Note that the creator information will be visible only for dashboards created on or after version 8.14. +*Create WHERE clause filters from Discover table or sidebar:* -You can also see who last updated a dashboard by clicking the dashboard information icon from the dashboard list. The creator is also visible next to it. This information is immutable and cannot be changed. +image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blt50ac35ab3af29ff8/669a7d4006a6fafe4c7cb39d/create-where-clause-filters-from-sidebar.gif[Create WHERE clause filters from Discover table or sidebar] + + +[discrete] +==== Field statistics in ES|QL + +Field statistics are now available in ES|QL. This feature is designed to provide comprehensive insights for each data field. With this enhancement, you can access detailed statistics such as distributions, averages, and other key metrics, helping you quickly understand your data. This makes data exploration and quality assessment more efficient, providing deeper insights and streamlining the analysis of field-level data in ES|QL. + +image::images/field-statistics-esql.png[Field statistics in ES|QL] + +[discrete] +==== Integrations support in the ES|QL editor when using FROM command. + +We're excited to announce enhanced support for integrations in the ES|QL editor with the *FROM* command. Previously, you could only access indices, but now you can also view a list of installed integrations directly within the editor. This improvement streamlines your workflow, making it easier to manage and utilize various integrations while working with your data. + +image::images/integrations-in-esql.png[Accessing an integration from ES|QL] -image::images/dashboard-last-editor.png[Dashboard details panel with the name of the last editor] + +[discrete] +=== Dashboards [discrete] ==== Field statistics in Dashboards @@ -48,50 +64,36 @@ You can find the option to select statistics for your legends along with an expl image::images/statistics-in-legends2.png[Select statistics in legends] -[discrete] -==== Array of values for Metrics - -The new **Metrics** now supports fields that show an array of values. - -image::images/array-in-metrics.png[A metric showing an array of values, width=35%] [discrete] -==== Push flyout for Discover document viewer +==== View dashboard creator and last editor -You can now seamlessly view document details and the main table simultaneously in **Discover** with the new _push_ flyout. You can adjust the width of the flyout to suit your needs and explore your data much more easily. +You can now see who created and who last updated a dashboard. -image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/bltb40a408acf4ab688/669a58ea9fecd85219d58ed2/discover-push-flyout.gif[Resizable push flyout in Discover] +You can find the creator information right from the dashboard list. -[discrete] -==== Integrations support in the ES|QL editor when using FROM command. +image::images/dashboard-creator.png[Dashboard creator column in dashboard list] -We're excited to announce enhanced support for integrations in the ES|QL editor with the *FROM* command. Previously, you could only access indices, but now you can also view a list of installed integrations directly within the editor. This improvement streamlines your workflow, making it easier to manage and utilize various integrations while working with your data. +Quickly find all dashboards created by the same user with a simple filter. -image::images/integrations-in-esql.png[Accessing an integration from ES|QL] +image::images/dashboard-creator-filter.png[Filtering dashboards by creator] -[discrete] -==== Field statistics in ES|QL +Note that the creator information will be visible only for dashboards created on or after version 8.14. -Field statistics are now available in ES|QL. This feature is designed to provide comprehensive insights for each data field. With this enhancement, you can access detailed statistics such as distributions, averages, and other key metrics, helping you quickly understand your data. This makes data exploration and quality assessment more efficient, providing deeper insights and streamlining the analysis of field-level data in ES|QL. +You can also see who last updated a dashboard by clicking the dashboard information icon from the dashboard list. The creator is also visible next to it. This information is immutable and cannot be changed. -image::images/field-statistics-esql.png[Field statistics in ES|QL] +image::images/dashboard-last-editor.png[Dashboard details panel with the name of the last editor] [discrete] -==== Filter UX improvements in ES|QL - -We're thrilled to unveil a complete overhaul of filtering in the ES|QL UX. Now, you can seamlessly filter data by browsing a time series chart, allowing for quick and intuitive time-based filtering. Interactive chart filtering lets you refine your data directly by clicking on any chart, while creating WHERE clause filters from the Discover table or sidebar has never been easier. These enhancements streamline data exploration and analysis, making your ES|QL experience more efficient and user-friendly than ever. +=== Discover -*Filter by clicking a chart:* - -image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blt965a5190f246f7c8/669a7d41e5f7c84793b031cb/filter-by-clicking-chart.gif[Filter by clicking a chart] - -*Filter by browsing a time series chart:* +[discrete] +==== Push flyout for Discover document viewer -image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blta20c9a93dded707c/669a7d40843f93a02fe51013/filter-by-brushing-time-series.gif[Filter by browsing a time series chart] +You can now seamlessly view document details and the main table simultaneously in **Discover** with the new _push_ flyout. You can adjust the width of the flyout to suit your needs and explore your data much more easily. -*Create WHERE clause filters from Discover table or sidebar:* +image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/bltb40a408acf4ab688/669a58ea9fecd85219d58ed2/discover-push-flyout.gif[Resizable push flyout in Discover] -image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blt50ac35ab3af29ff8/669a7d4006a6fafe4c7cb39d/create-where-clause-filters-from-sidebar.gif[Create WHERE clause filters from Discover table or sidebar] [discrete] === Alerting, cases, and connectors @@ -134,20 +136,6 @@ Analyze large volumes of logs efficiently, in very short times with Log Pattern image::https://images.contentstack.io/v3/assets/bltefdd0b53724fa2ce/blt7e63d7e764ab183e/669a807bd316c7015db35458/ml-log-pattern-analysis.gif[New log pattern analysis interface] -[discrete] -==== ES|QL support for field statistics in Discover - -The Field statistics functionality now supports ES|QL, Elastic's primary query language. - -image::images/esql-field-statistics.png[Field statistics in ES|QL] - -[discrete] -==== Field statistics embeddable panel in Dashboards - -You can now add field statistics panels with ES|QL support straight within your dashboards, eliminating the need to transition between **Discover** and **Dashboards**. - -image::images/field-statistics-panel-in-dashboards.png[Field statistics embeddable panel in Dashboards] - [discrete] ==== Log Rate Analysis contextual insights in serverless Observability @@ -156,42 +144,31 @@ You can now see insights in natural language, for example for the root cause of image::images/obs-log-rate-analysis-insigths.png[Log Rate Analysis contextual insights in serverless Observability] [discrete] -==== Anthropic integration with the Inference API +==== Inference API improvements -The inference API provides a seamless, intuitive interface to perform inference and other tasks against proprietary, hosted, and integrated external services. In 8.15, we're extending it to support Anthropic's chat completion API. +The inference API provides a seamless, intuitive interface to perform inference and other tasks against proprietary, hosted, and integrated external services. In 8.15, we're extending it with the following capabilities: -[discrete] -==== Support for reranking with the Inference API +* Support for Anthropic's chat completion API. +* Ability to host cross encoder models and perform the reranking task. -In 8.15, we're also extending the inference API with the ability to host cross encoder models in Elastic and perform the reranking task. [discrete] -=== Global Experience +=== Managing {kib} users and objects [discrete] -==== Simplified Sharing +==== Sharing improvements -You can now share a dashboard, search, or lens object in one click. When sharing an object, the most common actions are directly presented to you, and a short link is automatically generated, making it simpler than ever to share your work. +You can now share a dashboard, search, or Lens object in one click. When sharing an object, the most common actions are directly presented to you, and a short link is automatically generated, making it simpler than ever to share your work. image::images/share-modal.png[New object share modal, width=50%] [discrete] -==== “My dashboards” filter - -The days of manually scrolling through an endless list of dashboards are behind you. You can now filter by creator to go directly to the dashboards created by a specific teammate. - -NOTE: Only dashboards created on or after 8.14 will have a creator. - -[discrete] -==== Quick API keys +==== Quick API key creation Many API keys don’t require custom settings, so we made it simple to generate a standard key. From the **Endpoints & API keys** top menu in Search, you can create a key in seconds. image::images/create-simple-api-key.png[Shortcut to create an API key, width=60%] -[discrete] -=== Platform Security - [discrete] ==== Filtering by User in Kibana Audit Logs diff --git a/fleet_packages.json b/fleet_packages.json index 1217c4f2ec861..4ff38b376c6f9 100644 --- a/fleet_packages.json +++ b/fleet_packages.json @@ -30,11 +30,11 @@ }, { "name": "elastic_agent", - "version": "2.0.2" + "version": "2.0.3" }, { "name": "endpoint", - "version": "8.15.0" + "version": "8.15.1" }, { "name": "fleet_server", @@ -56,6 +56,6 @@ }, { "name": "security_detection_engine", - "version": "8.15.2" + "version": "8.15.3" } ] \ No newline at end of file diff --git a/oas_docs/bundle.json b/oas_docs/bundle.json index fbf194c8491a2..1f5b3e095ea7a 100644 --- a/oas_docs/bundle.json +++ b/oas_docs/bundle.json @@ -713,7 +713,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -804,7 +805,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -922,7 +924,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -1897,7 +1900,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -1988,7 +1992,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -2106,7 +2111,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -3064,7 +3070,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -3155,7 +3162,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -3273,7 +3281,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -4467,7 +4476,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -4558,7 +4568,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -4676,7 +4687,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" diff --git a/oas_docs/bundle.serverless.json b/oas_docs/bundle.serverless.json index fbf194c8491a2..1f5b3e095ea7a 100644 --- a/oas_docs/bundle.serverless.json +++ b/oas_docs/bundle.serverless.json @@ -713,7 +713,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -804,7 +805,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -922,7 +924,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -1897,7 +1900,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -1988,7 +1992,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -2106,7 +2111,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -3064,7 +3070,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -3155,7 +3162,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -3273,7 +3281,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -4467,7 +4476,8 @@ "enum": [ "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "type": "string" } @@ -4558,7 +4568,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" @@ -4676,7 +4687,8 @@ "validate", "maxExecutableActions", "maxAlerts", - "maxQueuedActions" + "maxQueuedActions", + "ruleExecution" ], "nullable": true, "type": "string" diff --git a/oas_docs/kibana.info.serverless.yaml b/oas_docs/kibana.info.serverless.yaml index 1dc3f6df45338..efc8955856de1 100644 --- a/oas_docs/kibana.info.serverless.yaml +++ b/oas_docs/kibana.info.serverless.yaml @@ -32,6 +32,9 @@ info: url: https://www.elastic.co/licensing/elastic-license contact: name: Kibana Team + x-feedbackLink: + label: Feedback + url: https://github.com/elastic/docs-content/issues/new?assignees=&labels=feedback%2Ccommunity&projects=&template=api-feedback.yaml&title=%5BFeedback%5D%3A+ security: - apiKeyAuth: [] components: diff --git a/oas_docs/kibana.info.yaml b/oas_docs/kibana.info.yaml index c9049c4796516..13db5ef728833 100644 --- a/oas_docs/kibana.info.yaml +++ b/oas_docs/kibana.info.yaml @@ -30,6 +30,9 @@ info: url: https://www.elastic.co/licensing/elastic-license contact: name: Kibana Team + x-feedbackLink: + label: Feedback + url: https://github.com/elastic/docs-content/issues/new?assignees=&labels=feedback%2Ccommunity&projects=&template=api-feedback.yaml&title=%5BFeedback%5D%3A+ servers: - url: https://{kibana_url} variables: diff --git a/oas_docs/output/kibana.serverless.yaml b/oas_docs/output/kibana.serverless.yaml index 209a47defe2cf..f7e0765267b29 100644 --- a/oas_docs/output/kibana.serverless.yaml +++ b/oas_docs/output/kibana.serverless.yaml @@ -52,6 +52,10 @@ info: url: 'https://www.elastic.co/licensing/elastic-license' title: Kibana Serverless APIs version: 1.0.2 + x-feedbackLink: + label: Feedback + url: >- + https://github.com/elastic/docs-content/issues/new?assignees=&labels=feedback%2Ccommunity&projects=&template=api-feedback.yaml&title=%5BFeedback%5D%3A+ servers: - url: 'http://{kibana_host}:{port}' variables: @@ -879,37 +883,6 @@ paths: summary: Create agent action tags: - Elastic Agent actions - '/agents/{agentId}/actions/{actionId}/cancel': - parameters: - - in: path - name: agentId - required: true - schema: - type: string - - in: path - name: actionId - required: true - schema: - type: string - post: - operationId: agent-action-cancel - parameters: - - $ref: '#/components/parameters/Fleet_kbn_xsrf' - responses: - '200': - content: - application/json; Elastic-Api-Version=2023-10-31: - schema: - type: object - properties: - item: - $ref: '#/components/schemas/Fleet_agent_action' - description: OK - '400': - $ref: '#/components/responses/Fleet_error' - summary: Cancel agent action - tags: - - Elastic Agent actions '/agents/{agentId}/reassign': parameters: - in: path @@ -1230,6 +1203,32 @@ paths: summary: Get agent action status tags: - Elastic Agent actions + '/agents/actions/{actionId}/cancel': + parameters: + - in: path + name: actionId + required: true + schema: + type: string + post: + operationId: agent-action-cancel + parameters: + - $ref: '#/components/parameters/Fleet_kbn_xsrf' + responses: + '200': + content: + application/json; Elastic-Api-Version=2023-10-31: + schema: + type: object + properties: + item: + $ref: '#/components/schemas/Fleet_agent_action' + description: OK + '400': + $ref: '#/components/responses/Fleet_error' + summary: Cancel agent action + tags: + - Elastic Agent actions /agents/bulk_reassign: post: operationId: bulk-reassign-agents @@ -2190,6 +2189,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -2261,6 +2261,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -2367,6 +2368,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -3322,6 +3324,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -3393,6 +3396,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -3499,6 +3503,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -4425,6 +4430,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -4496,6 +4502,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -4602,6 +4609,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -5592,6 +5600,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -5663,6 +5672,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -5769,6 +5779,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: diff --git a/oas_docs/output/kibana.yaml b/oas_docs/output/kibana.yaml index 6cbdccfeb61cc..a4bc05d9fb2e4 100644 --- a/oas_docs/output/kibana.yaml +++ b/oas_docs/output/kibana.yaml @@ -51,6 +51,10 @@ info: url: 'https://www.elastic.co/licensing/elastic-license' title: Kibana APIs version: 1.0.2 + x-feedbackLink: + label: Feedback + url: >- + https://github.com/elastic/docs-content/issues/new?assignees=&labels=feedback%2Ccommunity&projects=&template=api-feedback.yaml&title=%5BFeedback%5D%3A+ servers: - url: 'https://{kibana_url}' variables: @@ -862,37 +866,6 @@ paths: summary: Create agent action tags: - Elastic Agent actions - '/agents/{agentId}/actions/{actionId}/cancel': - parameters: - - in: path - name: agentId - required: true - schema: - type: string - - in: path - name: actionId - required: true - schema: - type: string - post: - operationId: agent-action-cancel - parameters: - - $ref: '#/components/parameters/Fleet_kbn_xsrf' - responses: - '200': - content: - application/json; Elastic-Api-Version=2023-10-31: - schema: - type: object - properties: - item: - $ref: '#/components/schemas/Fleet_agent_action' - description: OK - '400': - $ref: '#/components/responses/Fleet_error' - summary: Cancel agent action - tags: - - Elastic Agent actions '/agents/{agentId}/reassign': parameters: - in: path @@ -1213,6 +1186,32 @@ paths: summary: Get agent action status tags: - Elastic Agent actions + '/agents/actions/{actionId}/cancel': + parameters: + - in: path + name: actionId + required: true + schema: + type: string + post: + operationId: agent-action-cancel + parameters: + - $ref: '#/components/parameters/Fleet_kbn_xsrf' + responses: + '200': + content: + application/json; Elastic-Api-Version=2023-10-31: + schema: + type: object + properties: + item: + $ref: '#/components/schemas/Fleet_agent_action' + description: OK + '400': + $ref: '#/components/responses/Fleet_error' + summary: Cancel agent action + tags: + - Elastic Agent actions /agents/bulk_reassign: post: operationId: bulk-reassign-agents @@ -2892,6 +2891,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -2963,6 +2963,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -3069,6 +3070,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -4024,6 +4026,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -4095,6 +4098,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -4201,6 +4205,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -5127,6 +5132,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -5198,6 +5204,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -5304,6 +5311,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -6294,6 +6302,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution type: string required: - reason @@ -6365,6 +6374,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: @@ -6471,6 +6481,7 @@ paths: - maxExecutableActions - maxAlerts - maxQueuedActions + - ruleExecution nullable: true type: string required: diff --git a/package.json b/package.json index f1782572d7646..6e1a4a4a7f6ef 100644 --- a/package.json +++ b/package.json @@ -55,6 +55,7 @@ "lint:es": "node scripts/eslint", "lint:style": "node scripts/stylelint", "makelogs": "node scripts/makelogs", + "quick-checks": "node scripts/quick_checks", "serverless": "node scripts/kibana --dev --serverless", "serverless-es": "node scripts/kibana --dev --serverless=es", "serverless-oblt": "node scripts/kibana --dev --serverless=oblt", @@ -112,7 +113,7 @@ "@elastic/datemath": "5.0.3", "@elastic/ebt": "1.0.0", "@elastic/ecs": "^8.11.1", - "@elastic/elasticsearch": "^8.14.0", + "@elastic/elasticsearch": "^8.15.0", "@elastic/ems-client": "8.5.3", "@elastic/eui": "95.7.0", "@elastic/filesaver": "1.1.2", @@ -222,6 +223,8 @@ "@kbn/config-schema": "link:packages/kbn-config-schema", "@kbn/console-plugin": "link:src/plugins/console", "@kbn/content-management-content-editor": "link:packages/content-management/content_editor", + "@kbn/content-management-content-insights-public": "link:packages/content-management/content_insights/content_insights_public", + "@kbn/content-management-content-insights-server": "link:packages/content-management/content_insights/content_insights_server", "@kbn/content-management-examples-plugin": "link:examples/content_management_examples", "@kbn/content-management-favorites-public": "link:packages/content-management/favorites/favorites_public", "@kbn/content-management-favorites-server": "link:packages/content-management/favorites/favorites_server", @@ -747,13 +750,16 @@ "@kbn/screenshot-mode-plugin": "link:src/plugins/screenshot_mode", "@kbn/screenshotting-example-plugin": "link:x-pack/examples/screenshotting_example", "@kbn/screenshotting-plugin": "link:x-pack/plugins/screenshotting", + "@kbn/screenshotting-server": "link:packages/kbn-screenshotting-server", "@kbn/search-api-panels": "link:packages/kbn-search-api-panels", + "@kbn/search-assistant": "link:x-pack/plugins/search_assistant", "@kbn/search-connectors": "link:packages/kbn-search-connectors", "@kbn/search-connectors-plugin": "link:x-pack/plugins/search_connectors", "@kbn/search-errors": "link:packages/kbn-search-errors", "@kbn/search-examples-plugin": "link:examples/search_examples", "@kbn/search-homepage": "link:x-pack/plugins/search_homepage", "@kbn/search-index-documents": "link:packages/kbn-search-index-documents", + "@kbn/search-indices": "link:x-pack/plugins/search_indices", "@kbn/search-inference-endpoints": "link:x-pack/plugins/search_inference_endpoints", "@kbn/search-notebooks": "link:x-pack/plugins/search_notebooks", "@kbn/search-playground": "link:x-pack/plugins/search_playground", @@ -761,12 +767,14 @@ "@kbn/search-types": "link:packages/kbn-search-types", "@kbn/searchprofiler-plugin": "link:x-pack/plugins/searchprofiler", "@kbn/security-api-key-management": "link:x-pack/packages/security/api_key_management", + "@kbn/security-authorization-core": "link:x-pack/packages/security/authorization_core", "@kbn/security-form-components": "link:x-pack/packages/security/form_components", "@kbn/security-hardening": "link:packages/kbn-security-hardening", "@kbn/security-plugin": "link:x-pack/plugins/security", "@kbn/security-plugin-types-common": "link:x-pack/packages/security/plugin_types_common", "@kbn/security-plugin-types-public": "link:x-pack/packages/security/plugin_types_public", "@kbn/security-plugin-types-server": "link:x-pack/packages/security/plugin_types_server", + "@kbn/security-role-management-model": "link:x-pack/packages/security/role_management_model", "@kbn/security-solution-distribution-bar": "link:x-pack/packages/security-solution/distribution_bar", "@kbn/security-solution-ess": "link:x-pack/plugins/security_solution_ess", "@kbn/security-solution-features": "link:x-pack/packages/security-solution/features", @@ -865,6 +873,7 @@ "@kbn/shared-ux-storybook-config": "link:packages/shared-ux/storybook/config", "@kbn/shared-ux-storybook-mock": "link:packages/shared-ux/storybook/mock", "@kbn/shared-ux-tabbed-modal": "link:packages/shared-ux/modal/tabbed", + "@kbn/shared-ux-table-persist": "link:packages/shared-ux/table_persist", "@kbn/shared-ux-utility": "link:packages/kbn-shared-ux-utility", "@kbn/slo-plugin": "link:x-pack/plugins/observability_solution/slo", "@kbn/slo-schema": "link:x-pack/packages/kbn-slo-schema", @@ -964,10 +973,10 @@ "@langchain/community": "0.2.18", "@langchain/core": "^0.2.18", "@langchain/google-genai": "^0.0.23", - "@langchain/langgraph": "^0.0.31", + "@langchain/langgraph": "0.0.34", "@langchain/openai": "^0.1.3", "@langtrase/trace-attributes": "^3.0.8", - "@launchdarkly/node-server-sdk": "^9.5.0", + "@launchdarkly/node-server-sdk": "^9.5.1", "@loaders.gl/core": "^3.4.7", "@loaders.gl/json": "^3.4.7", "@loaders.gl/shapefile": "^3.4.7", @@ -1015,7 +1024,7 @@ "archiver": "^5.3.1", "async": "^3.2.3", "aws4": "^1.12.0", - "axios": "^1.6.8", + "axios": "^1.7.4", "base64-js": "^1.3.1", "bitmap-sdf": "^1.0.3", "blurhash": "^2.0.1", @@ -1617,7 +1626,6 @@ "@wojtekmaj/enzyme-adapter-react-17": "^0.6.7", "@yarnpkg/lockfile": "^1.1.0", "aggregate-error": "^3.1.0", - "apidoc-markdown": "^7.3.2", "argsplit": "^1.0.5", "autoprefixer": "^10.4.7", "axe-core": "^4.10.0", @@ -1634,7 +1642,7 @@ "buildkite-test-collector": "^1.7.0", "callsites": "^3.1.0", "chance": "1.0.18", - "chromedriver": "^127.0.2", + "chromedriver": "^127.0.3", "clean-webpack-plugin": "^3.0.0", "cli-progress": "^3.12.0", "cli-table3": "^0.6.1", @@ -1683,7 +1691,7 @@ "file-loader": "^4.2.0", "find-cypress-specs": "^1.41.4", "form-data": "^4.0.0", - "geckodriver": "^4.4.2", + "geckodriver": "^4.4.3", "gulp-brotli": "^3.0.0", "gulp-postcss": "^9.0.1", "gulp-terser": "^2.1.0", diff --git a/packages/content-management/content_editor/src/components/editor_flyout_content.tsx b/packages/content-management/content_editor/src/components/editor_flyout_content.tsx index a347dbb2c4d31..acc5f68d62b02 100644 --- a/packages/content-management/content_editor/src/components/editor_flyout_content.tsx +++ b/packages/content-management/content_editor/src/components/editor_flyout_content.tsx @@ -28,7 +28,6 @@ import type { Item } from '../types'; import { MetadataForm } from './metadata_form'; import { useMetadataForm } from './use_metadata_form'; import type { CustomValidators } from './use_metadata_form'; -import { ActivityView } from './activity_view'; const getI18nTexts = ({ entityName }: { entityName: string }) => ({ saveButtonLabel: i18n.translate('contentManagement.contentEditor.saveButtonLabel', { @@ -56,7 +55,7 @@ export interface Props { }) => Promise; customValidators?: CustomValidators; onCancel: () => void; - showActivityView?: boolean; + appendRows?: React.ReactNode; } const capitalize = (str: string) => `${str.charAt(0).toLocaleUpperCase()}${str.substring(1)}`; @@ -70,7 +69,7 @@ export const ContentEditorFlyoutContent: FC = ({ onSave, onCancel, customValidators, - showActivityView, + appendRows, }) => { const { euiTheme } = useEuiTheme(); const [isSubmitting, setIsSubmitting] = useState(false); @@ -151,7 +150,7 @@ export const ContentEditorFlyoutContent: FC = ({ TagList={TagList} TagSelector={TagSelector} > - {showActivityView && } + {appendRows} diff --git a/packages/content-management/content_editor/src/components/editor_flyout_content_container.tsx b/packages/content-management/content_editor/src/components/editor_flyout_content_container.tsx index 18094bc04f084..49359cd1801f2 100644 --- a/packages/content-management/content_editor/src/components/editor_flyout_content_container.tsx +++ b/packages/content-management/content_editor/src/components/editor_flyout_content_container.tsx @@ -21,7 +21,7 @@ type CommonProps = Pick< | 'onCancel' | 'entityName' | 'customValidators' - | 'showActivityView' + | 'appendRows' >; export type Props = CommonProps; diff --git a/packages/content-management/content_editor/src/components/editor_loader.tsx b/packages/content-management/content_editor/src/components/editor_loader.tsx index b15009f3b4db1..6bfe88fa2c12a 100644 --- a/packages/content-management/content_editor/src/components/editor_loader.tsx +++ b/packages/content-management/content_editor/src/components/editor_loader.tsx @@ -6,32 +6,30 @@ * Side Public License, v 1. */ -import React, { useState, useCallback, useEffect } from 'react'; -import { EuiFlyoutHeader, EuiFlyoutBody, EuiFlyoutFooter } from '@elastic/eui'; +import React from 'react'; +import { EuiFlyoutBody, EuiFlyoutFooter, EuiFlyoutHeader } from '@elastic/eui'; import type { Props } from './editor_flyout_content_container'; -export const ContentEditorLoader: React.FC = (props) => { - const [Editor, setEditor] = useState | null>(null); - - const loadEditor = useCallback(async () => { - const { ContentEditorFlyoutContentContainer } = await import( - './editor_flyout_content_container' - ); - setEditor(() => ContentEditorFlyoutContentContainer); - }, []); +const ContentEditorFlyoutContentContainer = React.lazy(() => + import('./editor_flyout_content_container').then( + ({ ContentEditorFlyoutContentContainer: _ContentEditorFlyoutContentContainer }) => ({ + default: _ContentEditorFlyoutContentContainer, + }) + ) +); - useEffect(() => { - // On mount: load the editor asynchronously - loadEditor(); - }, [loadEditor]); - - return Editor ? ( - - ) : ( - <> - - - - +export const ContentEditorLoader: React.FC = (props) => { + return ( + + + + + + } + > + + ); }; diff --git a/packages/content-management/content_editor/src/components/inspector_flyout_content.test.tsx b/packages/content-management/content_editor/src/components/inspector_flyout_content.test.tsx index c543acedbae5b..e4668d022d00d 100644 --- a/packages/content-management/content_editor/src/components/inspector_flyout_content.test.tsx +++ b/packages/content-management/content_editor/src/components/inspector_flyout_content.test.tsx @@ -262,22 +262,5 @@ describe('', () => { tags: ['id-3', 'id-4'], // New selection }); }); - - test('should render activity view', async () => { - await act(async () => { - testBed = await setup({ showActivityView: true }); - }); - const { find, component } = testBed!; - - expect(find('activityView').exists()).toBe(true); - expect(find('activityView.createdByCard').exists()).toBe(true); - expect(find('activityView.updatedByCard').exists()).toBe(false); - - testBed.setProps({ - item: { ...savedObjectItem, updatedAt: '2021-01-01T00:00:00Z' }, - }); - component.update(); - expect(find('activityView.updatedByCard').exists()).toBe(true); - }); }); }); diff --git a/packages/content-management/content_editor/src/open_content_editor.tsx b/packages/content-management/content_editor/src/open_content_editor.tsx index 89b73991ba5d6..2365aa9641e23 100644 --- a/packages/content-management/content_editor/src/open_content_editor.tsx +++ b/packages/content-management/content_editor/src/open_content_editor.tsx @@ -21,7 +21,7 @@ export type OpenContentEditorParams = Pick< | 'readonlyReason' | 'entityName' | 'customValidators' - | 'showActivityView' + | 'appendRows' >; export function useOpenContentEditor() { diff --git a/packages/content-management/content_editor/tsconfig.json b/packages/content-management/content_editor/tsconfig.json index b4f77e22f1f44..565535ec85b3e 100644 --- a/packages/content-management/content_editor/tsconfig.json +++ b/packages/content-management/content_editor/tsconfig.json @@ -30,7 +30,6 @@ "@kbn/test-jest-helpers", "@kbn/react-kibana-mount", "@kbn/content-management-user-profiles", - "@kbn/user-profile-components" ], "exclude": [ "target/**/*" diff --git a/packages/content-management/content_insights/README.mdx b/packages/content-management/content_insights/README.mdx new file mode 100644 index 0000000000000..a2a3894775a29 --- /dev/null +++ b/packages/content-management/content_insights/README.mdx @@ -0,0 +1,64 @@ +--- +id: sharedUX/ContentInsights +slug: /shared-ux/content-insights +title: Content Insights +description: A set of Content Management services and component to provide insights on the content of Kibana. +tags: ['shared-ux', 'component'] +date: 2024-08-06 +--- + +## Description + +The Content Insights is a set of Content Management services and components to provide insights on the content of Kibana. +Currently, it allows to track the usage of your content and display the stats of it. + +- The service can count the following events: + - `viewed` +- It provides the api for registering the routes to increase the count and to get the stats. +- It provides the client to increase the count and to get the stats. +- It provides a flyout and a component to display the stats as a total count and a weekly chart. +- Internally it uses the usage collection plugin to store and search the data. + +## API + +// server side + +```ts +import { registerContentInsights } from '@kbn/content-management-content-insights-server'; + +if (plugins.usageCollection) { + // Registers routes for tracking and fetching dashboard views + registerContentInsights( + { + usageCollection: plugins.usageCollection, + http: core.http, + getStartServices: () => + core.getStartServices().then(([_, start]) => ({ + usageCollection: start.usageCollection!, + })), + }, + { + domainId: 'dashboard', + // makes sure that only users with read/all access to dashboard app can access the routes + routeTags: ['access:dashboardUsageStats'], + } + ); +} +``` + +// client side + +```ts +import { ContentInsightsClient } from '@kbn/content-management-content-insights-public'; + +const contentInsightsClient = new ContentInsightsClient( + { http: params.coreStart.http }, + { domainId: 'dashboard' } +); + +contentInsightsClient.track(dashboardId, 'viewed'); + +// wrap component in `ContentInsightsProvider` and use the hook to open an insights flyout +const openInsightsFlyout = useOpenInsightsFlyout(); +openInsightsFlyout({ item }); +``` diff --git a/packages/content-management/content_insights/content_insights_public/README.md b/packages/content-management/content_insights/content_insights_public/README.md new file mode 100644 index 0000000000000..719e26238f12a --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/README.md @@ -0,0 +1,3 @@ +# @kbn/content-management-content-insights-public + +Refer to [README](../README.mdx) diff --git a/packages/content-management/content_insights/content_insights_public/index.ts b/packages/content-management/content_insights/content_insights_public/index.ts new file mode 100644 index 0000000000000..e1a0a67ec39bf --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/index.ts @@ -0,0 +1,21 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { + ContentInsightsProvider, + type ContentInsightsServices, + useServices as useContentInsightsServices, +} from './src/services'; + +export { + type ContentInsightsClientPublic, + ContentInsightsClient, + type ContentInsightsEventTypes, +} from './src/client'; + +export { ActivityView, ViewsStats, type ActivityViewProps } from './src/components'; diff --git a/packages/content-management/content_insights/content_insights_public/jest.config.js b/packages/content-management/content_insights/content_insights_public/jest.config.js new file mode 100644 index 0000000000000..b1844b25fcfca --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/jest.config.js @@ -0,0 +1,13 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +module.exports = { + preset: '@kbn/test', + rootDir: '../../../..', + roots: ['/packages/content-management/content_insights/content_insights_public'], +}; diff --git a/packages/content-management/content_insights/content_insights_public/kibana.jsonc b/packages/content-management/content_insights/content_insights_public/kibana.jsonc new file mode 100644 index 0000000000000..fc4e12374faf9 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-browser", + "id": "@kbn/content-management-content-insights-public", + "owner": "@elastic/appex-sharedux" +} diff --git a/packages/content-management/content_insights/content_insights_public/package.json b/packages/content-management/content_insights/content_insights_public/package.json new file mode 100644 index 0000000000000..ca78ba0f1e39d --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/content-management-content-insights-public", + "private": true, + "version": "1.0.0", + "license": "SSPL-1.0 OR Elastic License 2.0" +} \ No newline at end of file diff --git a/packages/content-management/content_insights/content_insights_public/src/client.ts b/packages/content-management/content_insights/content_insights_public/src/client.ts new file mode 100644 index 0000000000000..8f392ce50536d --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/client.ts @@ -0,0 +1,50 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import type { HttpStart } from '@kbn/core-http-browser'; +import type { + ContentInsightsStats, + ContentInsightsStatsResponse, +} from '@kbn/content-management-content-insights-server'; + +export type ContentInsightsEventTypes = 'viewed'; + +/** + * Public interface of the Content Management Insights service. + */ +export interface ContentInsightsClientPublic { + track(id: string, eventType: ContentInsightsEventTypes): void; + getStats(id: string, eventType: ContentInsightsEventTypes): Promise; +} + +/** + * Client for the Content Management Insights service. + */ +export class ContentInsightsClient implements ContentInsightsClientPublic { + constructor( + private readonly deps: { http: HttpStart }, + private readonly config: { domainId: string } + ) {} + + track(id: string, eventType: ContentInsightsEventTypes) { + this.deps.http + .post(`/internal/content_management/insights/${this.config.domainId}/${id}/${eventType}`) + .catch((e) => { + // eslint-disable-next-line no-console + console.warn(`Could not track ${eventType} event for ${id}`, e); + }); + } + + async getStats(id: string, eventType: ContentInsightsEventTypes) { + return this.deps.http + .get( + `/internal/content_management/insights/${this.config.domainId}/${id}/${eventType}/stats` + ) + .then((response) => response.result); + } +} diff --git a/packages/content-management/content_editor/src/components/activity_view.test.tsx b/packages/content-management/content_insights/content_insights_public/src/components/activity_view.test.tsx similarity index 100% rename from packages/content-management/content_editor/src/components/activity_view.test.tsx rename to packages/content-management/content_insights/content_insights_public/src/components/activity_view.test.tsx diff --git a/packages/content-management/content_editor/src/components/activity_view.tsx b/packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx similarity index 50% rename from packages/content-management/content_editor/src/components/activity_view.tsx rename to packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx index eb413acb20e36..065a2ed0648a7 100644 --- a/packages/content-management/content_editor/src/components/activity_view.tsx +++ b/packages/content-management/content_insights/content_insights_public/src/components/activity_view.tsx @@ -6,15 +6,7 @@ * Side Public License, v 1. */ -import { - EuiFlexGroup, - EuiFlexItem, - EuiFormRow, - EuiIconTip, - EuiPanel, - EuiSpacer, - EuiText, -} from '@elastic/eui'; +import { EuiFlexGroup, EuiFlexItem, EuiPanel, EuiSpacer, EuiText } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n-react'; import React from 'react'; @@ -30,7 +22,7 @@ import { getUserDisplayName } from '@kbn/user-profile-components'; import { Item } from '../types'; export interface ActivityViewProps { - item: Pick; + item: Pick, 'createdBy' | 'createdAt' | 'updatedBy' | 'updatedAt' | 'managed'>; } export const ActivityView = ({ item }: ActivityViewProps) => { @@ -54,78 +46,53 @@ export const ActivityView = ({ item }: ActivityViewProps) => { ); return ( - - {' '} - + + + + ) : item.managed ? ( + <>{ManagedUserLabel} + ) : ( + <> + {UnknownUserLabel} + + + ) + } + when={item.createdAt} + data-test-subj={'createdByCard'} + /> + + + {showLastUpdated && ( + + ) : item.managed ? ( + <>{ManagedUserLabel} + ) : ( + <> + {UnknownUserLabel} + + + ) } + when={item.updatedAt} + data-test-subj={'updatedByCard'} /> - - } - fullWidth - data-test-subj={'activityView'} - > - <> - - - - ) : item.managed ? ( - <>{ManagedUserLabel} - ) : ( - <> - {UnknownUserLabel} - - - ) - } - when={item.createdAt} - data-test-subj={'createdByCard'} - /> - - - {showLastUpdated && ( - - ) : item.managed ? ( - <>{ManagedUserLabel} - ) : ( - <> - {UnknownUserLabel} - - - ) - } - when={item.updatedAt} - data-test-subj={'updatedByCard'} - /> - )} - - - - + )} + + ); }; diff --git a/packages/content-management/content_insights/content_insights_public/src/components/index.ts b/packages/content-management/content_insights/content_insights_public/src/components/index.ts new file mode 100644 index 0000000000000..b018fca6c843e --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/components/index.ts @@ -0,0 +1,10 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { ActivityView, type ActivityViewProps } from './activity_view'; +export { ViewsStats } from './views_stats'; diff --git a/packages/content-management/content_insights/content_insights_public/src/components/views_stats/index.ts b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/index.ts new file mode 100644 index 0000000000000..01fa00cd44537 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/index.ts @@ -0,0 +1,9 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { ViewsStats } from './views_stats'; diff --git a/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_chart.tsx b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_chart.tsx new file mode 100644 index 0000000000000..ff1675744b9a6 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_chart.tsx @@ -0,0 +1,80 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import React from 'react'; +import { Chart, Settings, DARK_THEME, LIGHT_THEME, BarSeries, Axis } from '@elastic/charts'; +import { formatDate, useEuiTheme } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import moment from 'moment'; + +const dateFormatter = (d: Date) => formatDate(d, `MM/DD`); + +const seriesName = i18n.translate('contentManagement.contentEditor.viewsStats.viewsLabel', { + defaultMessage: 'Views', +}); + +const weekOfFormatter = (date: Date) => + i18n.translate('contentManagement.contentEditor.viewsStats.weekOfLabel', { + defaultMessage: 'Week of {date}', + values: { date: dateFormatter(date) }, + }); + +export const ViewsChart = ({ data }: { data: Array<[week: number, views: number]> }) => { + const { colorMode } = useEuiTheme(); + + const momentDow = moment().localeData().firstDayOfWeek(); // configured from advanced settings + const isoDow = momentDow === 0 ? 7 : momentDow; + + const momentTz = moment().tz(); // configured from advanced settings + + return ( + + + + + + + + ); +}; diff --git a/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.test.tsx b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.test.tsx new file mode 100644 index 0000000000000..649c34da0f2f7 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.test.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 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 or the Server + * Side Public License, v 1. + */ + +import React from 'react'; +import { render, within } from '@testing-library/react'; +import { I18nProvider } from '@kbn/i18n-react'; +import { QueryClientProvider, QueryClient } from '@tanstack/react-query'; +import { ContentInsightsProvider } from '../../services'; + +import { ViewsStats } from './views_stats'; + +beforeEach(() => { + jest.useFakeTimers(); + jest.setSystemTime(new Date('2024-07-15T14:00:00.00Z')); +}); +afterEach(() => jest.clearAllMocks()); +afterAll(() => jest.useRealTimers()); + +const mockStats = jest.fn().mockResolvedValue({ + from: '2024-05-01T00:00:00.000Z', + count: 10, + daily: [ + { + date: '2024-05-01T00:00:00.000Z', + count: 5, + }, + { + date: '2024-06-01T00:00:00.000Z', + count: 5, + }, + ], +}); + +const WrappedViewsStats = () => { + const item = { id: '1' } as any; + const client = { + track: jest.fn(), + getStats: mockStats, + }; + return ( + + + + + + + + ); +}; + +describe('ViewsStats', () => { + test('should render the total views and chart', async () => { + const { getByTestId } = render(); + const totalViews = getByTestId('views-stats-total-views'); + expect(totalViews).toBeInTheDocument(); + await within(totalViews).findByText('Views (last 75 days)'); + await within(totalViews).findByText('10'); + }); +}); diff --git a/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.tsx b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.tsx new file mode 100644 index 0000000000000..15138b55ba9b5 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats.tsx @@ -0,0 +1,125 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { EuiPanel, EuiStat, EuiSpacer, useEuiTheme, EuiIconTip } from '@elastic/eui'; +import React from 'react'; +import { FormattedMessage } from '@kbn/i18n-react'; +import { useQuery } from '@tanstack/react-query'; +import { i18n } from '@kbn/i18n'; +import type { ContentInsightsStats } from '@kbn/content-management-content-insights-server'; +import { css } from '@emotion/react'; +import moment from 'moment'; + +import { Item } from '../../types'; +import { ViewsChart } from './views_chart'; +import { useServices } from '../../services'; + +export const ViewsStats = ({ item }: { item: Item }) => { + const contentInsightsClient = useServices()?.contentInsightsClient; + + if (!contentInsightsClient) { + throw new Error('Content insights client is not available'); + } + + const { euiTheme } = useEuiTheme(); + const { data, isLoading } = useQuery( + ['content-insights:viewed', item.id], + async () => + contentInsightsClient.getStats(item.id, 'viewed').then((response) => ({ + totalDays: getTotalDays(response), + totalViews: response.count, + chartData: getChartData(response), + })), + { + staleTime: 0, + retry: false, + } + ); + + return ( + + + + + + } + isLoading={isLoading} + /> + + + + + + ); +}; + +const NoViewsTip = () => ( + + } + /> +); + +export function getTotalDays(stats: ContentInsightsStats) { + return moment.utc().diff(moment.utc(stats.from), 'days'); +} + +export function getChartData(stats: ContentInsightsStats): Array<[week: number, views: number]> { + // prepare a map of views by week starting from the first full week till the current week + const viewsByWeek = new Map(); + + // we use moment to handle weeks because it is configured with the correct first day of the week from advanced settings + // by default it is sunday + const thisWeek = moment().startOf('week'); + const firstFullWeek = moment(stats.from).add(7, 'day').startOf('week'); + + // fill the map with weeks starting from the first full week till the current week + let current = firstFullWeek.clone(); + while (current.isSameOrBefore(thisWeek)) { + viewsByWeek.set(current.toISOString(), 0); + current = current.clone().add(1, 'week'); + } + + // fill the map with views per week + for (let i = 0; i < stats.daily.length; i++) { + const week = moment(stats.daily[i].date).startOf('week').toISOString(); + if (viewsByWeek.has(week)) { + viewsByWeek.set(week, viewsByWeek.get(week)! + stats.daily[i].count); + } + } + + return Array.from(viewsByWeek.entries()) + .sort((a, b) => (a[0] > b[0] ? 1 : -1)) + .map(([date, views]) => [new Date(date).getTime(), views]); +} diff --git a/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats_lib.test.tsx b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats_lib.test.tsx new file mode 100644 index 0000000000000..0ad2b32430561 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/components/views_stats/views_stats_lib.test.tsx @@ -0,0 +1,61 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import moment from 'moment'; +import { getChartData, getTotalDays } from './views_stats'; + +beforeEach(() => { + jest.useFakeTimers(); + jest.setSystemTime(new Date('2024-07-15T14:00:00.00Z')); + moment.updateLocale('en', { + week: { + dow: 1, // test with Monday is the first day of the week. + }, + }); +}); +afterEach(() => jest.clearAllMocks()); +afterAll(() => jest.useRealTimers()); + +describe('getTotalDays', () => { + test('should return the total days between the current date and the from date', () => { + const totalDays = getTotalDays({ + from: '2024-07-01T00:00:00.000Z', + daily: [], + count: 0, + }); + expect(totalDays).toBe(14); + }); +}); + +describe('getChartData', () => { + test('should return views bucketed by week', () => { + const data = getChartData({ + from: '2024-05-01T00:00:00.000Z', + daily: [], + count: 0, + }); + expect(data.every(([, count]) => count === 0)).toBe(true); + + // moment is mocked with America/New_York timezone, hence +04:00 offset + expect(data.map((d) => new Date(d[0]).toISOString())).toMatchInlineSnapshot(` + Array [ + "2024-05-06T04:00:00.000Z", + "2024-05-13T04:00:00.000Z", + "2024-05-20T04:00:00.000Z", + "2024-05-27T04:00:00.000Z", + "2024-06-03T04:00:00.000Z", + "2024-06-10T04:00:00.000Z", + "2024-06-17T04:00:00.000Z", + "2024-06-24T04:00:00.000Z", + "2024-07-01T04:00:00.000Z", + "2024-07-08T04:00:00.000Z", + "2024-07-15T04:00:00.000Z", + ] + `); + }); +}); diff --git a/packages/content-management/content_insights/content_insights_public/src/services.tsx b/packages/content-management/content_insights/content_insights_public/src/services.tsx new file mode 100644 index 0000000000000..13d2ade797024 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/services.tsx @@ -0,0 +1,49 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { FC, PropsWithChildren, useContext } from 'react'; +import React from 'react'; + +import { ContentInsightsClientPublic } from './client'; + +/** + * Abstract external services for this component. + */ +export interface ContentInsightsServices { + contentInsightsClient: ContentInsightsClientPublic; +} + +const ContentInsightsContext = React.createContext(null); + +/** + * Abstract external service Provider. + */ +export const ContentInsightsProvider: FC>> = ({ + children, + ...services +}) => { + if (!services.contentInsightsClient) { + return <>{children}; + } + + return ( + + {children} + + ); +}; + +/* + * React hook for accessing pre-wired services. + */ +export function useServices() { + const context = useContext(ContentInsightsContext); + return context; +} diff --git a/packages/content-management/content_insights/content_insights_public/src/types.ts b/packages/content-management/content_insights/content_insights_public/src/types.ts new file mode 100644 index 0000000000000..75e0ca561c9ae --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/src/types.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 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 or the Server + * Side Public License, v 1. + */ + +import { UserContentCommonSchema } from '@kbn/content-management-table-list-view-common'; + +export type Item = UserContentCommonSchema; diff --git a/packages/content-management/content_insights/content_insights_public/tsconfig.json b/packages/content-management/content_insights/content_insights_public/tsconfig.json new file mode 100644 index 0000000000000..27d479a15d6c9 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_public/tsconfig.json @@ -0,0 +1,32 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node", + "react", + "@kbn/ambient-ui-types", + "@kbn/ambient-storybook-types", + "@emotion/react/types/css-prop", + "@testing-library/jest-dom", + "@testing-library/react" + ] + }, + "include": [ + "**/*.ts", + "**/*.tsx", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/content-management-user-profiles", + "@kbn/i18n-react", + "@kbn/i18n", + "@kbn/user-profile-components", + "@kbn/core-http-browser", + "@kbn/content-management-content-insights-server", + "@kbn/content-management-table-list-view-common", + ] +} diff --git a/packages/content-management/content_insights/content_insights_server/README.md b/packages/content-management/content_insights/content_insights_server/README.md new file mode 100644 index 0000000000000..00f54612cf532 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/README.md @@ -0,0 +1,3 @@ +# @kbn/content-management-content-insights-server + +Refer to [README](../README.mdx) diff --git a/packages/content-management/content_insights/content_insights_server/index.ts b/packages/content-management/content_insights/content_insights_server/index.ts new file mode 100644 index 0000000000000..fe78d0eb181ae --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/index.ts @@ -0,0 +1,13 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { + registerContentInsights, + type ContentInsightsStatsResponse, + type ContentInsightsStats, +} from './src/register'; diff --git a/packages/content-management/content_insights/content_insights_server/jest.config.js b/packages/content-management/content_insights/content_insights_server/jest.config.js new file mode 100644 index 0000000000000..7761f3fba8000 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/jest.config.js @@ -0,0 +1,13 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +module.exports = { + preset: '@kbn/test/jest_node', + rootDir: '../../../..', + roots: ['/packages/content-management/content_insights/content_insights_server'], +}; diff --git a/packages/content-management/content_insights/content_insights_server/kibana.jsonc b/packages/content-management/content_insights/content_insights_server/kibana.jsonc new file mode 100644 index 0000000000000..386c1a6bf1304 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-server", + "id": "@kbn/content-management-content-insights-server", + "owner": "@elastic/appex-sharedux" +} diff --git a/packages/content-management/content_insights/content_insights_server/package.json b/packages/content-management/content_insights/content_insights_server/package.json new file mode 100644 index 0000000000000..ff99762999828 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/content-management-content-insights-server", + "private": true, + "version": "1.0.0", + "license": "SSPL-1.0 OR Elastic License 2.0" +} \ No newline at end of file diff --git a/packages/content-management/content_insights/content_insights_server/src/register.ts b/packages/content-management/content_insights/content_insights_server/src/register.ts new file mode 100644 index 0000000000000..06283cce089ac --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/src/register.ts @@ -0,0 +1,147 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import type { + UsageCollectionSetup, + UsageCollectionStart, +} from '@kbn/usage-collection-plugin/server'; +import type { CoreSetup } from '@kbn/core/server'; +import { schema } from '@kbn/config-schema'; +import moment from 'moment'; + +/** + * Configuration for the usage counter + */ +export interface ContentInsightsConfig { + /** + * e.g. 'dashboard' + * passed as a domainId to usage counter apis + */ + domainId: string; + + /** + * Can control created routes access via access tags + */ + routeTags?: string[]; + + /** + * Retention period in days for usage counter data + */ + retentionPeriodDays?: number; +} + +export interface ContentInsightsDependencies { + usageCollection: UsageCollectionSetup; + http: CoreSetup['http']; + getStartServices: () => Promise<{ + usageCollection: UsageCollectionStart; + }>; +} + +export interface ContentInsightsStatsResponse { + result: ContentInsightsStats; +} + +export interface ContentInsightsStats { + /** + * The date from which the data is counted + */ + from: string; + /** + * Total count of events + */ + count: number; + /** + * Daily counts of events + */ + daily: Array<{ + date: string; + count: number; + }>; +} + +/* + * Registers the content insights routes + */ +export const registerContentInsights = ( + { usageCollection, http, getStartServices }: ContentInsightsDependencies, + config: ContentInsightsConfig +) => { + const retentionPeriodDays = config.retentionPeriodDays ?? 90; + const counter = usageCollection.createUsageCounter(config.domainId, { + retentionPeriodDays, + }); + + const router = http.createRouter(); + const validate = { + params: schema.object({ + id: schema.string(), + eventType: schema.literal('viewed'), + }), + }; + router.post( + { + path: `/internal/content_management/insights/${config.domainId}/{id}/{eventType}`, + validate, + options: { + tags: config.routeTags, + }, + }, + async (context, req, res) => { + const { id, eventType } = req.params; + + counter.incrementCounter({ + counterName: id, + counterType: eventType, + namespace: (await context.core).savedObjects.client.getCurrentNamespace(), + }); + return res.ok(); + } + ); + router.get( + { + path: `/internal/content_management/insights/${config.domainId}/{id}/{eventType}/stats`, + validate, + options: { + tags: config.routeTags, + }, + }, + async (context, req, res) => { + const { id, eventType } = req.params; + const { + usageCollection: { search }, + } = await getStartServices(); + + const startOfDay = moment.utc().startOf('day'); + const from = startOfDay.clone().subtract(retentionPeriodDays, 'days'); + + const result = await search({ + filters: { + domainId: config.domainId, + counterName: id, + counterType: eventType, + namespace: (await context.core).savedObjects.client.getCurrentNamespace(), + from: from.toISOString(), + }, + }); + + const response: ContentInsightsStatsResponse = { + result: { + from: from.toISOString(), + count: result.counters[0]?.count ?? 0, + daily: (result.counters[0]?.records ?? []).map((record) => ({ + date: record.updatedAt, + count: record.count, + })), + }, + }; + + return res.ok({ body: response }); + } + ); +}; diff --git a/packages/content-management/content_insights/content_insights_server/tsconfig.json b/packages/content-management/content_insights/content_insights_server/tsconfig.json new file mode 100644 index 0000000000000..3e2312c0278a2 --- /dev/null +++ b/packages/content-management/content_insights/content_insights_server/tsconfig.json @@ -0,0 +1,21 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node" + ] + }, + "include": [ + "**/*.ts", + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/usage-collection-plugin", + "@kbn/core", + "@kbn/config-schema", + ] +} diff --git a/packages/content-management/table_list_view_table/src/components/content_editor_activity_row.tsx b/packages/content-management/table_list_view_table/src/components/content_editor_activity_row.tsx new file mode 100644 index 0000000000000..79a10d42f41e2 --- /dev/null +++ b/packages/content-management/table_list_view_table/src/components/content_editor_activity_row.tsx @@ -0,0 +1,48 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { EuiFormRow, EuiIconTip, EuiSpacer } from '@elastic/eui'; +import { FormattedMessage } from '@kbn/i18n-react'; +import React, { FC } from 'react'; +import type { UserContentCommonSchema } from '@kbn/content-management-table-list-view-common'; +import { ActivityView, ViewsStats } from '@kbn/content-management-content-insights-public'; + +/** + * This component is used as an extension for the ContentEditor to render the ActivityView and ViewsStats inside the flyout without depending on them directly + */ +export const ContentEditorActivityRow: FC<{ item: UserContentCommonSchema }> = ({ item }) => { + return ( + + {' '} + + } + /> + + } + > + <> + + + + + + ); +}; diff --git a/packages/content-management/table_list_view_table/src/services.tsx b/packages/content-management/table_list_view_table/src/services.tsx index ebdbaf31b4f0e..b452bf916a525 100644 --- a/packages/content-management/table_list_view_table/src/services.tsx +++ b/packages/content-management/table_list_view_table/src/services.tsx @@ -14,6 +14,10 @@ import { ContentEditorKibanaProvider, type SavedObjectsReference, } from '@kbn/content-management-content-editor'; +import { + ContentInsightsClientPublic, + ContentInsightsProvider, +} from '@kbn/content-management-content-insights-public'; import type { AnalyticsServiceStart } from '@kbn/core-analytics-browser'; import type { I18nStart } from '@kbn/core-i18n-browser'; import type { MountPoint, OverlayRef } from '@kbn/core-mount-utils-browser'; @@ -174,6 +178,11 @@ export interface TableListViewKibanaDependencies { * The favorites client to enable the favorites feature. */ favorites?: FavoritesClientPublic; + + /** + * Content insights client to enable content insights features. + */ + contentInsightsClient?: ContentInsightsClientPublic; } /** @@ -240,37 +249,42 @@ export const TableListViewKibanaProvider: FC< - { - notifications.toasts.addDanger({ title: toMountPoint(title, startServices), text }); - }} - > - - application.getUrlForApp('management', { - path: `/kibana/settings?query=savedObjects:listingLimit`, - }) - } + + { notifications.toasts.addDanger({ title: toMountPoint(title, startServices), text }); }} - searchQueryParser={searchQueryParser} - DateFormatterComp={(props) => } - currentAppId$={application.currentAppId$} - navigateToUrl={application.navigateToUrl} - isTaggingEnabled={() => Boolean(savedObjectsTagging)} - isFavoritesEnabled={() => Boolean(services.favorites)} - getTagList={getTagList} - TagList={TagList} - itemHasTags={itemHasTags} - getTagIdsFromReferences={getTagIdsFromReferences} - getTagManagementUrl={() => core.http.basePath.prepend(TAG_MANAGEMENT_APP_URL)} > - {children} - - + + application.getUrlForApp('management', { + path: `/kibana/settings?query=savedObjects:listingLimit`, + }) + } + notifyError={(title, text) => { + notifications.toasts.addDanger({ + title: toMountPoint(title, startServices), + text, + }); + }} + searchQueryParser={searchQueryParser} + DateFormatterComp={(props) => } + currentAppId$={application.currentAppId$} + navigateToUrl={application.navigateToUrl} + isTaggingEnabled={() => Boolean(savedObjectsTagging)} + isFavoritesEnabled={() => Boolean(services.favorites)} + getTagList={getTagList} + TagList={TagList} + itemHasTags={itemHasTags} + getTagIdsFromReferences={getTagIdsFromReferences} + getTagManagementUrl={() => core.http.basePath.prepend(TAG_MANAGEMENT_APP_URL)} + > + {children} + + + diff --git a/packages/content-management/table_list_view_table/src/table_list_view.test.tsx b/packages/content-management/table_list_view_table/src/table_list_view.test.tsx index e56322099d5ff..f7ad968d78965 100644 --- a/packages/content-management/table_list_view_table/src/table_list_view.test.tsx +++ b/packages/content-management/table_list_view_table/src/table_list_view.test.tsx @@ -1052,7 +1052,7 @@ describe('TableListView', () => { }); describe('search', () => { - const updatedAt = new Date('2023-07-15').toISOString(); + const updatedAt = moment('2023-07-15').toISOString(); const hits: UserContentCommonSchema[] = [ { @@ -1146,7 +1146,7 @@ describe('TableListView', () => { { id: 'item-from-search', type: 'dashboard', - updatedAt: new Date('2023-07-01').toISOString(), + updatedAt: moment('2023-07-01').toISOString(), attributes: { title: 'Item from search', }, diff --git a/packages/content-management/table_list_view_table/src/table_list_view_table.tsx b/packages/content-management/table_list_view_table/src/table_list_view_table.tsx index 82894d7d8b6ef..c15462f88b585 100644 --- a/packages/content-management/table_list_view_table/src/table_list_view_table.tsx +++ b/packages/content-management/table_list_view_table/src/table_list_view_table.tsx @@ -38,6 +38,10 @@ import type { } from '@kbn/content-management-content-editor'; import type { UserContentCommonSchema } from '@kbn/content-management-table-list-view-common'; import type { RecentlyAccessed } from '@kbn/recently-accessed'; +import { + ContentInsightsProvider, + useContentInsightsServices, +} from '@kbn/content-management-content-insights-public'; import { Table, @@ -54,12 +58,10 @@ import { useTags } from './use_tags'; import { useInRouterContext, useUrlState } from './use_url_state'; import { RowActions, TableItemsRowActions } from './types'; import { sortByRecentlyAccessed } from './components/table_sort_select'; +import { ContentEditorActivityRow } from './components/content_editor_activity_row'; interface ContentEditorConfig - extends Pick< - OpenContentEditorParams, - 'isReadonly' | 'onSave' | 'customValidators' | 'showActivityView' - > { + extends Pick { enabled?: boolean; } @@ -371,6 +373,7 @@ function TableListViewTableComp({ } = useServices(); const openContentEditor = useOpenContentEditor(); + const contentInsightsServices = useContentInsightsServices(); const isInRouterContext = useInRouterContext(); @@ -567,6 +570,12 @@ function TableListViewTableComp({ close(); }), + appendRows: contentInsightsServices && ( + // have to "REWRAP" in the provider here because it will be rendered in a different context + + + + ), }); }, [ @@ -576,6 +585,7 @@ function TableListViewTableComp({ contentEditor, tableItemsRowActions, fetchItems, + contentInsightsServices, ] ); @@ -713,7 +723,7 @@ function TableListViewTableComp({ name: i18n.translate('contentManagement.tableList.listing.table.actionTitle', { defaultMessage: 'Actions', }), - width: `${32 * actions.length}px`, + width: `72px`, actions, }); } diff --git a/packages/content-management/table_list_view_table/tsconfig.json b/packages/content-management/table_list_view_table/tsconfig.json index 7bd513f12f99e..a5530ee717e49 100644 --- a/packages/content-management/table_list_view_table/tsconfig.json +++ b/packages/content-management/table_list_view_table/tsconfig.json @@ -36,6 +36,7 @@ "@kbn/react-kibana-mount", "@kbn/content-management-user-profiles", "@kbn/recently-accessed", + "@kbn/content-management-content-insights-public", "@kbn/content-management-favorites-public" ], "exclude": [ diff --git a/packages/core/application/core-application-browser-internal/integration_tests/application_service.test.tsx b/packages/core/application/core-application-browser-internal/integration_tests/application_service.test.tsx index d04157efb6476..fda23142288ca 100644 --- a/packages/core/application/core-application-browser-internal/integration_tests/application_service.test.tsx +++ b/packages/core/application/core-application-browser-internal/integration_tests/application_service.test.tsx @@ -159,7 +159,7 @@ describe('ApplicationService', () => { await act(async () => { await navigateToApp('app1'); - update(); + await update(); }); expect(currentAppIds).toEqual(['app1']); @@ -195,15 +195,15 @@ describe('ApplicationService', () => { await act(async () => { await navigateToApp('app1'); - update(); + await update(); }); await act(async () => { await navigateToApp('app2', { path: '/nested' }); - update(); + await update(); }); await act(async () => { await navigateToApp('app2', { path: '/another-path' }); - update(); + await update(); }); expect(locations).toEqual(['/', '/app/app1', '/app/app2/nested', '/app/app2/another-path']); @@ -625,9 +625,14 @@ describe('ApplicationService', () => { title: 'App1', mount: async ({ setHeaderActionMenu }: AppMountParameters) => { setHeaderActionMenu(mounter1); - promise.then(() => { - setHeaderActionMenu(mounter2); - }); + promise + .then(() => { + setHeaderActionMenu(mounter2); + }) + .catch((error) => { + // eslint-disable-next-line no-console + console.error('Error:', error); + }); return () => undefined; }, }); @@ -663,9 +668,14 @@ describe('ApplicationService', () => { title: 'App1', mount: async ({ setHeaderActionMenu }: AppMountParameters) => { setHeaderActionMenu(mounter1); - promise.then(() => { - setHeaderActionMenu(undefined); - }); + promise + .then(() => { + setHeaderActionMenu(undefined); + }) + .catch((error) => { + // eslint-disable-next-line no-console + console.error('Error:', error); + }); return () => undefined; }, }); diff --git a/packages/core/application/core-application-browser-internal/src/application_service.test.ts b/packages/core/application/core-application-browser-internal/src/application_service.test.ts index 073ce6099830e..89b34876e50c9 100644 --- a/packages/core/application/core-application-browser-internal/src/application_service.test.ts +++ b/packages/core/application/core-application-browser-internal/src/application_service.test.ts @@ -98,7 +98,9 @@ describe('#setup()', () => { await service.start(startDeps); expect(() => register(Symbol(), createApp({ id: 'app1' })) - ).toThrowErrorMatchingInlineSnapshot(`"Applications cannot be registered after \\"setup\\""`); + ).toThrowErrorMatchingInlineSnapshot( + `"Applications cannot be registered after \\"setup\\" (attempted to register \\"app1\\")"` + ); }); it('allows to register an AppUpdater for the application', async () => { diff --git a/packages/core/application/core-application-browser-internal/src/application_service.tsx b/packages/core/application/core-application-browser-internal/src/application_service.tsx index b30f4ce650730..0b1f0f3ec6431 100644 --- a/packages/core/application/core-application-browser-internal/src/application_service.tsx +++ b/packages/core/application/core-application-browser-internal/src/application_service.tsx @@ -182,7 +182,9 @@ export class ApplicationService { const validateApp = (app: App) => { if (this.registrationClosed) { - throw new Error(`Applications cannot be registered after "setup"`); + throw new Error( + `Applications cannot be registered after "setup" (attempted to register "${app.id}")` + ); } else if (!applicationIdRegexp.test(app.id)) { throw new Error( `Invalid application id: it can only be composed of alphanum chars, '-' and '_'` diff --git a/packages/core/apps/core-apps-server-internal/src/core_app.ts b/packages/core/apps/core-apps-server-internal/src/core_app.ts index e9676c792292a..5ee8fe4938a44 100644 --- a/packages/core/apps/core-apps-server-internal/src/core_app.ts +++ b/packages/core/apps/core-apps-server-internal/src/core_app.ts @@ -29,13 +29,13 @@ import type { import type { InternalStaticAssets } from '@kbn/core-http-server-internal'; import { combineLatest, - concatMap, firstValueFrom, map, type Observable, ReplaySubject, shareReplay, Subject, + switchMap, takeUntil, timer, } from 'rxjs'; @@ -238,7 +238,7 @@ export class CoreAppsService { // Poll for updates combineLatest([savedObjectsClient$, timer(0, 10_000)]) .pipe( - concatMap(async ([soClient]) => { + switchMap(async ([soClient]) => { try { const persistedOverrides = await soClient.get>( DYNAMIC_CONFIG_OVERRIDES_SO_TYPE, @@ -300,7 +300,10 @@ export class CoreAppsService { await soClient.create(DYNAMIC_CONFIG_OVERRIDES_SO_TYPE, newGlobalOverrides, { id: DYNAMIC_CONFIG_OVERRIDES_SO_ID, overwrite: true, + refresh: false, }); + // set it again in memory in case the timer polling the SO for updates has overridden it during this update. + this.configService.setDynamicConfigOverrides(req.body); } catch (err) { if (err instanceof ValidationError) { return res.badRequest({ body: err }); diff --git a/packages/core/chrome/core-chrome-browser-internal/src/ui/header/collapsible_nav.scss b/packages/core/chrome/core-chrome-browser-internal/src/ui/header/collapsible_nav.scss index a121ac4c02b25..1086e30ebec0e 100644 --- a/packages/core/chrome/core-chrome-browser-internal/src/ui/header/collapsible_nav.scss +++ b/packages/core/chrome/core-chrome-browser-internal/src/ui/header/collapsible_nav.scss @@ -7,9 +7,9 @@ $screenHeightBreakpoint: $euiSize * 15; } .kbnCollapsibleNav__recentsListGroup { - @include euiYScroll; max-height: $euiSize * 10; margin-right: -$euiSizeS; + @include euiYScroll; } .kbnCollapsibleNav__solutions { diff --git a/packages/core/saved-objects/core-saved-objects-server/src/mapping_definition.ts b/packages/core/saved-objects/core-saved-objects-server/src/mapping_definition.ts index 80ba357009530..0dfc9d2ea05e2 100644 --- a/packages/core/saved-objects/core-saved-objects-server/src/mapping_definition.ts +++ b/packages/core/saved-objects/core-saved-objects-server/src/mapping_definition.ts @@ -9,6 +9,7 @@ import type { PropertyName as EsPropertyName, MappingProperty as EsMappingProperty, + MappingPropertyBase as EsMappingPropertyBase, } from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; /** @@ -64,19 +65,20 @@ export interface SavedObjectsMappingProperties { * * @public */ -export type SavedObjectsFieldMapping = EsMappingProperty & { - /** - * The dynamic property of the mapping, either `false` or `'strict'`. If - * unspecified `dynamic: 'strict'` will be inherited from the top-level - * index mappings. - * - * Note: To limit the number of mapping fields Saved Object types should - * *never* use `dynamic: true`. - */ - dynamic?: false | 'strict'; - /** - * Some mapping types do not accept the `properties` attributes. Explicitly adding it as optional to our type - * to avoid type failures on all code using accessing them via `SavedObjectsFieldMapping.properties`. - */ - properties?: Record; -}; +export type SavedObjectsFieldMapping = EsMappingProperty & + EsMappingPropertyBase & { + /** + * The dynamic property of the mapping, either `false` or `'strict'`. If + * unspecified `dynamic: 'strict'` will be inherited from the top-level + * index mappings. + * + * Note: To limit the number of mapping fields Saved Object types should + * *never* use `dynamic: true`. + */ + dynamic?: false | 'strict'; + /** + * Some mapping types do not accept the `properties` attributes. Explicitly adding it as optional to our type + * to avoid type failures on all code using accessing them via `SavedObjectsFieldMapping.properties`. + */ + properties?: Record; + }; diff --git a/packages/kbn-alerting-types/index.ts b/packages/kbn-alerting-types/index.ts index dcf9cfe297ccb..da0603f60b3e7 100644 --- a/packages/kbn-alerting-types/index.ts +++ b/packages/kbn-alerting-types/index.ts @@ -17,4 +17,5 @@ export * from './r_rule_types'; export * from './rule_notify_when_type'; export * from './rule_type_types'; export * from './rule_types'; +export * from './rule_flapping'; export * from './search_strategy_types'; diff --git a/packages/kbn-alerting-types/rule_flapping.ts b/packages/kbn-alerting-types/rule_flapping.ts new file mode 100644 index 0000000000000..27f4edb3c693b --- /dev/null +++ b/packages/kbn-alerting-types/rule_flapping.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 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 or the Server + * Side Public License, v 1. + */ + +export const MIN_LOOK_BACK_WINDOW = 2; +export const MAX_LOOK_BACK_WINDOW = 20; +export const MIN_STATUS_CHANGE_THRESHOLD = 2; +export const MAX_STATUS_CHANGE_THRESHOLD = 20; diff --git a/packages/kbn-alerting-types/rule_types.ts b/packages/kbn-alerting-types/rule_types.ts index cb72d3bfd4c5e..a844914778c35 100644 --- a/packages/kbn-alerting-types/rule_types.ts +++ b/packages/kbn-alerting-types/rule_types.ts @@ -102,6 +102,7 @@ export enum RuleExecutionStatusWarningReasons { MAX_EXECUTABLE_ACTIONS = 'maxExecutableActions', MAX_ALERTS = 'maxAlerts', MAX_QUEUED_ACTIONS = 'maxQueuedActions', + EXECUTION = 'ruleExecution', } export type RuleExecutionStatuses = (typeof RuleExecutionStatusValues)[number]; @@ -238,6 +239,10 @@ export interface Rule { running?: boolean | null; viewInAppRelativeUrl?: string; alertDelay?: AlertDelay | null; + flapping?: { + lookBackWindow: number; + statusChangeThreshold: number; + }; } export type SanitizedRule = Omit< diff --git a/packages/kbn-alerts-grouping/src/components/alerts_grouping.test.tsx b/packages/kbn-alerts-grouping/src/components/alerts_grouping.test.tsx index 87517def778cd..47e2d5c1b4082 100644 --- a/packages/kbn-alerts-grouping/src/components/alerts_grouping.test.tsx +++ b/packages/kbn-alerts-grouping/src/components/alerts_grouping.test.tsx @@ -158,7 +158,7 @@ describe('AlertsGrouping', () => { }, { range: { - '@timestamp': { + 'kibana.alert.time_range': { gte: mockDate.from, lte: mockDate.to, }, diff --git a/packages/kbn-alerts-grouping/src/components/alerts_grouping.tsx b/packages/kbn-alerts-grouping/src/components/alerts_grouping.tsx index 5db1ef5a5d0ff..17a4d35f73e8a 100644 --- a/packages/kbn-alerts-grouping/src/components/alerts_grouping.tsx +++ b/packages/kbn-alerts-grouping/src/components/alerts_grouping.tsx @@ -199,7 +199,7 @@ const AlertsGroupingInternal = ( }; return ( - {...props} getGrouping={getGrouping} groupingLevel={level} diff --git a/packages/kbn-alerts-grouping/src/components/alerts_grouping_level.tsx b/packages/kbn-alerts-grouping/src/components/alerts_grouping_level.tsx index a82818215cbf4..c0ebf0e6fa234 100644 --- a/packages/kbn-alerts-grouping/src/components/alerts_grouping_level.tsx +++ b/packages/kbn-alerts-grouping/src/components/alerts_grouping_level.tsx @@ -14,6 +14,7 @@ import { type GroupingAggregation } from '@kbn/grouping'; import { isNoneGroup } from '@kbn/grouping'; import type { DynamicGroupingProps } from '@kbn/grouping/src'; import { parseGroupingQuery } from '@kbn/grouping/src'; +import { ALERT_TIME_RANGE } from '@kbn/rule-data-utils'; import { useGetAlertsGroupAggregationsQuery, UseGetAlertsGroupAggregationsQueryProps, @@ -94,7 +95,7 @@ export const AlertsGroupingLevel = typedMemo( ...filters, { range: { - '@timestamp': { + [ALERT_TIME_RANGE]: { gte: from, lte: to, }, diff --git a/packages/kbn-alerts-grouping/src/contexts/alerts_grouping_context.tsx b/packages/kbn-alerts-grouping/src/contexts/alerts_grouping_context.tsx index cc5e06e652cd4..2d1315e3ece6d 100644 --- a/packages/kbn-alerts-grouping/src/contexts/alerts_grouping_context.tsx +++ b/packages/kbn-alerts-grouping/src/contexts/alerts_grouping_context.tsx @@ -54,7 +54,6 @@ export const useAlertsGroupingState = (groupingId: string) => { setGroupingState((prevState) => ({ ...prevState, [groupingId]: { - // @ts-expect-error options might not be defined options: [], // @ts-expect-error activeGroups might not be defined activeGroups: initialActiveGroups, diff --git a/packages/kbn-alerts-grouping/src/types.ts b/packages/kbn-alerts-grouping/src/types.ts index 835941e8db95d..24239364bb6c2 100644 --- a/packages/kbn-alerts-grouping/src/types.ts +++ b/packages/kbn-alerts-grouping/src/types.ts @@ -22,7 +22,7 @@ import { ReactElement } from 'react'; export interface GroupModel { activeGroups: string[]; - options: Array<{ key: string; label: string }>; + options?: Array<{ key: string; label: string }>; } export interface AlertsGroupingState { diff --git a/packages/kbn-alerts-ui-shared/src/add_message_variables/add_message_variables.scss b/packages/kbn-alerts-ui-shared/src/add_message_variables/add_message_variables.scss index 521d0f399b19b..d53223bd6ad0d 100644 --- a/packages/kbn-alerts-ui-shared/src/add_message_variables/add_message_variables.scss +++ b/packages/kbn-alerts-ui-shared/src/add_message_variables/add_message_variables.scss @@ -1,5 +1,6 @@ .messageVariablesPanel { - @include euiYScrollWithShadows; max-height: $euiSize * 20; max-width: $euiSize * 20; + + @include euiYScrollWithShadows; } \ No newline at end of file diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/create_rule.test.ts b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/create_rule.test.ts index 8735a9bebca73..e1947f6d8890e 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/create_rule.test.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/create_rule.test.ts @@ -62,6 +62,10 @@ describe('createRule', () => { alert_delay: { active: 10, }, + flapping: { + look_back_window: 10, + status_change_threshold: 10, + }, }; const ruleToCreate: CreateRuleBody = { @@ -109,10 +113,18 @@ describe('createRule', () => { alertDelay: { active: 10, }, + flapping: { + lookBackWindow: 10, + statusChangeThreshold: 10, + }, }; http.post.mockResolvedValueOnce(resolvedValue); const result = await createRule({ http, rule: ruleToCreate as CreateRuleBody }); + expect(http.post).toHaveBeenCalledWith('/api/alerting/rule', { + body: '{"params":{"aggType":"count","termSize":5,"thresholdComparator":">","timeWindowSize":5,"timeWindowUnit":"m","groupBy":"all","threshold":[1000],"index":[".kibana"],"timeField":"alert.executionStatus.lastExecutionDate"},"consumer":"alerts","schedule":{"interval":"1m"},"tags":[],"name":"test","enabled":true,"throttle":null,"notifyWhen":"onActionGroupChange","rule_type_id":".index-threshold","actions":[{"group":"threshold met","id":"83d4d860-9316-11eb-a145-93ab369a4461","params":{"level":"info","message":"Rule \'{{rule.name}}\' is active for group \'{{context.group}}\':\\n\\n- Value: {{context.value}}\\n- Conditions Met: {{context.conditions}} over {{rule.params.timeWindowSize}}{{rule.params.timeWindowUnit}}\\n- Timestamp: {{context.date}}"},"frequency":{"notify_when":"onActionGroupChange","throttle":null,"summary":false}},{"id":".test-system-action","params":{}}],"alert_delay":{"active":10},"flapping":{"look_back_window":10,"status_change_threshold":10}}', + }); + expect(result).toEqual({ actions: [ { @@ -169,6 +181,10 @@ describe('createRule', () => { alertDelay: { active: 10, }, + flapping: { + lookBackWindow: 10, + statusChangeThreshold: 10, + }, }); }); }); diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.test.ts b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.test.ts index 8b41e38d14ec1..7c5c80efa3ee2 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.test.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.test.ts @@ -55,6 +55,10 @@ const ruleToCreate: CreateRuleBody = { alertDelay: { active: 10, }, + flapping: { + lookBackWindow: 10, + statusChangeThreshold: 10, + }, }; describe('transformCreateRuleBody', () => { @@ -96,8 +100,11 @@ describe('transformCreateRuleBody', () => { }, { id: '.test-system-action', params: {} }, ], - alert_delay: { active: 10 }, + flapping: { + look_back_window: 10, + status_change_threshold: 10, + }, }); }); }); diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.ts b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.ts index 9baae0267d22f..dd8d5483ef0d7 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/transform_create_rule_body.ts @@ -8,11 +8,26 @@ import { RewriteResponseCase } from '@kbn/actions-types'; import { CreateRuleBody } from './types'; +import { Rule } from '../../types'; + +const transformCreateRuleFlapping = (flapping: Rule['flapping']) => { + if (!flapping) { + return flapping; + } + + return { + flapping: { + look_back_window: flapping.lookBackWindow, + status_change_threshold: flapping.statusChangeThreshold, + }, + }; +}; export const transformCreateRuleBody: RewriteResponseCase = ({ ruleTypeId, actions = [], alertDelay, + flapping, ...res }): any => ({ ...res, @@ -44,4 +59,5 @@ export const transformCreateRuleBody: RewriteResponseCase = ({ }; }), ...(alertDelay ? { alert_delay: alertDelay } : {}), + ...(flapping !== undefined ? transformCreateRuleFlapping(flapping) : {}), }); diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/types.ts b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/types.ts index e40059d5e6860..1527744ced38c 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/types.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/create_rule/types.ts @@ -20,4 +20,5 @@ export interface CreateRuleBody throttle?: Rule['throttle']; notifyWhen?: Rule['notifyWhen']; alertDelay?: Rule['alertDelay']; + flapping?: Rule['flapping']; } diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.test.ts b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.test.ts index c30807884a646..d5efc7b8fd19f 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.test.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.test.ts @@ -52,6 +52,10 @@ const ruleToUpdate: UpdateRuleBody = { alertDelay: { active: 10, }, + flapping: { + lookBackWindow: 10, + statusChangeThreshold: 10, + }, }; describe('transformUpdateRuleBody', () => { @@ -98,6 +102,10 @@ describe('transformUpdateRuleBody', () => { }, tags: [], throttle: null, + flapping: { + look_back_window: 10, + status_change_threshold: 10, + }, }); }); }); diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.ts b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.ts index 959cf5c7cdd3c..45c34833fad9b 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/transform_update_rule_body.ts @@ -8,10 +8,25 @@ import { RewriteResponseCase } from '@kbn/actions-types'; import { UpdateRuleBody } from './types'; +import { Rule } from '../../types'; + +const transformUpdateRuleFlapping = (flapping: Rule['flapping']) => { + if (!flapping) { + return flapping; + } + + return { + flapping: { + look_back_window: flapping.lookBackWindow, + status_change_threshold: flapping.statusChangeThreshold, + }, + }; +}; export const transformUpdateRuleBody: RewriteResponseCase = ({ actions = [], alertDelay, + flapping, ...res }): any => ({ ...res, @@ -41,4 +56,5 @@ export const transformUpdateRuleBody: RewriteResponseCase = ({ }; }), ...(alertDelay ? { alert_delay: alertDelay } : {}), + ...(flapping !== undefined ? transformUpdateRuleFlapping(flapping) : {}), }); diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/types.ts b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/types.ts index dac91fa2076f6..7a466ac0b6d86 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/types.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/types.ts @@ -17,4 +17,5 @@ export interface UpdateRuleBody throttle?: Rule['throttle']; notifyWhen?: Rule['notifyWhen']; alertDelay?: Rule['alertDelay']; + flapping?: Rule['flapping']; } diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.test.ts b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.test.ts index 7cb64b51427e0..9668e60a79417 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.test.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.test.ts @@ -7,28 +7,74 @@ */ import { httpServiceMock } from '@kbn/core/public/mocks'; -import { Rule } from '../../types'; import { updateRule, UpdateRuleBody } from '.'; const http = httpServiceMock.createStartContract(); describe('updateRule', () => { test('should call rule update API', async () => { - const ruleToUpdate = { + const updatedRule = { + params: { + aggType: 'count', + termSize: 5, + thresholdComparator: '>', + timeWindowSize: 5, + timeWindowUnit: 'm', + groupBy: 'all', + threshold: [1000], + index: ['.kibana'], + timeField: 'alert.executionStatus.lastExecutionDate', + }, consumer: 'alerts', + schedule: { interval: '1m' }, + tags: [], name: 'test', - tags: ['foo'], + rule_type_id: '.index-threshold', + actions: [ + { + group: 'threshold met', + id: '1', + params: { + level: 'info', + message: 'alert ', + }, + connector_type_id: '.server-log', + frequency: { + notify_when: 'onActionGroupChange', + throttle: null, + summary: false, + }, + }, + { + id: '.test-system-action', + params: {}, + connector_type_id: '.system-action', + }, + ], + scheduled_task_id: '1', + execution_status: { status: 'pending', last_execution_date: '2021-04-01T21:33:13.250Z' }, + create_at: '2021-04-01T21:33:13.247Z', + updated_at: '2021-04-01T21:33:13.247Z', + create_by: 'user', + updated_by: 'user', + alert_delay: { + active: 10, + }, + flapping: { + look_back_window: 10, + status_change_threshold: 10, + }, + }; + + const updateRuleBody = { + name: 'test-update', + tags: ['foo', 'bar'], schedule: { - interval: '1m', + interval: '5m', }, params: {}, - createdAt: new Date('1970-01-01T00:00:00.000Z'), - updatedAt: new Date('1970-01-01T00:00:00.000Z'), - apiKey: null, - apiKeyOwner: null, - revision: 0, alertDelay: { - active: 10, + active: 50, }, actions: [ { @@ -43,37 +89,29 @@ describe('updateRule', () => { summary: false, }, }, - { - id: '.test-system-action', - params: {}, - actionTypeId: '.system-action', - }, ], - }; - - const resolvedValue: Rule = { - ...ruleToUpdate, - id: '12/3', - enabled: true, - ruleTypeId: 'test', - createdBy: null, - updatedBy: null, - muteAll: false, - mutedInstanceIds: [], - executionStatus: { - status: 'unknown', - lastExecutionDate: new Date('2020-08-20T19:23:38Z'), + flapping: { + lookBackWindow: 10, + statusChangeThreshold: 10, }, - revision: 1, }; http.put.mockResolvedValueOnce({ - ...resolvedValue, + ...updatedRule, + name: 'test-update', + tags: ['foo', 'bar'], + schedule: { + interval: '5m', + }, + params: {}, + alert_delay: { + active: 50, + }, actions: [ { group: 'default', id: '2', - connector_type_id: 'test', + action_type_dd: 'test', params: {}, use_alert_data_for_template: false, frequency: { @@ -82,41 +120,57 @@ describe('updateRule', () => { summary: false, }, }, - { - id: '.test-system-action', - params: {}, - connector_type_id: '.system-action', - }, ], + flapping: { + look_back_window: 10, + status_change_threshold: 10, + }, }); - const result = await updateRule({ http, id: '12/3', rule: ruleToUpdate as UpdateRuleBody }); + const result = await updateRule({ http, id: '12/3', rule: updateRuleBody as UpdateRuleBody }); expect(result).toEqual({ - ...resolvedValue, actions: [ { - group: 'default', - id: '2', - actionTypeId: 'test', - params: {}, - useAlertDataForTemplate: false, frequency: { notifyWhen: 'onActionGroupChange', - throttle: null, summary: false, + throttle: null, }, - }, - { - id: '.test-system-action', + group: 'default', + id: '2', params: {}, - actionTypeId: '.system-action', + useAlertDataForTemplate: false, }, ], + alertDelay: { + active: 50, + }, + consumer: 'alerts', + create_at: '2021-04-01T21:33:13.247Z', + create_by: 'user', + executionStatus: { + lastExecutionDate: '2021-04-01T21:33:13.250Z', + status: 'pending', + }, + flapping: { + lookBackWindow: 10, + statusChangeThreshold: 10, + }, + name: 'test-update', + params: {}, + ruleTypeId: '.index-threshold', + schedule: { + interval: '5m', + }, + scheduledTaskId: '1', + tags: ['foo', 'bar'], + updatedAt: '2021-04-01T21:33:13.247Z', + updatedBy: 'user', }); expect(http.put).toHaveBeenCalledWith('/api/alerting/rule/12%2F3', { - body: '{"name":"test","tags":["foo"],"schedule":{"interval":"1m"},"params":{},"actions":[{"group":"default","id":"2","params":{},"frequency":{"notify_when":"onActionGroupChange","throttle":null,"summary":false},"use_alert_data_for_template":false},{"id":".test-system-action","params":{}}],"alert_delay":{"active":10}}', + body: '{"name":"test-update","tags":["foo","bar"],"schedule":{"interval":"5m"},"params":{},"actions":[{"group":"default","id":"2","params":{},"frequency":{"notify_when":"onActionGroupChange","throttle":null,"summary":false},"use_alert_data_for_template":false}],"alert_delay":{"active":50},"flapping":{"look_back_window":10,"status_change_threshold":10}}', }); }); }); diff --git a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.ts b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.ts index 841778eaa52ee..97e5ed6bef480 100644 --- a/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.ts +++ b/packages/kbn-alerts-ui-shared/src/common/apis/update_rule/update_rule.ts @@ -21,6 +21,7 @@ export const UPDATE_FIELDS: Array = [ 'schedule', 'params', 'alertDelay', + 'flapping', ]; export const UPDATE_FIELDS_WITH_ACTIONS: Array = [ @@ -30,6 +31,7 @@ export const UPDATE_FIELDS_WITH_ACTIONS: Array = [ 'params', 'alertDelay', 'actions', + 'flapping', ]; export async function updateRule({ diff --git a/packages/kbn-alerts-ui-shared/src/common/transformations/transform_rule.ts b/packages/kbn-alerts-ui-shared/src/common/transformations/transform_rule.ts index 46717052d70b2..5081ef0314e4d 100644 --- a/packages/kbn-alerts-ui-shared/src/common/transformations/transform_rule.ts +++ b/packages/kbn-alerts-ui-shared/src/common/transformations/transform_rule.ts @@ -33,6 +33,19 @@ const transformLastRun: RewriteRequestCase = ({ ...rest, }); +const transformFlapping = (flapping: AsApiContract) => { + if (!flapping) { + return flapping; + } + + return { + flapping: { + lookBackWindow: flapping.look_back_window, + statusChangeThreshold: flapping.status_change_threshold, + }, + }; +}; + export const transformRule: RewriteRequestCase = ({ rule_type_id: ruleTypeId, created_by: createdBy, @@ -53,6 +66,7 @@ export const transformRule: RewriteRequestCase = ({ last_run: lastRun, next_run: nextRun, alert_delay: alertDelay, + flapping, ...rest }: any) => ({ ruleTypeId, @@ -76,6 +90,7 @@ export const transformRule: RewriteRequestCase = ({ ...(nextRun ? { nextRun } : {}), ...(apiKeyCreatedByUser !== undefined ? { apiKeyCreatedByUser } : {}), ...(alertDelay ? { alertDelay } : {}), + ...(flapping !== undefined ? transformFlapping(flapping) : {}), ...rest, }); diff --git a/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_flapping_inputs.tsx b/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_flapping_inputs.tsx new file mode 100644 index 0000000000000..6b3086df3f952 --- /dev/null +++ b/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_flapping_inputs.tsx @@ -0,0 +1,110 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import React, { useCallback } from 'react'; +import { EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; +import { + MIN_LOOK_BACK_WINDOW, + MAX_LOOK_BACK_WINDOW, + MIN_STATUS_CHANGE_THRESHOLD, + MAX_STATUS_CHANGE_THRESHOLD, +} from '@kbn/alerting-types'; +import { i18n } from '@kbn/i18n'; +import { RuleSettingsRangeInput } from './rule_settings_range_input'; + +const lookBackWindowLabel = i18n.translate( + 'alertsUIShared.ruleSettingsFlappingInputsProps.lookBackWindowLabel', + { + defaultMessage: 'Rule run look back window', + } +); + +const lookBackWindowHelp = i18n.translate( + 'alertsUIShared.ruleSettingsFlappingInputsProps.lookBackWindowHelp', + { + defaultMessage: 'The minimum number of runs in which the threshold must be met.', + } +); + +const statusChangeThresholdLabel = i18n.translate( + 'alertsUIShared.ruleSettingsFlappingInputsProps.statusChangeThresholdLabel', + { + defaultMessage: 'Alert status change threshold', + } +); + +const statusChangeThresholdHelp = i18n.translate( + 'alertsUIShared.ruleSettingsFlappingInputsProps.statusChangeThresholdHelp', + { + defaultMessage: + 'The minimum number of times an alert must switch states in the look back window.', + } +); + +export interface RuleSettingsFlappingInputsProps { + lookBackWindow: number; + statusChangeThreshold: number; + isDisabled?: boolean; + onLookBackWindowChange: (value: number) => void; + onStatusChangeThresholdChange: (value: number) => void; +} + +export const RuleSettingsFlappingInputs = (props: RuleSettingsFlappingInputsProps) => { + const { + lookBackWindow, + statusChangeThreshold, + isDisabled = false, + onLookBackWindowChange, + onStatusChangeThresholdChange, + } = props; + + const internalOnLookBackWindowChange = useCallback( + (e) => { + onLookBackWindowChange(parseInt(e.currentTarget.value, 10)); + }, + [onLookBackWindowChange] + ); + + const internalOnStatusChangeThresholdChange = useCallback( + (e) => { + onStatusChangeThresholdChange(parseInt(e.currentTarget.value, 10)); + }, + [onStatusChangeThresholdChange] + ); + + return ( + + + + + + + + + ); +}; diff --git a/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_flapping_message.tsx b/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_flapping_message.tsx new file mode 100644 index 0000000000000..7752ef7ba5e86 --- /dev/null +++ b/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_flapping_message.tsx @@ -0,0 +1,56 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { EuiText } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n-react'; +import React from 'react'; + +const getLookBackWindowLabelRuleRuns = (amount: number) => { + return i18n.translate('alertsUIShared.ruleSettingsFlappingMessage.lookBackWindowLabelRuleRuns', { + defaultMessage: '{amount, number} rule {amount, plural, one {run} other {runs}}', + values: { amount }, + }); +}; + +const getStatusChangeThresholdRuleRuns = (amount: number) => { + return i18n.translate('alertsUIShared.ruleSettingsFlappingMessage.statusChangeThresholdTimes', { + defaultMessage: '{amount, number} {amount, plural, one {time} other {times}}', + values: { amount }, + }); +}; + +export const flappingOffMessage = i18n.translate( + 'alertsUIShared.ruleSettingsFlappingMessage.flappingOffMessage', + { + defaultMessage: + 'Alert flapping detection is off. Alerts will be generated based on the rule interval, which might result in higher alert volumes.', + } +); + +export interface RuleSettingsFlappingMessageProps { + lookBackWindow: number; + statusChangeThreshold: number; +} + +export const RuleSettingsFlappingMessage = (props: RuleSettingsFlappingMessageProps) => { + const { lookBackWindow, statusChangeThreshold } = props; + + return ( + + {getLookBackWindowLabelRuleRuns(lookBackWindow)}
, + statusChangeThreshold: {getStatusChangeThresholdRuleRuns(statusChangeThreshold)}, + }} + /> + + ); +}; diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/rules_setting/rules_settings_range.tsx b/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_range_input.tsx similarity index 64% rename from x-pack/plugins/triggers_actions_ui/public/application/components/rules_setting/rules_settings_range.tsx rename to packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_range_input.tsx index 95f0f4f618ccf..2103a7c2adbd4 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/rules_setting/rules_settings_range.tsx +++ b/packages/kbn-alerts-ui-shared/src/rule_settings/rule_settings_range_input.tsx @@ -1,25 +1,28 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import React, { memo } from 'react'; import { EuiFormRow, EuiFormRowProps, EuiIconTip, EuiRange, EuiRangeProps } from '@elastic/eui'; -export interface RulesSettingsRangeProps { +export interface RuleSettingsRangeInputProps { label: EuiFormRowProps['label']; labelPopoverText?: string; min: number; max: number; value: number; + fullWidth?: EuiRangeProps['fullWidth']; disabled?: EuiRangeProps['disabled']; onChange?: EuiRangeProps['onChange']; } -export const RulesSettingsRange = memo((props: RulesSettingsRangeProps) => { - const { label, labelPopoverText, min, max, value, disabled, onChange, ...rest } = props; +export const RuleSettingsRangeInput = memo((props: RuleSettingsRangeInputProps) => { + const { label, labelPopoverText, min, max, value, fullWidth, disabled, onChange, ...rest } = + props; const renderLabel = () => { return ( @@ -34,8 +37,9 @@ export const RulesSettingsRange = memo((props: RulesSettingsRangeProps) => { }; return ( - + (values: T[], index?: number) => values[index ?? randomInt(values.length)]; // Arrays for data +const LOG_LEVELS: string[] = ['FATAL', 'ERROR', 'WARN', 'INFO', 'DEBUG', 'TRACE']; + +const JAVA_LOG_MESSAGES = [ + '[main] com.example1.core.ApplicationCore - Critical failure: NullPointerException encountered during startup', + '[main] com.example.service.UserService - User registration completed for userId: 12345', + '[main] com.example3.util.JsonParser - Parsing JSON response from external API', + '[main] com.example4.security.AuthManager - Unauthorized access attempt detected for userId: 67890', + '[main] com.example5.dao.UserDao - Database query failed: java.sql.SQLException: Timeout expired', +]; + const IP_ADDRESSES = [ '223.72.43.22', '20.24.184.101', @@ -50,3 +67,14 @@ export const getGeoCoordinate = (index?: number) => getAtIndexOrRandom(GEO_COORD export const getCloudProvider = (index?: number) => getAtIndexOrRandom(CLOUD_PROVIDERS, index); export const getCloudRegion = (index?: number) => getAtIndexOrRandom(CLOUD_REGION, index); export const getServiceName = (index?: number) => getAtIndexOrRandom(SERVICE_NAMES, index); +export const getJavaLog = () => + `${moment().format('YYYY-MM-DD HH:mm:ss,SSS')} ${getAtIndexOrRandom( + LOG_LEVELS + )} ${getAtIndexOrRandom(JAVA_LOG_MESSAGES)}`; + +export const getWebLog = () => { + const path = `/api/${noun()}/${verb()}`; + const bytes = randomInt(100, 4000); + + return `${ipv4()} - - [${moment().toISOString()}] "${httpMethod()} ${path} HTTP/1.1" ${httpStatusCode()} ${bytes} "-" "${userAgent()}"`; +}; diff --git a/packages/kbn-apm-synthtrace/src/scenarios/unstructured_logs.ts b/packages/kbn-apm-synthtrace/src/scenarios/unstructured_logs.ts new file mode 100644 index 0000000000000..fe9eee2ae1f32 --- /dev/null +++ b/packages/kbn-apm-synthtrace/src/scenarios/unstructured_logs.ts @@ -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 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 or the Server + * Side Public License, v 1. + */ +import { LogDocument, log } from '@kbn/apm-synthtrace-client'; +import { Scenario } from '../cli/scenario'; +import { IndexTemplateName } from '../lib/logs/custom_logsdb_index_templates'; +import { withClient } from '../lib/utils/with_client'; +import { parseLogsScenarioOpts } from './helpers/logs_scenario_opts_parser'; +import { getJavaLog, getWebLog } from './helpers/logs_mock_data'; + +const scenario: Scenario = async (runOptions) => { + const { isLogsDb } = parseLogsScenarioOpts(runOptions.scenarioOpts); + return { + bootstrap: async ({ logsEsClient }) => { + if (isLogsDb) await logsEsClient.createIndexTemplate(IndexTemplateName.LogsDb); + }, + generate: ({ range, clients: { logsEsClient } }) => { + const { logger } = runOptions; + + const datasetJavaLogs = (timestamp: number) => + log.create({ isLogsDb }).dataset('java').message(getJavaLog()).timestamp(timestamp); + + const datasetWebLogs = (timestamp: number) => + log.create({ isLogsDb }).dataset('web').message(getWebLog()).timestamp(timestamp); + + const logs = range + .interval('1m') + .rate(1) + .generator((timestamp) => { + return Array(200) + .fill(0) + .flatMap((_, index) => [datasetJavaLogs(timestamp), datasetWebLogs(timestamp)]); + }); + + return withClient( + logsEsClient, + logger.perf('generating_logs', () => logs) + ); + }, + }; +}; + +export default scenario; diff --git a/packages/kbn-babel-transform/fast_async_transformer.js b/packages/kbn-babel-transform/fast_async_transformer.js index fad1a1762ba4d..a9793e9faa0d9 100644 --- a/packages/kbn-babel-transform/fast_async_transformer.js +++ b/packages/kbn-babel-transform/fast_async_transformer.js @@ -39,6 +39,8 @@ async function withFastAsyncTransform(config, block) { try { await block(transform); success = true; + } catch (e) { + console.error('Error during transformation', e); } finally { try { await pool.destroy(); diff --git a/packages/kbn-config-schema/index.ts b/packages/kbn-config-schema/index.ts index e0adf545f454f..32fd90cf4713c 100644 --- a/packages/kbn-config-schema/index.ts +++ b/packages/kbn-config-schema/index.ts @@ -146,6 +146,23 @@ function recordOf( return new RecordOfType(keyType, valueType, options); } +function oneOf( + types: [ + Type, + Type, + Type, + Type, + Type, + Type, + Type, + Type, + Type, + Type, + Type, + Type + ], + options?: UnionTypeOptions +): Type; function oneOf( types: [ Type, diff --git a/packages/kbn-dev-cli-runner/src/run.ts b/packages/kbn-dev-cli-runner/src/run.ts index d84c7b9a4edf2..8440bd9ea6b57 100644 --- a/packages/kbn-dev-cli-runner/src/run.ts +++ b/packages/kbn-dev-cli-runner/src/run.ts @@ -31,18 +31,24 @@ export interface RunOptions { description?: string; log?: { defaultLevel?: LogLevel; + context?: string; }; flags?: FlagOptions; } export async function run(fn: RunFn, options: RunOptions = {}): Promise { const flags = getFlags(process.argv.slice(2), options.flags, options.log?.defaultLevel); - const log = new ToolingLog({ - level: pickLevelFromFlags(flags, { - default: options.log?.defaultLevel, - }), - writeTo: process.stdout, - }); + const log = new ToolingLog( + { + level: pickLevelFromFlags(flags, { + default: options.log?.defaultLevel, + }), + writeTo: process.stdout, + }, + { + context: options.log?.context, + } + ); const metrics = new Metrics(log); const helpText = getHelp({ diff --git a/packages/kbn-es-query/src/filters/build_filters/phrase_filter.ts b/packages/kbn-es-query/src/filters/build_filters/phrase_filter.ts index 485a10fddb038..63ff39e467aef 100644 --- a/packages/kbn-es-query/src/filters/build_filters/phrase_filter.ts +++ b/packages/kbn-es-query/src/filters/build_filters/phrase_filter.ts @@ -37,7 +37,7 @@ export type ScriptedPhraseFilter = Filter & { meta: PhraseFilterMeta; query: { script: { - script: estypes.InlineScript; + script: estypes.Script; }; }; }; @@ -134,7 +134,7 @@ export const getPhraseScript = (field: DataViewFieldBase, value: PhraseFilterVal params: { value: convertedValue, }, - } as estypes.InlineScript, + } as estypes.Script, }; }; diff --git a/packages/kbn-es-query/src/filters/build_filters/range_filter.ts b/packages/kbn-es-query/src/filters/build_filters/range_filter.ts index f80fce31cb8ae..46a36b5c49994 100644 --- a/packages/kbn-es-query/src/filters/build_filters/range_filter.ts +++ b/packages/kbn-es-query/src/filters/build_filters/range_filter.ts @@ -65,7 +65,7 @@ export type ScriptedRangeFilter = Filter & { meta: RangeFilterMeta; query: { script: { - script: estypes.InlineScript; + script: estypes.Script; }; }; }; @@ -189,7 +189,7 @@ export const buildRangeFilter = ( * @internal */ export const getRangeScript = (field: DataViewFieldBase, params: RangeFilterParams) => { - const knownParams: estypes.InlineScript['params'] = mapValues( + const knownParams: estypes.Script['params'] = mapValues( pickBy(params, (val, key) => key in operators), (value) => (field.type === 'number' && typeof value === 'string' ? parseFloat(value) : value) ); 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 c52e38308f54c..5ef7b9094b52c 100644 --- a/packages/kbn-es/src/utils/read_roles_from_resource.ts +++ b/packages/kbn-es/src/utils/read_roles_from_resource.ts @@ -7,7 +7,7 @@ */ import fs from 'fs'; import { extname } from 'path'; -import { load as loadYaml } from 'js-yaml'; +import { safeLoad 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 028309aa05774..de3bb8e313ccc 100644 --- a/packages/kbn-eslint-config/.eslintrc.js +++ b/packages/kbn-eslint-config/.eslintrc.js @@ -115,6 +115,12 @@ module.exports = { disallowedMessage: `import from @kbn/i18n-react instead`, exclude: [/packages[\/\\]kbn-i18n-react[\/\\]/], }, + { + from: 'zod', + to: '@kbn/zod', + disallowedMessage: `import from @kbn/zod instead`, + exclude: [/packages[\/\\]kbn-zod[\/\\]/], + }, { from: 'styled-components', to: false, @@ -308,6 +314,7 @@ 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-eslint-plugin-eslint/index.js b/packages/kbn-eslint-plugin-eslint/index.js index 3d161ec33dda1..f54879b9e697e 100644 --- a/packages/kbn-eslint-plugin-eslint/index.js +++ b/packages/kbn-eslint-plugin-eslint/index.js @@ -18,5 +18,6 @@ module.exports = { no_constructor_args_in_property_initializers: require('./rules/no_constructor_args_in_property_initializers'), no_this_in_property_initializers: require('./rules/no_this_in_property_initializers'), no_unsafe_console: require('./rules/no_unsafe_console'), + no_unsafe_js_yaml: require('./rules/no_unsafe_js_yaml'), }, }; diff --git a/packages/kbn-eslint-plugin-eslint/rules/no_unsafe_js_yaml.js b/packages/kbn-eslint-plugin-eslint/rules/no_unsafe_js_yaml.js new file mode 100644 index 0000000000000..fcbb04a79fded --- /dev/null +++ b/packages/kbn-eslint-plugin-eslint/rules/no_unsafe_js_yaml.js @@ -0,0 +1,90 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +module.exports = { + meta: { + fixable: 'code', + schema: [], + }, + create(context) { + const sourceCode = context.getSourceCode(); + const jsYamlIdentifiers = new Set(); + const isUnsafeMethod = (node) => node.name === 'load' || node.name === 'dump'; + + return { + ImportDeclaration(node) { + if (node.source.value === 'js-yaml') { + node.specifiers.forEach((specifier) => { + jsYamlIdentifiers.add(specifier.local.name); + + if (specifier.imported && isUnsafeMethod(specifier.imported)) { + context.report({ + node: specifier, + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + fix(fixer) { + const replacement = + specifier.imported.name === 'load' + ? fixer.replaceText(specifier.imported, 'safeLoad') + : fixer.replaceText(specifier.imported, 'safeDump'); + return replacement; + }, + }); + } + }); + } + }, + CallExpression(node) { + const callee = node.callee; + + if (isUnsafeMethod(callee)) { + const scope = sourceCode.getScope(node); + const variable = scope.variables.find((v) => v.name === callee.name); + + if (variable && variable.defs.length) { + const [def] = variable.defs; + + if (def?.parent?.source?.value === 'js-yaml') { + context.report({ + node: callee, + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + fix(fixer) { + const replacement = + callee.name === 'load' + ? fixer.replaceText(callee, 'safeLoad') + : fixer.replaceText(callee, 'safeDump'); + return replacement; + }, + }); + } + } + } + + if ( + callee.type === 'MemberExpression' && + isUnsafeMethod(callee.property) && + jsYamlIdentifiers.has(callee.object.name) + ) { + context.report({ + node: callee.property, + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + fix(fixer) { + const replacement = + callee.property.name === 'load' + ? fixer.replaceText(callee.property, 'safeLoad') + : fixer.replaceText(callee.property, 'safeDump'); + return replacement; + }, + }); + } + }, + }; + }, +}; diff --git a/packages/kbn-eslint-plugin-eslint/rules/no_unsafe_js_yaml.test.js b/packages/kbn-eslint-plugin-eslint/rules/no_unsafe_js_yaml.test.js new file mode 100644 index 0000000000000..d59c8e3e47e5f --- /dev/null +++ b/packages/kbn-eslint-plugin-eslint/rules/no_unsafe_js_yaml.test.js @@ -0,0 +1,104 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +const { RuleTester } = require('eslint'); +const rule = require('./no_unsafe_js_yaml'); + +const ruleTester = new RuleTester({ + parser: require.resolve('@typescript-eslint/parser'), + parserOptions: { + sourceType: 'module', + ecmaVersion: 2018, + }, +}); + +ruleTester.run('no_unsafe_js_yaml', rule, { + valid: [ + "import { safeLoad } from 'js-yaml'; const data = safeLoad(yamlString);", + "import { safeDump } from 'js-yaml'; const yaml = safeDump(data);", + "import * as yaml from 'js-yaml'; const data = yaml.safeLoad(yamlString);", + "import yaml from 'js-yaml'; yaml.safeLoad('yamlString');", + ], + invalid: [ + { + code: "import { load } from 'js-yaml'; const data = load(yamlString);", + errors: [ + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + line: 1, + column: 10, + endLine: 1, + endColumn: 14, + }, + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + line: 1, + column: 46, + endLine: 1, + endColumn: 50, + }, + ], + output: "import { safeLoad } from 'js-yaml'; const data = safeLoad(yamlString);", + }, + { + code: "import { dump } from 'js-yaml'; const yaml = dump(data);", + errors: [ + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + line: 1, + column: 10, + endLine: 1, + endColumn: 14, + }, + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + line: 1, + column: 46, + endLine: 1, + endColumn: 50, + }, + ], + output: "import { safeDump } from 'js-yaml'; const yaml = safeDump(data);", + }, + { + code: "import * as yaml from 'js-yaml'; const data = yaml.load(yamlString);", + errors: [ + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + }, + ], + output: "import * as yaml from 'js-yaml'; const data = yaml.safeLoad(yamlString);", + }, + { + code: "import yaml from 'js-yaml'; yaml.load('someYAMLContent')", + errors: [ + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + }, + ], + output: "import yaml from 'js-yaml'; yaml.safeLoad('someYAMLContent')", + }, + { + code: "import yaml, { safeDump } from 'js-yaml'; safeDump(data); yaml.load('someYAMLContent');", + errors: [ + { + message: + 'Use `safeLoad` instead of `load` and `safeDump` instead of `dump` from `js-yaml`.', + }, + ], + output: + "import yaml, { safeDump } from 'js-yaml'; safeDump(data); yaml.safeLoad('someYAMLContent');", + }, + ], +}); diff --git a/packages/kbn-esql-ast/src/__tests__/ast_parser.source.test.ts b/packages/kbn-esql-ast/src/__tests__/ast_parser.source.test.ts new file mode 100644 index 0000000000000..8d01e655e6fff --- /dev/null +++ b/packages/kbn-esql-ast/src/__tests__/ast_parser.source.test.ts @@ -0,0 +1,265 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { getAstAndSyntaxErrors as parse } from '../ast_parser'; + +describe('source nodes', () => { + it('cluster vs quoted source', () => { + const text = 'FROM cluster:index, "cluster:index"'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'cluster:index', + cluster: 'cluster', + index: 'index', + }, + { + type: 'source', + name: 'cluster:index', + cluster: '', + index: 'cluster:index', + }, + ], + }, + ]); + }); + + it('date-math syntax', () => { + const text = 'FROM '; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: '', + cluster: '', + index: '', + }, + ], + }, + ]); + }); + + describe('unquoted', () => { + it('basic', () => { + const text = 'FROM a'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a', + cluster: '', + index: 'a', + }, + ], + }, + ]); + }); + + it('with slash', () => { + const text = 'FROM a/b'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a/b', + cluster: '', + index: 'a/b', + }, + ], + }, + ]); + }); + + it('dot and star', () => { + const text = 'FROM a.b-*'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a.b-*', + cluster: '', + index: 'a.b-*', + }, + ], + }, + ]); + }); + }); + + describe('double quoted', () => { + it('basic', () => { + const text = 'FROM "a"'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a', + cluster: '', + index: 'a', + }, + ], + }, + ]); + }); + + it('allows escaped chars', () => { + const text = 'FROM "a \\" \\r \\n \\t \\\\ b"'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: expect.any(String), + cluster: '', + index: 'a " \r \n \t \\ b', + }, + ], + }, + ]); + }); + }); + + describe('triple-double quoted', () => { + it('basic', () => { + const text = 'FROM """a"""'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a', + cluster: '', + index: 'a', + }, + ], + }, + ]); + }); + + it('with double quote in the middle', () => { + const text = 'FROM """a"b"""'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a"b', + cluster: '', + index: 'a"b', + }, + ], + }, + ]); + }); + + it('allows special chars', () => { + const text = 'FROM """a:\\/b"""'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a:\\/b', + cluster: '', + index: 'a:\\/b', + }, + ], + }, + ]); + }); + + it('allows emojis', () => { + const text = 'FROM """a👍b"""'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'a👍b', + cluster: '', + index: 'a👍b', + }, + ], + }, + ]); + }); + }); + + describe('cluster string', () => { + it('basic', () => { + const text = 'FROM cluster:a'; + const { ast } = parse(text); + + expect(ast).toMatchObject([ + { + type: 'command', + name: 'from', + args: [ + { + type: 'source', + name: 'cluster:a', + cluster: 'cluster', + index: 'a', + }, + ], + }, + ]); + }); + }); +}); diff --git a/packages/kbn-esql-ast/src/ast_helpers.ts b/packages/kbn-esql-ast/src/ast_helpers.ts index 44f9a2663db17..e338d2eacd4a4 100644 --- a/packages/kbn-esql-ast/src/ast_helpers.ts +++ b/packages/kbn-esql-ast/src/ast_helpers.ts @@ -12,6 +12,7 @@ import { type Token, type ParserRuleContext, type TerminalNode } from 'antlr4'; import { + IndexPatternContext, QualifiedNameContext, type ArithmeticUnaryContext, type DecimalValueContext, @@ -306,6 +307,34 @@ function sanitizeSourceString(ctx: ParserRuleContext) { return contextText; } +const unquoteIndexString = (indexString: string): string => { + const isStringQuoted = indexString[0] === '"'; + + if (!isStringQuoted) { + return indexString; + } + + // If wrapped by triple double quotes, simply remove them. + if (indexString.startsWith(`"""`) && indexString.endsWith(`"""`)) { + return indexString.slice(3, -3); + } + + // If wrapped by double quote, remove them and unescape the string. + if (indexString[indexString.length - 1] === '"') { + indexString = indexString.slice(1, -1); + indexString = indexString + .replace(/\\"/g, '"') + .replace(/\\r/g, '\r') + .replace(/\\n/g, '\n') + .replace(/\\t/g, '\t') + .replace(/\\\\/g, '\\'); + return indexString; + } + + // This should never happen, but if it does, return the original string. + return indexString; +}; + export function sanitizeIdentifierString(ctx: ParserRuleContext) { const result = getUnquotedText(ctx)?.getText() || @@ -352,8 +381,27 @@ export function createSource( type: 'index' | 'policy' = 'index' ): ESQLSource { const text = sanitizeSourceString(ctx); + + let cluster: string = ''; + let index: string = ''; + + if (ctx instanceof IndexPatternContext) { + const clusterString = ctx.clusterString(); + const indexString = ctx.indexString(); + + if (clusterString) { + cluster = clusterString.getText(); + } + if (indexString) { + index = indexString.getText(); + index = unquoteIndexString(index); + } + } + return { type: 'source', + cluster, + index, name: text, sourceType: type, text, diff --git a/packages/kbn-esql-ast/src/types.ts b/packages/kbn-esql-ast/src/types.ts index ae675a375a430..e9c0db1d216d3 100644 --- a/packages/kbn-esql-ast/src/types.ts +++ b/packages/kbn-esql-ast/src/types.ts @@ -175,6 +175,25 @@ export interface ESQLTimeInterval extends ESQLAstBaseItem { export interface ESQLSource extends ESQLAstBaseItem { type: 'source'; sourceType: 'index' | 'policy'; + + /** + * Represents the cluster part of the source identifier. Empty string if not + * present. + * + * ``` + * FROM [:] + * ``` + */ + cluster?: string; + + /** + * Represents the index part of the source identifier. Unescaped and unquoted. + * + * ``` + * FROM [:] + * ``` + */ + index?: string; } export interface ESQLColumn extends ESQLAstBaseItem { diff --git a/packages/kbn-esql-validation-autocomplete/index.ts b/packages/kbn-esql-validation-autocomplete/index.ts index 31bd8c16b76fb..77643f0786785 100644 --- a/packages/kbn-esql-validation-autocomplete/index.ts +++ b/packages/kbn-esql-validation-autocomplete/index.ts @@ -49,7 +49,7 @@ export { getCommandDefinition, getAllCommands, getCommandOption, - lookupColumn, + getColumnForASTNode as lookupColumn, shouldBeQuotedText, printFunctionSignature, checkFunctionArgMatchesDefinition as isEqualType, diff --git a/packages/kbn-esql-validation-autocomplete/scripts/generate_function_validation_tests.ts b/packages/kbn-esql-validation-autocomplete/scripts/generate_function_validation_tests.ts index 02e37108db7b8..71bca915511de 100644 --- a/packages/kbn-esql-validation-autocomplete/scripts/generate_function_validation_tests.ts +++ b/packages/kbn-esql-validation-autocomplete/scripts/generate_function_validation_tests.ts @@ -23,6 +23,7 @@ import { dataTypes, fieldTypes, isFieldType, + FunctionParameter, } from '../src/definitions/types'; import { FUNCTION_DESCRIBE_BLOCK_NAME } from '../src/validation/function_describe_block_name'; import { getMaxMinNumberOfParams } from '../src/validation/helpers'; @@ -1155,7 +1156,7 @@ function generateIncorrectlyTypedParameters( signatures: FunctionDefinition['signatures'], currentParams: FunctionDefinition['signatures'][number]['params'], availableFields: Array<{ name: string; type: SupportedDataType }> -) { +): { wrongFieldMapping: FunctionParameter[]; expectedErrors: string[] } { const literalValues = { string: `"a"`, number: '5', @@ -1260,7 +1261,7 @@ function generateIncorrectlyTypedParameters( }) .filter(nonNullable); - return { wrongFieldMapping, expectedErrors }; + return { wrongFieldMapping: wrongFieldMapping as FunctionParameter[], expectedErrors }; } /** 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 cdf4a6239a9ab..13d471d53d7ec 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 @@ -137,10 +137,27 @@ describe('autocomplete.suggest', () => { test('when typing inside function left paren', async () => { const { assertSuggestions } = await setup(); const expected = [ - ...getFieldNamesByType([...ESQL_COMMON_NUMERIC_TYPES, 'date', 'boolean', 'ip']), + ...getFieldNamesByType([ + ...ESQL_COMMON_NUMERIC_TYPES, + 'date', + 'boolean', + 'ip', + 'version', + 'text', + 'keyword', + ]), ...getFunctionSignaturesByReturnType( 'stats', - [...ESQL_COMMON_NUMERIC_TYPES, 'date', 'date_period', 'boolean', 'ip'], + [ + ...ESQL_COMMON_NUMERIC_TYPES, + 'date', + 'date_period', + 'boolean', + 'ip', + 'version', + 'text', + 'keyword', + ], { scalar: true, } 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 42a6d4c4fd64d..e8b1c42db2aed 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.test.ts @@ -20,7 +20,9 @@ import { camelCase, partition } from 'lodash'; import { getAstAndSyntaxErrors } from '@kbn/esql-ast'; import { FunctionParameter, + FunctionReturnType, isFieldType, + isReturnType, isSupportedDataType, SupportedDataType, } from '../definitions/types'; @@ -753,7 +755,9 @@ describe('autocomplete', () => { ); const getTypesFromParamDefs = (paramDefs: FunctionParameter[]): SupportedDataType[] => - Array.from(new Set(paramDefs.map((p) => p.type))).filter(isSupportedDataType); + Array.from(new Set(paramDefs.map((p) => p.type))).filter( + isSupportedDataType + ) as SupportedDataType[]; const suggestedConstants = param.literalSuggestions || param.literalOptions; @@ -778,7 +782,9 @@ describe('autocomplete', () => { ), ...getFunctionSignaturesByReturnType( 'eval', - getTypesFromParamDefs(acceptsFieldParamDefs), + getTypesFromParamDefs(acceptsFieldParamDefs).filter( + isReturnType + ) as FunctionReturnType[], { scalar: true }, undefined, [fn.name] @@ -802,7 +808,7 @@ describe('autocomplete', () => { ), ...getFunctionSignaturesByReturnType( 'eval', - getTypesFromParamDefs(acceptsFieldParamDefs), + getTypesFromParamDefs(acceptsFieldParamDefs) as FunctionReturnType[], { scalar: true }, undefined, [fn.name] @@ -851,13 +857,7 @@ describe('autocomplete', () => { ], ' ' ); - testSuggestions('from a | eval a = 1 year /', [ - ',', - '| ', - ...getFunctionSignaturesByReturnType('eval', 'any', { builtin: true, skipAssign: true }, [ - 'time_interval', - ]), - ]); + testSuggestions('from a | eval a = 1 year /', [',', '| ', 'IS NOT NULL', 'IS NULL']); testSuggestions('from a | eval a = 1 day + 2 /', [',', '| ']); testSuggestions( 'from a | eval 1 day + 2 /', @@ -1357,6 +1357,81 @@ describe('autocomplete', () => { ['keyword'] ).map((s) => (s.text.toLowerCase().includes('null') ? s : attachTriggerCommand(s))) ); + describe('field lists', () => { + // KEEP field + testSuggestions('FROM a | KEEP /', getFieldNamesByType('any').map(attachTriggerCommand)); + testSuggestions( + 'FROM a | KEEP d/', + getFieldNamesByType('any') + .map((text) => ({ + text, + rangeToReplace: { start: 15, end: 16 }, + })) + .map(attachTriggerCommand) + ); + testSuggestions( + 'FROM a | KEEP doubleFiel/', + getFieldNamesByType('any').map(attachTriggerCommand) + ); + testSuggestions( + 'FROM a | KEEP doubleField/', + ['doubleField, ', 'doubleField | '] + .map((text) => ({ + text, + filterText: 'doubleField', + rangeToReplace: { start: 15, end: 26 }, + })) + .map(attachTriggerCommand) + ); + testSuggestions('FROM a | KEEP doubleField /', ['| ', ',']); + + // Let's get funky with the field names + testSuggestions( + 'FROM a | KEEP @timestamp/', + ['@timestamp, ', '@timestamp | '] + .map((text) => ({ + text, + filterText: '@timestamp', + rangeToReplace: { start: 15, end: 25 }, + })) + .map(attachTriggerCommand), + undefined, + [[{ name: '@timestamp', type: 'date' }]] + ); + testSuggestions( + 'FROM a | KEEP foo.bar/', + ['foo.bar, ', 'foo.bar | '] + .map((text) => ({ + text, + filterText: 'foo.bar', + rangeToReplace: { start: 15, end: 22 }, + })) + .map(attachTriggerCommand), + undefined, + [[{ name: 'foo.bar', type: 'double' }]] + ); + + // @todo re-enable these tests when we can use AST to support this case + testSuggestions.skip('FROM a | KEEP `foo.bar`/', ['foo.bar, ', 'foo.bar | '], undefined, [ + [{ name: 'foo.bar', type: 'double' }], + ]); + testSuggestions.skip('FROM a | KEEP `foo`.`bar`/', ['foo.bar, ', 'foo.bar | '], undefined, [ + [{ name: 'foo.bar', type: 'double' }], + ]); + testSuggestions.skip('FROM a | KEEP `any#Char$Field`/', [ + '`any#Char$Field`, ', + '`any#Char$Field` | ', + ]); + + // Subsequent fields + testSuggestions( + 'FROM a | KEEP doubleField, dateFiel/', + getFieldNamesByType('any') + .filter((s) => s !== 'doubleField') + .map(attachTriggerCommand) + ); + testSuggestions('FROM a | KEEP doubleField, dateField/', ['dateField, ', 'dateField | ']); + }); }); describe('Replacement ranges are attached when needed', () => { @@ -1417,21 +1492,21 @@ describe('autocomplete', () => { describe('dot-separated field names', () => { testSuggestions( 'FROM a | KEEP field.nam/', - [{ text: 'field.name', rangeToReplace: { start: 15, end: 23 } }], + [{ text: 'field.name', rangeToReplace: { start: 15, end: 24 } }], undefined, [[{ name: 'field.name', type: 'double' }]] ); // multi-line testSuggestions( 'FROM a\n| KEEP field.nam/', - [{ text: 'field.name', rangeToReplace: { start: 15, end: 23 } }], + [{ text: 'field.name', rangeToReplace: { start: 15, end: 24 } }], undefined, [[{ name: 'field.name', type: 'double' }]] ); // triple separator testSuggestions( 'FROM a\n| KEEP field.name.f/', - [{ text: 'field.name.foo', rangeToReplace: { start: 15, end: 26 } }], + [{ text: 'field.name.foo', rangeToReplace: { start: 15, end: 27 } }], undefined, [[{ name: 'field.name.foo', type: 'double' }]] ); diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts index 650c2326fe007..556e4860738d7 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/autocomplete.ts @@ -20,7 +20,7 @@ import { partition } from 'lodash'; import { ESQL_NUMBER_TYPES, compareTypesWithLiterals, isNumericType } from '../shared/esql_types'; import type { EditorContext, SuggestionRawDefinition } from './types'; import { - lookupColumn, + getColumnForASTNode, getCommandDefinition, getCommandOption, getFunctionDefinition, @@ -46,6 +46,7 @@ import { getColumnExists, findPreviousWord, noCaseCompare, + getColumnByName, } from '../shared/helpers'; import { collectVariables, excludeVariablesFromCurrentCommand } from '../shared/variables'; import type { ESQLPolicy, ESQLRealField, ESQLVariable, ReferenceMaps } from '../validation/types'; @@ -76,6 +77,7 @@ import { buildValueDefinitions, getDateLiterals, buildFieldsDefinitionsWithMetadata, + TRIGGER_SUGGESTION_COMMAND, } from './factories'; import { EDITOR_MARKER, SINGLE_BACKTICK, METADATA_FIELDS } from '../shared/constants'; import { getAstContext, removeMarkerArgFromArgsList } from '../shared/context'; @@ -96,7 +98,13 @@ import { isAggFunctionUsedAlready, removeQuoteForSuggestedSources, } from './helper'; -import { FunctionParameter, FunctionReturnType, SupportedDataType } from '../definitions/types'; +import { + FunctionParameter, + FunctionReturnType, + SupportedDataType, + isParameterType, + isReturnType, +} from '../definitions/types'; type GetSourceFn = () => Promise; type GetDataStreamsForIntegrationFn = ( @@ -105,7 +113,7 @@ type GetDataStreamsForIntegrationFn = ( type GetFieldsByTypeFn = ( type: string | string[], ignored?: string[], - options?: { advanceCursorAndOpenSuggestions?: boolean; addComma?: boolean } + options?: { advanceCursor?: boolean; openSuggestions?: boolean; addComma?: boolean } ) => Promise; type GetFieldsMapFn = () => Promise>; type GetPoliciesFn = () => Promise; @@ -382,7 +390,7 @@ function workoutBuiltinOptions( ): { skipAssign: boolean } { // skip assign operator if it's a function or an existing field to avoid promoting shadowing return { - skipAssign: Boolean(!isColumnItem(nodeArg) || lookupColumn(nodeArg, references)), + skipAssign: Boolean(!isColumnItem(nodeArg) || getColumnForASTNode(nodeArg, references)), }; } @@ -456,7 +464,7 @@ function extractFinalTypeFromArg( return arg.literalType; } if (isColumnItem(arg)) { - const hit = lookupColumn(arg, references); + const hit = getColumnForASTNode(arg, references); if (hit) { return hit.type; } @@ -690,18 +698,47 @@ async function getExpressionSuggestionsByType( const lastWord = words[words.length - 1]; if (lastWord !== '') { // ... | + + const rangeToReplace = { + start: innerText.length - lastWord.length + 1, + end: innerText.length + 1, + }; + + // check if lastWord is an existing field + const column = getColumnByName(lastWord, references); + if (column) { + // now we know that the user has already entered a column, + // so suggest comma and pipe + // const NON_ALPHANUMERIC_REGEXP = /[^a-zA-Z\d]/g; + // const textToUse = lastWord.replace(NON_ALPHANUMERIC_REGEXP, ''); + const textToUse = lastWord; + return [ + { ...pipeCompleteItem, text: ' | ' }, + { ...commaCompleteItem, text: ', ' }, + ].map((s) => ({ + ...s, + filterText: textToUse, + text: textToUse + s.text, + command: TRIGGER_SUGGESTION_COMMAND, + rangeToReplace, + })); + } else { + suggestions.push( + ...fieldSuggestions.map((suggestion) => ({ + ...suggestion, + command: TRIGGER_SUGGESTION_COMMAND, + rangeToReplace, + })) + ); + } + } else { + // ... | suggestions.push( ...fieldSuggestions.map((suggestion) => ({ ...suggestion, - rangeToReplace: { - start: innerText.length - lastWord.length + 1, - end: innerText.length, - }, + command: TRIGGER_SUGGESTION_COMMAND, })) ); - } else { - // ... | - suggestions.push(...fieldSuggestions); } } } @@ -710,7 +747,7 @@ async function getExpressionSuggestionsByType( // ... | STATS a // ... | EVAL a const nodeArgType = extractFinalTypeFromArg(nodeArg, references); - if (nodeArgType) { + if (isParameterType(nodeArgType)) { suggestions.push( ...getBuiltinCompatibleFunctionDefinition( command.name, @@ -768,7 +805,7 @@ async function getExpressionSuggestionsByType( ...getBuiltinCompatibleFunctionDefinition( command.name, undefined, - nodeArgType || 'any', + isParameterType(nodeArgType) ? nodeArgType : 'any', undefined, workoutBuiltinOptions(rightArg, references) ) @@ -859,7 +896,7 @@ async function getExpressionSuggestionsByType( // ... | // In this case start suggesting something not strictly based on type suggestions.push( - ...(await getFieldsByType('any', [], { advanceCursorAndOpenSuggestions: true })), + ...(await getFieldsByType('any', [], { advanceCursor: true, openSuggestions: true })), ...(await getFieldsOrFunctionsSuggestions( ['any'], command.name, @@ -913,7 +950,7 @@ async function getExpressionSuggestionsByType( )) ); } - } else { + } else if (isParameterType(nodeArgType)) { // i.e. ... | field suggestions.push( ...getBuiltinCompatibleFunctionDefinition( @@ -1031,7 +1068,7 @@ async function getBuiltinFunctionNextArgument( ...getBuiltinCompatibleFunctionDefinition( command.name, option?.name, - nodeArgType || 'any', + isParameterType(nodeArgType) ? nodeArgType : 'any', undefined, workoutBuiltinOptions(nodeArg, references) ) @@ -1083,7 +1120,11 @@ async function getBuiltinFunctionNextArgument( if (isFnComplete.reason === 'wrongTypes') { if (nestedType) { // suggest something to complete the builtin function - if (nestedType !== argDef.type) { + if ( + nestedType !== argDef.type && + isParameterType(nestedType) && + isReturnType(argDef.type) + ) { suggestions.push( ...getBuiltinCompatibleFunctionDefinition( command.name, @@ -1149,7 +1190,8 @@ async function getFieldsOrFunctionsSuggestions( const filteredFieldsByType = pushItUpInTheList( (await (fields ? getFieldsByType(types, ignoreFields, { - advanceCursorAndOpenSuggestions: commandName === 'sort', + advanceCursor: commandName === 'sort', + openSuggestions: commandName === 'sort', }) : [])) as SuggestionRawDefinition[], functions @@ -1378,7 +1420,8 @@ async function getFunctionArgsSuggestions( ...pushItUpInTheList( await getFieldsByType(getTypesFromParamDefs(paramDefsWhichSupportFields) as string[], [], { addComma: shouldAddComma, - advanceCursorAndOpenSuggestions: hasMoreMandatoryArgs, + advanceCursor: hasMoreMandatoryArgs, + openSuggestions: hasMoreMandatoryArgs, }), true ) @@ -1721,7 +1764,8 @@ async function getOptionArgsSuggestions( } else if (isNewExpression || (isAssignment(nodeArg) && !isAssignmentComplete(nodeArg))) { suggestions.push( ...(await getFieldsByType(types[0] === 'column' ? ['any'] : types, [], { - advanceCursorAndOpenSuggestions: true, + advanceCursor: true, + openSuggestions: true, })) ); diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts index 30772d6e070fc..4ac3b3b24d1f6 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/factories.ts @@ -132,7 +132,7 @@ export function getSuggestionCommandDefinition( export const buildFieldsDefinitionsWithMetadata = ( fields: ESQLRealField[], - options?: { advanceCursorAndOpenSuggestions?: boolean; addComma?: boolean } + options?: { advanceCursor?: boolean; openSuggestions?: boolean; addComma?: boolean } ): SuggestionRawDefinition[] => { return fields.map((field) => { const description = field.metadata?.description; @@ -143,7 +143,7 @@ export const buildFieldsDefinitionsWithMetadata = ( text: getSafeInsertText(field.name) + (options?.addComma ? ',' : '') + - (options?.advanceCursorAndOpenSuggestions ? ' ' : ''), + (options?.advanceCursor ? ' ' : ''), kind: 'Variable', detail: titleCaseType, documentation: description @@ -156,7 +156,7 @@ ${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', - command: options?.advanceCursorAndOpenSuggestions ? TRIGGER_SUGGESTION_COMMAND : undefined, + command: options?.openSuggestions ? TRIGGER_SUGGESTION_COMMAND : undefined, }; }); }; diff --git a/packages/kbn-esql-validation-autocomplete/src/autocomplete/types.ts b/packages/kbn-esql-validation-autocomplete/src/autocomplete/types.ts index e132d5edb6b8f..dc2624add8273 100644 --- a/packages/kbn-esql-validation-autocomplete/src/autocomplete/types.ts +++ b/packages/kbn-esql-validation-autocomplete/src/autocomplete/types.ts @@ -27,6 +27,8 @@ export interface SuggestionRawDefinition { label: string; /* The actual text to insert into the editor */ text: string; + /* Text to use for filtering the suggestions */ + filterText?: string; /** * Should the text be inserted as a snippet? * That is usually used for special behaviour like moving the cursor in a specific position diff --git a/packages/kbn-esql-validation-autocomplete/src/definitions/aggs.ts b/packages/kbn-esql-validation-autocomplete/src/definitions/aggs.ts index 262d7a2fc7b32..4ce0ad1a0f230 100644 --- a/packages/kbn-esql-validation-autocomplete/src/definitions/aggs.ts +++ b/packages/kbn-esql-validation-autocomplete/src/definitions/aggs.ts @@ -155,6 +155,18 @@ export const statsAggregationFunctionDefinitions: FunctionDefinition[] = [ params: [{ name: 'column', type: 'ip', noNestingFunctions: true }], returnType: 'ip', }, + { + params: [{ name: 'column', type: 'version', noNestingFunctions: true }], + returnType: 'version', + }, + { + params: [{ name: 'column', type: 'keyword', noNestingFunctions: true }], + returnType: 'keyword', + }, + { + params: [{ name: 'column', type: 'text', noNestingFunctions: true }], + returnType: 'text', + }, ], examples: [`from index | stats result = max(field)`, `from index | stats max(field)`], }, @@ -186,6 +198,18 @@ export const statsAggregationFunctionDefinitions: FunctionDefinition[] = [ params: [{ name: 'column', type: 'ip', noNestingFunctions: true }], returnType: 'ip', }, + { + params: [{ name: 'column', type: 'version', noNestingFunctions: true }], + returnType: 'version', + }, + { + params: [{ name: 'column', type: 'keyword', noNestingFunctions: true }], + returnType: 'keyword', + }, + { + params: [{ name: 'column', type: 'text', noNestingFunctions: true }], + returnType: 'text', + }, ], examples: [`from index | stats result = min(field)`, `from index | stats min(field)`], }, diff --git a/packages/kbn-esql-validation-autocomplete/src/definitions/functions.ts b/packages/kbn-esql-validation-autocomplete/src/definitions/functions.ts index a548287683e5c..c627bc0a62176 100644 --- a/packages/kbn-esql-validation-autocomplete/src/definitions/functions.ts +++ b/packages/kbn-esql-validation-autocomplete/src/definitions/functions.ts @@ -4145,6 +4145,160 @@ const mvMinDefinition: FunctionDefinition = { ], }; +// Do not edit this manually... generated by scripts/generate_function_definitions.ts +const mvPercentileDefinition: FunctionDefinition = { + type: 'eval', + name: 'mv_percentile', + description: i18n.translate('kbn-esql-validation-autocomplete.esql.definitions.mv_percentile', { + defaultMessage: + 'Converts a multivalued field into a single valued field containing the value at which a certain percentage of observed values occur.', + }), + alias: undefined, + signatures: [ + { + params: [ + { + name: 'number', + type: 'double', + optional: false, + }, + { + name: 'percentile', + type: 'double', + optional: false, + }, + ], + returnType: 'double', + }, + { + params: [ + { + name: 'number', + type: 'double', + optional: false, + }, + { + name: 'percentile', + type: 'integer', + optional: false, + }, + ], + returnType: 'double', + }, + { + params: [ + { + name: 'number', + type: 'double', + optional: false, + }, + { + name: 'percentile', + type: 'long', + optional: false, + }, + ], + returnType: 'double', + }, + { + params: [ + { + name: 'number', + type: 'integer', + optional: false, + }, + { + name: 'percentile', + type: 'double', + optional: false, + }, + ], + returnType: 'integer', + }, + { + params: [ + { + name: 'number', + type: 'integer', + optional: false, + }, + { + name: 'percentile', + type: 'integer', + optional: false, + }, + ], + returnType: 'integer', + }, + { + params: [ + { + name: 'number', + type: 'integer', + optional: false, + }, + { + name: 'percentile', + type: 'long', + optional: false, + }, + ], + returnType: 'integer', + }, + { + params: [ + { + name: 'number', + type: 'long', + optional: false, + }, + { + name: 'percentile', + type: 'double', + optional: false, + }, + ], + returnType: 'long', + }, + { + params: [ + { + name: 'number', + type: 'long', + optional: false, + }, + { + name: 'percentile', + type: 'integer', + optional: false, + }, + ], + returnType: 'long', + }, + { + params: [ + { + name: 'number', + type: 'long', + optional: false, + }, + { + name: 'percentile', + type: 'long', + optional: false, + }, + ], + returnType: 'long', + }, + ], + supportedCommands: ['stats', 'inlinestats', 'metrics', 'eval', 'where', 'row', 'sort'], + supportedOptions: ['by'], + validate: undefined, + examples: [ + 'ROW values = [5, 5, 10, 12, 5000]\n| EVAL p50 = MV_PERCENTILE(values, 50), median = MV_MEDIAN(values)', + ], +}; + // Do not edit this manually... generated by scripts/generate_function_definitions.ts const mvPseriesWeightedSumDefinition: FunctionDefinition = { type: 'eval', @@ -8323,6 +8477,7 @@ export const evalFunctionDefinitions = [ mvMaxDefinition, mvMedianDefinition, mvMinDefinition, + mvPercentileDefinition, mvPseriesWeightedSumDefinition, mvSliceDefinition, mvSortDefinition, diff --git a/packages/kbn-esql-validation-autocomplete/src/definitions/helpers.ts b/packages/kbn-esql-validation-autocomplete/src/definitions/helpers.ts index 9b673cc2d4e6e..a50780ac8ea95 100644 --- a/packages/kbn-esql-validation-autocomplete/src/definitions/helpers.ts +++ b/packages/kbn-esql-validation-autocomplete/src/definitions/helpers.ts @@ -41,7 +41,7 @@ function handleAdditionalArgs( criteria: boolean, additionalArgs: Array<{ name: string; - type: string | string[]; + type: FunctionParameterType | FunctionParameterType[]; optional?: boolean; reference?: string; }>, diff --git a/packages/kbn-esql-validation-autocomplete/src/definitions/types.ts b/packages/kbn-esql-validation-autocomplete/src/definitions/types.ts index 043fb77eb262b..5880b62c77918 100644 --- a/packages/kbn-esql-validation-autocomplete/src/definitions/types.ts +++ b/packages/kbn-esql-validation-autocomplete/src/definitions/types.ts @@ -69,30 +69,42 @@ export const isSupportedDataType = ( * * The fate of these is uncertain. They may be removed in the future. */ -type ArrayType = - | 'double[]' - | 'unsigned_long[]' - | 'long[]' - | 'integer[]' - | 'counter_integer[]' - | 'counter_long[]' - | 'counter_double[]' - | 'keyword[]' - | 'text[]' - | 'boolean[]' - | 'any[]' - | 'date[]' - | 'date_period[]'; +const arrayTypes = [ + 'double[]', + 'unsigned_long[]', + 'long[]', + 'integer[]', + 'counter_integer[]', + 'counter_long[]', + 'counter_double[]', + 'keyword[]', + 'text[]', + 'boolean[]', + 'any[]', + 'date[]', + 'date_period[]', +] as const; + +export type ArrayType = (typeof arrayTypes)[number]; /** * This is the type of a parameter in a function definition. */ -export type FunctionParameterType = Omit | ArrayType | 'any'; +export type FunctionParameterType = Exclude | ArrayType | 'any'; + +export const isParameterType = (str: string | undefined): str is FunctionParameterType => + typeof str !== undefined && + str !== 'unsupported' && + ([...dataTypes, ...arrayTypes, 'any'] as string[]).includes(str as string); /** * This is the return type of a function definition. */ -export type FunctionReturnType = Omit | 'any' | 'void'; +export type FunctionReturnType = Exclude | 'any' | 'void'; + +export const isReturnType = (str: string | FunctionParameterType): str is FunctionReturnType => + str !== 'unsupported' && + (dataTypes.includes(str as SupportedDataType) || str === 'any' || str === 'void'); export interface FunctionDefinition { type: 'builtin' | 'agg' | 'eval'; diff --git a/packages/kbn-esql-validation-autocomplete/src/shared/helpers.ts b/packages/kbn-esql-validation-autocomplete/src/shared/helpers.ts index 0b9f704a43bcc..eb058558638b0 100644 --- a/packages/kbn-esql-validation-autocomplete/src/shared/helpers.ts +++ b/packages/kbn-esql-validation-autocomplete/src/shared/helpers.ts @@ -40,6 +40,7 @@ import { FunctionDefinition, FunctionParameterType, FunctionReturnType, + ArrayType, } from '../definitions/types'; import type { ESQLRealField, ESQLVariable, ReferenceMaps } from '../validation/types'; import { removeMarkerArgFromArgsList } from './context'; @@ -248,28 +249,36 @@ function compareLiteralType(argType: string, item: ESQLLiteral) { /** * This function returns the variable or field matching a column */ -export function lookupColumn( +export function getColumnForASTNode( column: ESQLColumn, { fields, variables }: Pick ): ESQLRealField | ESQLVariable | undefined { const columnName = getQuotedColumnName(column); return ( - fields.get(columnName) || - variables.get(columnName)?.[0] || + getColumnByName(columnName, { fields, variables }) || // It's possible columnName has backticks "`fieldName`" // so we need to access the original name as well - fields.get(column.name) || - variables.get(column.name)?.[0] + getColumnByName(column.name, { fields, variables }) ); } +/** + * This function returns the variable or field matching a column + */ +export function getColumnByName( + columnName: string, + { fields, variables }: Pick +): ESQLRealField | ESQLVariable | undefined { + return fields.get(columnName) || variables.get(columnName)?.[0]; +} + const ARRAY_REGEXP = /\[\]$/; -export function isArrayType(type: string) { +export function isArrayType(type: string): type is ArrayType { return ARRAY_REGEXP.test(type); } -const arrayToSingularMap: Map = new Map([ +const arrayToSingularMap: Map = new Map([ ['double[]', 'double'], ['unsigned_long[]', 'unsigned_long'], ['long[]', 'long'], @@ -279,7 +288,7 @@ const arrayToSingularMap: Map = ne ['counter_double[]', 'counter_double'], ['keyword[]', 'keyword'], ['text[]', 'text'], - ['datetime[]', 'date'], + ['date[]', 'date'], ['date_period[]', 'date_period'], ['boolean[]', 'boolean'], ['any[]', 'any'], @@ -289,7 +298,7 @@ const arrayToSingularMap: Map = ne * Given an array type for example `string[]` it will return `string` */ export function extractSingularType(type: FunctionParameterType): FunctionParameterType { - return arrayToSingularMap.get(type) ?? type; + return isArrayType(type) ? arrayToSingularMap.get(type)! : type; } export function createMapFromList(arr: T[]): Map { @@ -378,7 +387,7 @@ export function getAllArrayTypes( types.push(subArg.literalType); } if (subArg.type === 'column') { - const hit = lookupColumn(subArg, references); + const hit = getColumnForASTNode(subArg, references); types.push(hit?.type || 'unsupported'); } if (subArg.type === 'timeInterval') { @@ -445,7 +454,7 @@ export function checkFunctionArgMatchesDefinition( return argType === 'time_literal' && inKnownTimeInterval(arg); } if (arg.type === 'column') { - const hit = lookupColumn(arg, references); + const hit = getColumnForASTNode(arg, references); const validHit = hit; if (!validHit) { return false; diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/test_suites/validation.command.from.ts b/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/test_suites/validation.command.from.ts index c24a44dadef40..06d23a30c441d 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/test_suites/validation.command.from.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/__tests__/test_suites/validation.command.from.ts @@ -89,7 +89,7 @@ export const validationFromCommandTestSuite = (setup: helpers.Setup) => { ]); }); - test.skip('errors on unknown index', async () => { + test('errors on unknown index', async () => { const { expectErrors } = await setup(); await expectErrors(`FROM index, missingIndex`, ['Unknown index [missingIndex]']); diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/esql_validation_meta_tests.json b/packages/kbn-esql-validation-autocomplete/src/validation/esql_validation_meta_tests.json index 46bdf3c2a13d2..75d45e85bd11a 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/esql_validation_meta_tests.json +++ b/packages/kbn-esql-validation-autocomplete/src/validation/esql_validation_meta_tests.json @@ -31860,23 +31860,17 @@ }, { "query": "from a_index | stats max(concat(\"20\", \"22\"))", - "error": [ - "Argument of [max] must be [double], found value [concat(\"20\",\"22\")] type [keyword]" - ], + "error": [], "warning": [] }, { "query": "from a_index | stats var = max(textField)", - "error": [ - "Argument of [max] must be [double], found value [textField] type [text]" - ], + "error": [], "warning": [] }, { "query": "from a_index | stats max(textField)", - "error": [ - "Argument of [max] must be [double], found value [textField] type [text]" - ], + "error": [], "warning": [] }, { @@ -31921,6 +31915,110 @@ ], "warning": [] }, + { + "query": "from a_index | stats var = max(versionField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | stats max(versionField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | stats var = max(keywordField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | stats max(keywordField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where max(versionField)", + "error": [ + "WHERE does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | where max(versionField) > 0", + "error": [ + "WHERE does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | where max(keywordField)", + "error": [ + "WHERE does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | where max(keywordField) > 0", + "error": [ + "WHERE does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = max(versionField)", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = max(versionField) > 0", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval max(versionField)", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval max(versionField) > 0", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = max(keywordField)", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = max(keywordField) > 0", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval max(keywordField)", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, + { + "query": "from a_index | eval max(keywordField) > 0", + "error": [ + "EVAL does not support function max" + ], + "warning": [] + }, { "query": "from a_index | stats var = min(doubleField)", "error": [], @@ -32500,23 +32598,17 @@ }, { "query": "from a_index | stats min(concat(\"20\", \"22\"))", - "error": [ - "Argument of [min] must be [double], found value [concat(\"20\",\"22\")] type [keyword]" - ], + "error": [], "warning": [] }, { "query": "from a_index | stats var = min(textField)", - "error": [ - "Argument of [min] must be [double], found value [textField] type [text]" - ], + "error": [], "warning": [] }, { "query": "from a_index | stats min(textField)", - "error": [ - "Argument of [min] must be [double], found value [textField] type [text]" - ], + "error": [], "warning": [] }, { @@ -32561,6 +32653,110 @@ ], "warning": [] }, + { + "query": "from a_index | stats var = min(versionField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | stats min(versionField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | stats var = min(keywordField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | stats min(keywordField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where min(versionField)", + "error": [ + "WHERE does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | where min(versionField) > 0", + "error": [ + "WHERE does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | where min(keywordField)", + "error": [ + "WHERE does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | where min(keywordField) > 0", + "error": [ + "WHERE does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = min(versionField)", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = min(versionField) > 0", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval min(versionField)", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval min(versionField) > 0", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = min(keywordField)", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = min(keywordField) > 0", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval min(keywordField)", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, + { + "query": "from a_index | eval min(keywordField) > 0", + "error": [ + "EVAL does not support function min" + ], + "warning": [] + }, { "query": "from a_index | stats var = count(textField)", "error": [], @@ -37172,6 +37368,307 @@ "error": [], "warning": [] }, + { + "query": "row var = mv_percentile(5.5, 5.5)", + "error": [], + "warning": [] + }, + { + "query": "row mv_percentile(5.5, 5.5)", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(to_double(true), to_double(true))", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(5.5, 5)", + "error": [], + "warning": [] + }, + { + "query": "row mv_percentile(5.5, 5)", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(to_double(true), to_integer(true))", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(to_double(true), 5)", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(5, 5.5)", + "error": [], + "warning": [] + }, + { + "query": "row mv_percentile(5, 5.5)", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(to_integer(true), to_double(true))", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(5, 5)", + "error": [], + "warning": [] + }, + { + "query": "row mv_percentile(5, 5)", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(to_integer(true), to_integer(true))", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(to_integer(true), 5)", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(5, to_double(true))", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(5, to_integer(true))", + "error": [], + "warning": [] + }, + { + "query": "row var = mv_percentile(true, true)", + "error": [ + "Argument of [mv_percentile] must be [double], found value [true] type [boolean]", + "Argument of [mv_percentile] must be [double], found value [true] type [boolean]" + ], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(doubleField, doubleField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(booleanField, booleanField) > 0", + "error": [ + "Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]", + "Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]" + ], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(doubleField, integerField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(doubleField, longField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(integerField, doubleField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(integerField, integerField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(integerField, longField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(longField, doubleField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(longField, integerField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | where mv_percentile(longField, longField) > 0", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(doubleField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(doubleField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(to_double(booleanField), to_double(booleanField))", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(booleanField, booleanField)", + "error": [ + "Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]", + "Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]" + ], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(doubleField, integerField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(doubleField, integerField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(to_double(booleanField), to_integer(booleanField))", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(doubleField, longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(doubleField, longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(to_double(booleanField), longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(integerField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(integerField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(to_integer(booleanField), to_double(booleanField))", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(integerField, integerField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(integerField, integerField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(to_integer(booleanField), to_integer(booleanField))", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(integerField, longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(integerField, longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(to_integer(booleanField), longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(longField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(longField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(longField, to_double(booleanField))", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(longField, integerField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(longField, integerField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(longField, to_integer(booleanField))", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval var = mv_percentile(longField, longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(longField, longField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(doubleField, doubleField, extraArg)", + "error": [ + "Error: [mv_percentile] function expects exactly 2 arguments, got 3." + ], + "warning": [] + }, + { + "query": "from a_index | sort mv_percentile(doubleField, doubleField)", + "error": [], + "warning": [] + }, + { + "query": "from a_index | eval mv_percentile(null, null)", + "error": [], + "warning": [] + }, + { + "query": "row nullVar = null | eval mv_percentile(nullVar, nullVar)", + "error": [], + "warning": [] + }, { "query": "f", "error": [ @@ -37388,6 +37885,48 @@ ], "warning": [] }, + { + "query": "FROM index, missingIndex", + "error": [ + "Unknown index [missingIndex]" + ], + "warning": [] + }, + { + "query": "from average()", + "error": [ + "Unknown index [average()]" + ], + "warning": [] + }, + { + "query": "fRom custom_function()", + "error": [ + "Unknown index [custom_function()]" + ], + "warning": [] + }, + { + "query": "FROM indexes*", + "error": [ + "Unknown index [indexes*]" + ], + "warning": [] + }, + { + "query": "from numberField", + "error": [ + "Unknown index [numberField]" + ], + "warning": [] + }, + { + "query": "FROM policy", + "error": [ + "Unknown index [policy]" + ], + "warning": [] + }, { "query": "from index metadata _id", "error": [], 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 bd1de77be408a..a4b097430851c 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/validation.test.ts @@ -12270,17 +12270,11 @@ describe('validation logic', () => { testErrorsAndWarnings('from a_index | stats max(null)', []); testErrorsAndWarnings('row nullVar = null | stats max(nullVar)', []); testErrorsAndWarnings('from a_index | stats max("2022")', []); - testErrorsAndWarnings('from a_index | stats max(concat("20", "22"))', [ - 'Argument of [max] must be [double], found value [concat("20","22")] type [keyword]', - ]); + testErrorsAndWarnings('from a_index | stats max(concat("20", "22"))', []); - testErrorsAndWarnings('from a_index | stats var = max(textField)', [ - 'Argument of [max] must be [double], found value [textField] type [text]', - ]); + testErrorsAndWarnings('from a_index | stats var = max(textField)', []); - testErrorsAndWarnings('from a_index | stats max(textField)', [ - 'Argument of [max] must be [double], found value [textField] type [text]', - ]); + testErrorsAndWarnings('from a_index | stats max(textField)', []); testErrorsAndWarnings('from a_index | where max(textField)', [ 'WHERE does not support function max', @@ -12305,6 +12299,58 @@ describe('validation logic', () => { testErrorsAndWarnings('from a_index | eval max(textField) > 0', [ 'EVAL does not support function max', ]); + testErrorsAndWarnings('from a_index | stats var = max(versionField)', []); + testErrorsAndWarnings('from a_index | stats max(versionField)', []); + testErrorsAndWarnings('from a_index | stats var = max(keywordField)', []); + testErrorsAndWarnings('from a_index | stats max(keywordField)', []); + + testErrorsAndWarnings('from a_index | where max(versionField)', [ + 'WHERE does not support function max', + ]); + + testErrorsAndWarnings('from a_index | where max(versionField) > 0', [ + 'WHERE does not support function max', + ]); + + testErrorsAndWarnings('from a_index | where max(keywordField)', [ + 'WHERE does not support function max', + ]); + + testErrorsAndWarnings('from a_index | where max(keywordField) > 0', [ + 'WHERE does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval var = max(versionField)', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval var = max(versionField) > 0', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval max(versionField)', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval max(versionField) > 0', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval var = max(keywordField)', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval var = max(keywordField) > 0', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval max(keywordField)', [ + 'EVAL does not support function max', + ]); + + testErrorsAndWarnings('from a_index | eval max(keywordField) > 0', [ + 'EVAL does not support function max', + ]); }); describe('min', () => { @@ -12624,17 +12670,11 @@ describe('validation logic', () => { testErrorsAndWarnings('from a_index | stats min(null)', []); testErrorsAndWarnings('row nullVar = null | stats min(nullVar)', []); testErrorsAndWarnings('from a_index | stats min("2022")', []); - testErrorsAndWarnings('from a_index | stats min(concat("20", "22"))', [ - 'Argument of [min] must be [double], found value [concat("20","22")] type [keyword]', - ]); + testErrorsAndWarnings('from a_index | stats min(concat("20", "22"))', []); - testErrorsAndWarnings('from a_index | stats var = min(textField)', [ - 'Argument of [min] must be [double], found value [textField] type [text]', - ]); + testErrorsAndWarnings('from a_index | stats var = min(textField)', []); - testErrorsAndWarnings('from a_index | stats min(textField)', [ - 'Argument of [min] must be [double], found value [textField] type [text]', - ]); + testErrorsAndWarnings('from a_index | stats min(textField)', []); testErrorsAndWarnings('from a_index | where min(textField)', [ 'WHERE does not support function min', @@ -12659,6 +12699,58 @@ describe('validation logic', () => { testErrorsAndWarnings('from a_index | eval min(textField) > 0', [ 'EVAL does not support function min', ]); + testErrorsAndWarnings('from a_index | stats var = min(versionField)', []); + testErrorsAndWarnings('from a_index | stats min(versionField)', []); + testErrorsAndWarnings('from a_index | stats var = min(keywordField)', []); + testErrorsAndWarnings('from a_index | stats min(keywordField)', []); + + testErrorsAndWarnings('from a_index | where min(versionField)', [ + 'WHERE does not support function min', + ]); + + testErrorsAndWarnings('from a_index | where min(versionField) > 0', [ + 'WHERE does not support function min', + ]); + + testErrorsAndWarnings('from a_index | where min(keywordField)', [ + 'WHERE does not support function min', + ]); + + testErrorsAndWarnings('from a_index | where min(keywordField) > 0', [ + 'WHERE does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval var = min(versionField)', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval var = min(versionField) > 0', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval min(versionField)', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval min(versionField) > 0', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval var = min(keywordField)', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval var = min(keywordField) > 0', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval min(keywordField)', [ + 'EVAL does not support function min', + ]); + + testErrorsAndWarnings('from a_index | eval min(keywordField) > 0', [ + 'EVAL does not support function min', + ]); }); describe('count', () => { @@ -15879,6 +15971,171 @@ describe('validation logic', () => { [] ); }); + + describe('mv_percentile', () => { + testErrorsAndWarnings('row var = mv_percentile(5.5, 5.5)', []); + testErrorsAndWarnings('row mv_percentile(5.5, 5.5)', []); + testErrorsAndWarnings('row var = mv_percentile(to_double(true), to_double(true))', []); + testErrorsAndWarnings('row var = mv_percentile(5.5, 5)', []); + testErrorsAndWarnings('row mv_percentile(5.5, 5)', []); + testErrorsAndWarnings('row var = mv_percentile(to_double(true), to_integer(true))', []); + testErrorsAndWarnings('row var = mv_percentile(to_double(true), 5)', []); + testErrorsAndWarnings('row var = mv_percentile(5, 5.5)', []); + testErrorsAndWarnings('row mv_percentile(5, 5.5)', []); + testErrorsAndWarnings('row var = mv_percentile(to_integer(true), to_double(true))', []); + testErrorsAndWarnings('row var = mv_percentile(5, 5)', []); + testErrorsAndWarnings('row mv_percentile(5, 5)', []); + testErrorsAndWarnings('row var = mv_percentile(to_integer(true), to_integer(true))', []); + testErrorsAndWarnings('row var = mv_percentile(to_integer(true), 5)', []); + testErrorsAndWarnings('row var = mv_percentile(5, to_double(true))', []); + testErrorsAndWarnings('row var = mv_percentile(5, to_integer(true))', []); + + testErrorsAndWarnings('row var = mv_percentile(true, true)', [ + 'Argument of [mv_percentile] must be [double], found value [true] type [boolean]', + 'Argument of [mv_percentile] must be [double], found value [true] type [boolean]', + ]); + + testErrorsAndWarnings( + 'from a_index | where mv_percentile(doubleField, doubleField) > 0', + [] + ); + + testErrorsAndWarnings( + 'from a_index | where mv_percentile(booleanField, booleanField) > 0', + [ + 'Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]', + 'Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]', + ] + ); + + testErrorsAndWarnings( + 'from a_index | where mv_percentile(doubleField, integerField) > 0', + [] + ); + testErrorsAndWarnings('from a_index | where mv_percentile(doubleField, longField) > 0', []); + testErrorsAndWarnings( + 'from a_index | where mv_percentile(integerField, doubleField) > 0', + [] + ); + testErrorsAndWarnings( + 'from a_index | where mv_percentile(integerField, integerField) > 0', + [] + ); + testErrorsAndWarnings( + 'from a_index | where mv_percentile(integerField, longField) > 0', + [] + ); + testErrorsAndWarnings('from a_index | where mv_percentile(longField, doubleField) > 0', []); + testErrorsAndWarnings( + 'from a_index | where mv_percentile(longField, integerField) > 0', + [] + ); + testErrorsAndWarnings('from a_index | where mv_percentile(longField, longField) > 0', []); + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(doubleField, doubleField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(doubleField, doubleField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(to_double(booleanField), to_double(booleanField))', + [] + ); + + testErrorsAndWarnings('from a_index | eval mv_percentile(booleanField, booleanField)', [ + 'Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]', + 'Argument of [mv_percentile] must be [double], found value [booleanField] type [boolean]', + ]); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(doubleField, integerField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(doubleField, integerField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(to_double(booleanField), to_integer(booleanField))', + [] + ); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(doubleField, longField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(doubleField, longField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(to_double(booleanField), longField)', + [] + ); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(integerField, doubleField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(integerField, doubleField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(to_integer(booleanField), to_double(booleanField))', + [] + ); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(integerField, integerField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(integerField, integerField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(to_integer(booleanField), to_integer(booleanField))', + [] + ); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(integerField, longField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(integerField, longField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(to_integer(booleanField), longField)', + [] + ); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(longField, doubleField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(longField, doubleField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(longField, to_double(booleanField))', + [] + ); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(longField, integerField)', + [] + ); + testErrorsAndWarnings('from a_index | eval mv_percentile(longField, integerField)', []); + + testErrorsAndWarnings( + 'from a_index | eval var = mv_percentile(longField, to_integer(booleanField))', + [] + ); + + testErrorsAndWarnings('from a_index | eval var = mv_percentile(longField, longField)', []); + testErrorsAndWarnings('from a_index | eval mv_percentile(longField, longField)', []); + + testErrorsAndWarnings( + 'from a_index | eval mv_percentile(doubleField, doubleField, extraArg)', + ['Error: [mv_percentile] function expects exactly 2 arguments, got 3.'] + ); + + testErrorsAndWarnings('from a_index | sort mv_percentile(doubleField, doubleField)', []); + testErrorsAndWarnings('from a_index | eval mv_percentile(null, null)', []); + testErrorsAndWarnings('row nullVar = null | eval mv_percentile(nullVar, nullVar)', []); + }); }); }); diff --git a/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts b/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts index aedefb08e7387..5a06cf3f6a246 100644 --- a/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts +++ b/packages/kbn-esql-validation-autocomplete/src/validation/validation.ts @@ -30,7 +30,7 @@ import { import { areFieldAndVariableTypesCompatible, extractSingularType, - lookupColumn, + getColumnForASTNode, getCommandDefinition, getFunctionDefinition, isArrayType, @@ -295,7 +295,7 @@ function validateFunctionColumnArg( if ( !checkFunctionArgMatchesDefinition(actualArg, parameterDefinition, references, parentCommand) ) { - const columnHit = lookupColumn(actualArg, references); + const columnHit = getColumnForASTNode(actualArg, references); messages.push( getMessageFromId({ messageId: 'wrongArgumentType', @@ -876,7 +876,7 @@ function validateColumnForCommand( ({ type, innerTypes }) => type === 'column' && innerTypes ); // this should be guaranteed by the columnCheck above - const columnRef = lookupColumn(column, references)!; + const columnRef = getColumnForASTNode(column, references)!; if (columnParamsWithInnerTypes.length) { const hasSomeWrongInnerTypes = columnParamsWithInnerTypes.every(({ innerTypes }) => { diff --git a/packages/kbn-grouping/src/containers/query/types.ts b/packages/kbn-grouping/src/containers/query/types.ts index 69a284ecf7a59..c50e4f8b3391a 100644 --- a/packages/kbn-grouping/src/containers/query/types.ts +++ b/packages/kbn-grouping/src/containers/query/types.ts @@ -7,7 +7,7 @@ */ import type { - InlineScript, + Script, MappingRuntimeField, MappingRuntimeFields, } from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; @@ -52,7 +52,7 @@ export interface MainAggregation extends NamedAggregation { } export interface GroupingRuntimeField extends MappingRuntimeField { - script: InlineScript & { + script: Script & { params: Record; }; } diff --git a/packages/kbn-investigation-shared/index.ts b/packages/kbn-investigation-shared/index.ts index c5f92248adb6b..de0577ee3ed83 100644 --- a/packages/kbn-investigation-shared/index.ts +++ b/packages/kbn-investigation-shared/index.ts @@ -6,22 +6,4 @@ * Side Public License, v 1. */ -export type * from './src/schema/create'; -export type * from './src/schema/create_notes'; -export type * from './src/schema/delete'; -export type * from './src/schema/find'; -export type * from './src/schema/get'; -export type * from './src/schema/get_notes'; -export type * from './src/schema/origin'; -export type * from './src/schema/delete_note'; -export type * from './src/schema/investigation_note'; - -export * from './src/schema/create'; -export * from './src/schema/create_notes'; -export * from './src/schema/delete'; -export * from './src/schema/find'; -export * from './src/schema/get'; -export * from './src/schema/get_notes'; -export * from './src/schema/origin'; -export * from './src/schema/delete_note'; -export * from './src/schema/investigation_note'; +export * from './src'; diff --git a/packages/kbn-investigation-shared/src/index.ts b/packages/kbn-investigation-shared/src/index.ts new file mode 100644 index 0000000000000..cf2c6a5e96f54 --- /dev/null +++ b/packages/kbn-investigation-shared/src/index.ts @@ -0,0 +1,10 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export * from './rest_specs'; +export * from './schema'; diff --git a/packages/kbn-investigation-shared/src/schema/create.ts b/packages/kbn-investigation-shared/src/rest_specs/create.ts similarity index 70% rename from packages/kbn-investigation-shared/src/schema/create.ts rename to packages/kbn-investigation-shared/src/rest_specs/create.ts index 99073087d0b43..cab2de27d5eb7 100644 --- a/packages/kbn-investigation-shared/src/schema/create.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/create.ts @@ -8,7 +8,7 @@ import * as t from 'io-ts'; import { investigationResponseSchema } from './investigation'; -import { alertOriginSchema, blankOriginSchema } from './origin'; +import { alertOriginSchema, blankOriginSchema } from '../schema'; const createInvestigationParamsSchema = t.type({ body: t.type({ @@ -23,9 +23,8 @@ const createInvestigationParamsSchema = t.type({ const createInvestigationResponseSchema = investigationResponseSchema; -type CreateInvestigationInput = t.OutputOf; // Raw payload sent by the frontend -type CreateInvestigationParams = t.TypeOf; // Parsed payload used by the backend -type CreateInvestigationResponse = t.OutputOf; // Raw response sent to the frontend +type CreateInvestigationParams = t.TypeOf; +type CreateInvestigationResponse = t.OutputOf; export { createInvestigationParamsSchema, createInvestigationResponseSchema }; -export type { CreateInvestigationInput, CreateInvestigationParams, CreateInvestigationResponse }; +export type { CreateInvestigationParams, CreateInvestigationResponse }; diff --git a/packages/kbn-investigation-shared/src/rest_specs/create_item.ts b/packages/kbn-investigation-shared/src/rest_specs/create_item.ts new file mode 100644 index 0000000000000..c94673313a50c --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/create_item.ts @@ -0,0 +1,28 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; +import { investigationItemsSchema } from '../schema'; +import { investigationItemResponseSchema } from './investigation_item'; + +const createInvestigationItemParamsSchema = t.type({ + path: t.type({ + investigationId: t.string, + }), + body: investigationItemsSchema, +}); + +const createInvestigationItemResponseSchema = investigationItemResponseSchema; + +type CreateInvestigationItemParams = t.TypeOf< + typeof createInvestigationItemParamsSchema.props.body +>; +type CreateInvestigationItemResponse = t.OutputOf; + +export { createInvestigationItemParamsSchema, createInvestigationItemResponseSchema }; +export type { CreateInvestigationItemParams, CreateInvestigationItemResponse }; diff --git a/packages/kbn-investigation-shared/src/schema/create_notes.ts b/packages/kbn-investigation-shared/src/rest_specs/create_note.ts similarity index 79% rename from packages/kbn-investigation-shared/src/schema/create_notes.ts rename to packages/kbn-investigation-shared/src/rest_specs/create_note.ts index a920a41108e51..0132b86093185 100644 --- a/packages/kbn-investigation-shared/src/schema/create_notes.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/create_note.ts @@ -11,7 +11,7 @@ import { investigationNoteResponseSchema } from './investigation_note'; const createInvestigationNoteParamsSchema = t.type({ path: t.type({ - id: t.string, + investigationId: t.string, }), body: t.type({ content: t.string, @@ -20,17 +20,10 @@ const createInvestigationNoteParamsSchema = t.type({ const createInvestigationNoteResponseSchema = investigationNoteResponseSchema; -type CreateInvestigationNoteInput = t.OutputOf< - typeof createInvestigationNoteParamsSchema.props.body ->; type CreateInvestigationNoteParams = t.TypeOf< typeof createInvestigationNoteParamsSchema.props.body >; type CreateInvestigationNoteResponse = t.OutputOf; export { createInvestigationNoteParamsSchema, createInvestigationNoteResponseSchema }; -export type { - CreateInvestigationNoteInput, - CreateInvestigationNoteParams, - CreateInvestigationNoteResponse, -}; +export type { CreateInvestigationNoteParams, CreateInvestigationNoteResponse }; diff --git a/packages/kbn-investigation-shared/src/schema/delete.ts b/packages/kbn-investigation-shared/src/rest_specs/delete.ts similarity index 87% rename from packages/kbn-investigation-shared/src/schema/delete.ts rename to packages/kbn-investigation-shared/src/rest_specs/delete.ts index de0381a6161f3..52df3b250775d 100644 --- a/packages/kbn-investigation-shared/src/schema/delete.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/delete.ts @@ -10,11 +10,11 @@ import * as t from 'io-ts'; const deleteInvestigationParamsSchema = t.type({ path: t.type({ - id: t.string, + investigationId: t.string, }), }); -type DeleteInvestigationParams = t.TypeOf; // Parsed payload used by the backend +type DeleteInvestigationParams = t.TypeOf; export { deleteInvestigationParamsSchema }; export type { DeleteInvestigationParams }; diff --git a/packages/kbn-investigation-shared/src/rest_specs/delete_item.ts b/packages/kbn-investigation-shared/src/rest_specs/delete_item.ts new file mode 100644 index 0000000000000..14ac6f763ce38 --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/delete_item.ts @@ -0,0 +1,23 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; + +const deleteInvestigationItemParamsSchema = t.type({ + path: t.type({ + investigationId: t.string, + itemId: t.string, + }), +}); + +type DeleteInvestigationItemParams = t.TypeOf< + typeof deleteInvestigationItemParamsSchema.props.path +>; + +export { deleteInvestigationItemParamsSchema }; +export type { DeleteInvestigationItemParams }; diff --git a/packages/kbn-investigation-shared/src/schema/delete_note.ts b/packages/kbn-investigation-shared/src/rest_specs/delete_note.ts similarity index 92% rename from packages/kbn-investigation-shared/src/schema/delete_note.ts rename to packages/kbn-investigation-shared/src/rest_specs/delete_note.ts index 9af910b277756..80cae4a982721 100644 --- a/packages/kbn-investigation-shared/src/schema/delete_note.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/delete_note.ts @@ -10,14 +10,14 @@ import * as t from 'io-ts'; const deleteInvestigationNoteParamsSchema = t.type({ path: t.type({ - id: t.string, + investigationId: t.string, noteId: t.string, }), }); type DeleteInvestigationNoteParams = t.TypeOf< typeof deleteInvestigationNoteParamsSchema.props.path ->; // Parsed payload used by the backend +>; export { deleteInvestigationNoteParamsSchema }; export type { DeleteInvestigationNoteParams }; diff --git a/packages/kbn-investigation-shared/src/schema/find.ts b/packages/kbn-investigation-shared/src/rest_specs/find.ts similarity index 89% rename from packages/kbn-investigation-shared/src/schema/find.ts rename to packages/kbn-investigation-shared/src/rest_specs/find.ts index 048a2f01c064a..0bbb853117138 100644 --- a/packages/kbn-investigation-shared/src/schema/find.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/find.ts @@ -24,8 +24,8 @@ const findInvestigationsResponseSchema = t.type({ results: t.array(investigationResponseSchema), }); -type FindInvestigationsParams = t.TypeOf; // Parsed payload used by the backend -type FindInvestigationsResponse = t.OutputOf; // Raw response sent to the frontend +type FindInvestigationsParams = t.TypeOf; +type FindInvestigationsResponse = t.OutputOf; export { findInvestigationsParamsSchema, findInvestigationsResponseSchema }; export type { FindInvestigationsParams, FindInvestigationsResponse }; diff --git a/packages/kbn-investigation-shared/src/schema/get.ts b/packages/kbn-investigation-shared/src/rest_specs/get.ts similarity index 96% rename from packages/kbn-investigation-shared/src/schema/get.ts rename to packages/kbn-investigation-shared/src/rest_specs/get.ts index 6e2b7d6063ff1..f0cc850116087 100644 --- a/packages/kbn-investigation-shared/src/schema/get.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/get.ts @@ -11,7 +11,7 @@ import { investigationResponseSchema } from './investigation'; const getInvestigationParamsSchema = t.type({ path: t.type({ - id: t.string, + investigationId: t.string, }), }); diff --git a/packages/kbn-investigation-shared/src/rest_specs/get_items.ts b/packages/kbn-investigation-shared/src/rest_specs/get_items.ts new file mode 100644 index 0000000000000..dde19ceda9243 --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/get_items.ts @@ -0,0 +1,23 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; +import { investigationItemResponseSchema } from './investigation_item'; + +const getInvestigationItemsParamsSchema = t.type({ + path: t.type({ + investigationId: t.string, + }), +}); + +const getInvestigationItemsResponseSchema = t.array(investigationItemResponseSchema); + +type GetInvestigationItemsResponse = t.OutputOf; + +export { getInvestigationItemsParamsSchema, getInvestigationItemsResponseSchema }; +export type { GetInvestigationItemsResponse }; diff --git a/packages/kbn-investigation-shared/src/schema/get_notes.ts b/packages/kbn-investigation-shared/src/rest_specs/get_notes.ts similarity index 96% rename from packages/kbn-investigation-shared/src/schema/get_notes.ts rename to packages/kbn-investigation-shared/src/rest_specs/get_notes.ts index 6162d270a3439..7cd9aa1f3fe9c 100644 --- a/packages/kbn-investigation-shared/src/schema/get_notes.ts +++ b/packages/kbn-investigation-shared/src/rest_specs/get_notes.ts @@ -11,7 +11,7 @@ import { investigationNoteResponseSchema } from './investigation_note'; const getInvestigationNotesParamsSchema = t.type({ path: t.type({ - id: t.string, + investigationId: t.string, }), }); diff --git a/packages/kbn-investigation-shared/src/rest_specs/index.ts b/packages/kbn-investigation-shared/src/rest_specs/index.ts new file mode 100644 index 0000000000000..50c1e300cd96a --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/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 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 or the Server + * Side Public License, v 1. + */ + +export type * from './create'; +export type * from './create_note'; +export type * from './delete'; +export type * from './find'; +export type * from './get'; +export type * from './get_notes'; +export type * from './delete_note'; +export type * from './investigation_note'; +export type * from './create_item'; +export type * from './delete_item'; +export type * from './get_items'; + +export * from './create'; +export * from './create_note'; +export * from './delete'; +export * from './find'; +export * from './get'; +export * from './get_notes'; +export * from './delete_note'; +export * from './investigation_note'; +export * from './create_item'; +export * from './delete_item'; +export * from './get_items'; diff --git a/packages/kbn-investigation-shared/src/rest_specs/investigation.ts b/packages/kbn-investigation-shared/src/rest_specs/investigation.ts new file mode 100644 index 0000000000000..c2530ff0dc9a4 --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/investigation.ts @@ -0,0 +1,17 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; +import { investigationSchema } from '../schema'; + +const investigationResponseSchema = investigationSchema; + +type InvestigationResponse = t.OutputOf; + +export { investigationResponseSchema }; +export type { InvestigationResponse }; diff --git a/packages/kbn-investigation-shared/src/rest_specs/investigation_item.ts b/packages/kbn-investigation-shared/src/rest_specs/investigation_item.ts new file mode 100644 index 0000000000000..df9ec315e3277 --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/investigation_item.ts @@ -0,0 +1,17 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; +import { investigationItemSchema } from '../schema'; + +const investigationItemResponseSchema = investigationItemSchema; + +type InvestigationItemResponse = t.OutputOf; + +export { investigationItemResponseSchema }; +export type { InvestigationItemResponse }; diff --git a/packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts b/packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts new file mode 100644 index 0000000000000..5e6a15b327d8a --- /dev/null +++ b/packages/kbn-investigation-shared/src/rest_specs/investigation_note.ts @@ -0,0 +1,17 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; +import { investigationNoteSchema } from '../schema'; + +const investigationNoteResponseSchema = investigationNoteSchema; + +type InvestigationNoteResponse = t.OutputOf; + +export { investigationNoteResponseSchema }; +export type { InvestigationNoteResponse }; diff --git a/packages/kbn-investigation-shared/src/schema/index.ts b/packages/kbn-investigation-shared/src/schema/index.ts new file mode 100644 index 0000000000000..d6c017c963e7c --- /dev/null +++ b/packages/kbn-investigation-shared/src/schema/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 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 or the Server + * Side Public License, v 1. + */ + +export * from './investigation'; +export * from './investigation_item'; +export * from './investigation_note'; +export * from './origin'; diff --git a/packages/kbn-investigation-shared/src/schema/investigation.ts b/packages/kbn-investigation-shared/src/schema/investigation.ts index d47db8283d02c..299d077d71e6c 100644 --- a/packages/kbn-investigation-shared/src/schema/investigation.ts +++ b/packages/kbn-investigation-shared/src/schema/investigation.ts @@ -8,9 +8,10 @@ import * as t from 'io-ts'; import { alertOriginSchema, blankOriginSchema } from './origin'; -import { investigationNoteResponseSchema } from './investigation_note'; +import { investigationNoteSchema } from './investigation_note'; +import { investigationItemSchema } from './investigation_item'; -const investigationResponseSchema = t.type({ +const investigationSchema = t.type({ id: t.string, title: t.string, createdAt: t.number, @@ -20,10 +21,8 @@ const investigationResponseSchema = t.type({ }), origin: t.union([alertOriginSchema, blankOriginSchema]), status: t.union([t.literal('ongoing'), t.literal('closed')]), - notes: t.array(investigationNoteResponseSchema), + notes: t.array(investigationNoteSchema), + items: t.array(investigationItemSchema), }); -type InvestigationResponse = t.OutputOf; - -export { investigationResponseSchema }; -export type { InvestigationResponse }; +export { investigationSchema }; diff --git a/packages/kbn-investigation-shared/src/schema/investigation_item.ts b/packages/kbn-investigation-shared/src/schema/investigation_item.ts new file mode 100644 index 0000000000000..8689224960c52 --- /dev/null +++ b/packages/kbn-investigation-shared/src/schema/investigation_item.ts @@ -0,0 +1,27 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import * as t from 'io-ts'; + +const esqlItemSchema = t.type({ + title: t.string, + type: t.literal('esql'), + params: t.type({ + esql: t.string, + suggestion: t.any, + }), +}); + +const investigationItemsSchema = esqlItemSchema; // replace with union with various item types + +const investigationItemSchema = t.intersection([ + t.type({ id: t.string, createdAt: t.number, createdBy: t.string }), + investigationItemsSchema, +]); + +export { investigationItemSchema, investigationItemsSchema, esqlItemSchema }; diff --git a/packages/kbn-investigation-shared/src/schema/investigation_note.ts b/packages/kbn-investigation-shared/src/schema/investigation_note.ts index f678a70cb929c..53ecd11c77bb4 100644 --- a/packages/kbn-investigation-shared/src/schema/investigation_note.ts +++ b/packages/kbn-investigation-shared/src/schema/investigation_note.ts @@ -8,14 +8,11 @@ import * as t from 'io-ts'; -const investigationNoteResponseSchema = t.type({ +const investigationNoteSchema = t.type({ id: t.string, content: t.string, createdAt: t.number, createdBy: t.string, }); -type InvestigationNoteResponse = t.OutputOf; - -export { investigationNoteResponseSchema }; -export type { InvestigationNoteResponse }; +export { investigationNoteSchema }; diff --git a/packages/kbn-managed-content-badge/index.ts b/packages/kbn-managed-content-badge/index.ts index a548520c01237..1fb38681fe2b4 100644 --- a/packages/kbn-managed-content-badge/index.ts +++ b/packages/kbn-managed-content-badge/index.ts @@ -9,9 +9,10 @@ import { i18n } from '@kbn/i18n'; import type { EuiToolTipProps } from '@elastic/eui'; import type { TopNavMenuBadgeProps } from '@kbn/navigation-plugin/public'; -export const getManagedContentBadge: (tooltipText: string) => TopNavMenuBadgeProps = ( - tooltipText -) => ({ +export const getManagedContentBadge: ( + tooltipText: string, + disableTooltipProps?: boolean +) => TopNavMenuBadgeProps = (tooltipText, enableTooltipProps = true) => ({ 'data-test-subj': 'managedContentBadge', badgeText: i18n.translate('managedContentBadge.text', { defaultMessage: 'Managed', @@ -21,8 +22,10 @@ export const getManagedContentBadge: (tooltipText: string) => TopNavMenuBadgePro }), color: 'primary', iconType: 'glasses', - toolTipProps: { - content: tooltipText, - position: 'bottom', - } as EuiToolTipProps, + toolTipProps: enableTooltipProps + ? ({ + content: tooltipText, + position: 'bottom', + } as EuiToolTipProps) + : undefined, }); diff --git a/packages/kbn-monaco/src/esql/language.ts b/packages/kbn-monaco/src/esql/language.ts index 4c629f6b060bb..958af9e80c1f6 100644 --- a/packages/kbn-monaco/src/esql/language.ts +++ b/packages/kbn-monaco/src/esql/language.ts @@ -100,10 +100,10 @@ export const ESQLLang: CustomLangModuleType = { (...uris) => workerProxyService.getWorker(uris), callbacks ); - const suggestionEntries = await astAdapter.autocomplete(model, position, context); + const suggestions = await astAdapter.autocomplete(model, position, context); return { // @ts-expect-error because of range typing: https://github.com/microsoft/monaco-editor/issues/4638 - suggestions: wrapAsMonacoSuggestions(suggestionEntries), + suggestions: wrapAsMonacoSuggestions(suggestions), }; }, }; diff --git a/packages/kbn-monaco/src/esql/lib/converters/suggestions.ts b/packages/kbn-monaco/src/esql/lib/converters/suggestions.ts index d26169d59647b..2eaf598a61974 100644 --- a/packages/kbn-monaco/src/esql/lib/converters/suggestions.ts +++ b/packages/kbn-monaco/src/esql/lib/converters/suggestions.ts @@ -16,10 +16,22 @@ export function wrapAsMonacoSuggestions( suggestions: SuggestionRawDefinitionWithMonacoRange[] ): MonacoAutocompleteCommandDefinition[] { return suggestions.map( - ({ label, text, asSnippet, kind, detail, documentation, sortText, command, range }) => { + ({ + label, + text, + asSnippet, + kind, + detail, + documentation, + sortText, + filterText, + command, + range, + }) => { const monacoSuggestion: MonacoAutocompleteCommandDefinition = { label, insertText: text, + filterText, kind: kind in monaco.languages.CompletionItemKind ? monaco.languages.CompletionItemKind[kind] diff --git a/packages/kbn-monaco/src/esql/lib/shared/utils.ts b/packages/kbn-monaco/src/esql/lib/shared/utils.ts index e09362cb5c83f..8b6762fafccf2 100644 --- a/packages/kbn-monaco/src/esql/lib/shared/utils.ts +++ b/packages/kbn-monaco/src/esql/lib/shared/utils.ts @@ -39,6 +39,7 @@ export const offsetRangeToMonacoRange = ( } => { let startColumn = 0; let endColumn = 0; + // How far we are past the last newline character let currentOffset = 0; let startLineNumber = 1; @@ -63,10 +64,16 @@ export const offsetRangeToMonacoRange = ( } } - // Handle the case where the end offset is at the end of the string - if (range.end === expression.length) { + // Handle the case where the start offset is past the end of the string + if (range.start >= expression.length) { + startLineNumber = currentLine; + startColumn = range.start - currentOffset; + } + + // Handle the case where the end offset is at the end or past the end of the string + if (range.end >= expression.length) { endLineNumber = currentLine; - endColumn = expression.length - currentOffset; + endColumn = range.end - currentOffset; } return { diff --git a/packages/kbn-monaco/src/esql/lib/types.ts b/packages/kbn-monaco/src/esql/lib/types.ts index ebe7459fef983..d16c40dcead1e 100644 --- a/packages/kbn-monaco/src/esql/lib/types.ts +++ b/packages/kbn-monaco/src/esql/lib/types.ts @@ -13,6 +13,7 @@ export type MonacoAutocompleteCommandDefinition = Pick< monaco.languages.CompletionItem, | 'label' | 'insertText' + | 'filterText' | 'kind' | 'detail' | 'documentation' 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 3826621591866..8140fff7bd3a2 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 @@ -7,7 +7,7 @@ */ import chalk from 'chalk'; -import { dump } from 'js-yaml'; +import { safeDump } from 'js-yaml'; import { isPlainObjectType } from './is_plain_object_type'; /** @@ -32,7 +32,9 @@ 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${dump(document)}` + )} to be a plain object but it has type "${typeof target}" in \n\n${safeDump(document, { + skipInvalid: true, + })}` ); } @@ -66,7 +68,7 @@ export function extractObjectByJsonPointer( throw new Error( `JSON Pointer resolution failure. Expected ${chalk.magenta( pointer - )} to be a plain object in \n\n${dump(document)}` + )} to be a plain object in \n\n${safeDump(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 49476c134e91f..31dc0aed79646 100644 --- a/packages/kbn-openapi-bundler/src/utils/read_document.ts +++ b/packages/kbn-openapi-bundler/src/utils/read_document.ts @@ -8,7 +8,7 @@ import fs from 'fs/promises'; import { basename, extname } from 'path'; -import { load } from 'js-yaml'; +import { safeLoad } from 'js-yaml'; import chalk from 'chalk'; import { logger } from '../logger'; import { isPlainObjectType } from './is_plain_object_type'; @@ -45,7 +45,7 @@ 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 load(await fs.readFile(filePath, { encoding: 'utf8' })); + return safeLoad(await fs.readFile(filePath, { encoding: 'utf8' })); } async function readJsonFile(filePath: string): Promise> { 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 980f898777aef..35a7f41d3d747 100644 --- a/packages/kbn-openapi-bundler/src/utils/write_yaml_document.ts +++ b/packages/kbn-openapi-bundler/src/utils/write_yaml_document.ts @@ -7,7 +7,7 @@ */ import fs from 'fs/promises'; -import { dump } from 'js-yaml'; +import { safeDump } from 'js-yaml'; import { dirname } from 'path'; export async function writeYamlDocument(filePath: string, document: unknown): Promise { @@ -23,21 +23,16 @@ export async function writeYamlDocument(filePath: string, document: unknown): Pr function stringifyToYaml(document: unknown): string { try { - // We don't want to have `undefined` values serialized into YAML. - // `JSON.stringify()` simply skips `undefined` values while js-yaml v 3.14 DOES NOT. - // js-yaml >= v4 has it fixed so `dump()`'s behavior is consistent with `JSON.stringify()`. - // Until js-yaml is updated to v4 use the hack with JSON serialization/deserialization. - const clearedDocument = JSON.parse(JSON.stringify(document)); - // Disable YAML Anchors https://yaml.org/spec/1.2.2/#3222-anchors-and-aliases // It makes YAML much more human readable - return dump(clearedDocument, { + return safeDump(document, { noRefs: true, sortKeys: sortYamlKeys, + skipInvalid: true, // Skip invalid types like `undefined` }); } catch (e) { // Try to stringify with YAML Anchors enabled - return dump(document, { noRefs: false, sortKeys: sortYamlKeys }); + return safeDump(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 59d5271fc0f87..66746979eaab1 100644 --- a/packages/kbn-openapi-bundler/tests/bundler/bundle_specs.ts +++ b/packages/kbn-openapi-bundler/tests/bundler/bundle_specs.ts @@ -16,7 +16,7 @@ import { unlinkSync, writeFileSync, } from 'fs'; -import { dump, load } from 'js-yaml'; +import { safeDump, safeLoad } from 'js-yaml'; import { OpenAPIV3 } from 'openapi-types'; import { bundle, BundlerConfig } from '../../src/openapi_bundler'; @@ -56,7 +56,10 @@ function dumpSpecs(folderPath: string, oasSpecs: Record { const [bundledSpec] = Object.values(readBundledSpecs(outputFolderPath)); - const expected = load( + const expected = safeLoad( 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 b711014a4ff34..90561369a7347 100644 --- a/packages/kbn-openapi-bundler/tests/bundler/circular.test.ts +++ b/packages/kbn-openapi-bundler/tests/bundler/circular.test.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import { dump } from 'js-yaml'; +import { safeDump } from 'js-yaml'; import { OpenAPIV3 } from 'openapi-types'; import { bundleSpecs } from './bundle_specs'; import { createOASDocument } from '../create_oas_document'; @@ -48,7 +48,8 @@ describe('OpenAPI Bundler - circular specs', () => { }) ); - expect(dump(bundledSpec.paths['/api/some_api']!.get!.responses['200'])).toMatchInlineSnapshot(` + expect(safeDump(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 0455bb1088369..92b7fc0901179 100644 --- a/packages/kbn-openapi-bundler/tests/merger/merge_specs.ts +++ b/packages/kbn-openapi-bundler/tests/merger/merge_specs.ts @@ -16,7 +16,7 @@ import { unlinkSync, writeFileSync, } from 'fs'; -import { dump, load } from 'js-yaml'; +import { safeDump, safeLoad } from 'js-yaml'; import { OpenAPIV3 } from 'openapi-types'; import { merge, MergerConfig } from '../../src/openapi_merger'; @@ -56,7 +56,10 @@ function dumpSpecs(folderPath: string, oasSpecs: Record; export const PlatformErrorResponse = z.object({ diff --git a/packages/kbn-openapi-common/schemas/primitives.gen.ts b/packages/kbn-openapi-common/schemas/primitives.gen.ts index a9027448d7e77..1a3477ec1735c 100644 --- a/packages/kbn-openapi-common/schemas/primitives.gen.ts +++ b/packages/kbn-openapi-common/schemas/primitives.gen.ts @@ -15,7 +15,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; /** * A string that is not empty and does not contain only whitespace diff --git a/packages/kbn-openapi-common/tsconfig.json b/packages/kbn-openapi-common/tsconfig.json index 168274f98f058..ca7d7e4715362 100644 --- a/packages/kbn-openapi-common/tsconfig.json +++ b/packages/kbn-openapi-common/tsconfig.json @@ -6,5 +6,7 @@ "exclude": ["target/**/*"], "extends": "../../tsconfig.base.json", "include": ["**/*.ts"], - "kbn_references": [] + "kbn_references": [ + "@kbn/zod", + ] } diff --git a/packages/kbn-openapi-generator/README.md b/packages/kbn-openapi-generator/README.md index cd3fe96f18601..1652588cbe15b 100644 --- a/packages/kbn-openapi-generator/README.md +++ b/packages/kbn-openapi-generator/README.md @@ -67,7 +67,7 @@ By default it uses the `zod_operation_schema` template which produces runtime ty Example of generated code: ```ts -import { z } from 'zod'; +import { z } from '@kbn/zod'; /* * NOTICE: Do not edit this file manually. diff --git a/packages/kbn-openapi-generator/docs/USAGE_GUIDE.md b/packages/kbn-openapi-generator/docs/USAGE_GUIDE.md index d50b3d1395864..3c7e96401edb4 100644 --- a/packages/kbn-openapi-generator/docs/USAGE_GUIDE.md +++ b/packages/kbn-openapi-generator/docs/USAGE_GUIDE.md @@ -210,7 +210,7 @@ components: Running OpenAPI Generator on that file will produce the following `.gen.ts` file ```ts -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type EntityId = z.infer; export const EntityId = z.string(); diff --git a/packages/kbn-openapi-generator/src/template_service/templates/zod_operation_schema.handlebars b/packages/kbn-openapi-generator/src/template_service/templates/zod_operation_schema.handlebars index 6e5d21363a5ae..fa750c7d1f8ab 100644 --- a/packages/kbn-openapi-generator/src/template_service/templates/zod_operation_schema.handlebars +++ b/packages/kbn-openapi-generator/src/template_service/templates/zod_operation_schema.handlebars @@ -7,13 +7,13 @@ {{> disclaimer}} -import type { ZodTypeDef } from 'zod'; -import { z } from 'zod'; +import type { ZodTypeDef } from '@kbn/zod'; +import { z } from '@kbn/zod'; import { requiredOptional, isValidDateMath, ArrayFromString, BooleanFromString } from '@kbn/zod-helpers'; {{#each imports}} -import { - {{#each this}}{{.}},{{/each}} +import { + {{#each this}}{{.}},{{/each}} } from "{{@key}}" {{/each}} diff --git a/packages/kbn-optimizer/limits.yml b/packages/kbn-optimizer/limits.yml index a33156e376972..3a56e7e75029b 100644 --- a/packages/kbn-optimizer/limits.yml +++ b/packages/kbn-optimizer/limits.yml @@ -136,8 +136,10 @@ pageLoadAssetSize: savedSearch: 16225 screenshotMode: 17856 screenshotting: 22870 + searchAssistant: 19831 searchConnectors: 30000 searchHomepage: 19831 + searchIndices: 20519 searchInferenceEndpoints: 20470 searchNotebooks: 18942 searchPlayground: 19325 diff --git a/packages/kbn-router-to-openapispec/src/generate_oas.test.fixture.ts b/packages/kbn-router-to-openapispec/src/generate_oas.test.fixture.ts index 760deff020022..731e07d034ebc 100644 --- a/packages/kbn-router-to-openapispec/src/generate_oas.test.fixture.ts +++ b/packages/kbn-router-to-openapispec/src/generate_oas.test.fixture.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { schema } from '@kbn/config-schema'; export const sharedOas = { diff --git a/packages/kbn-screenshotting-server/README.md b/packages/kbn-screenshotting-server/README.md new file mode 100644 index 0000000000000..5dbac6d0ea00f --- /dev/null +++ b/packages/kbn-screenshotting-server/README.md @@ -0,0 +1,3 @@ +# @kbn/screenshotting-server + +Stateless code pertaining to the capture of screenshots for Kibana Reporting diff --git a/packages/kbn-screenshotting-server/index.ts b/packages/kbn-screenshotting-server/index.ts new file mode 100644 index 0000000000000..8ba3e368f4629 --- /dev/null +++ b/packages/kbn-screenshotting-server/index.ts @@ -0,0 +1,13 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { args } from './src/args'; +export { ChromiumArchivePaths, type PackageInfo } from './src/paths'; +export { getChromiumPackage } from './src/get_chromium_package'; +export { type ConfigType, createConfig, config, durationToNumber } from './src/config'; +export { ConfigSchema } from './src/config/schema'; diff --git a/packages/kbn-screenshotting-server/jest.config.js b/packages/kbn-screenshotting-server/jest.config.js new file mode 100644 index 0000000000000..7436a349ebfc7 --- /dev/null +++ b/packages/kbn-screenshotting-server/jest.config.js @@ -0,0 +1,13 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +module.exports = { + preset: '@kbn/test/jest_node', + rootDir: '../..', + roots: ['/packages/kbn-screenshotting-server'], +}; diff --git a/packages/kbn-screenshotting-server/kibana.jsonc b/packages/kbn-screenshotting-server/kibana.jsonc new file mode 100644 index 0000000000000..1f2aa1c0f5794 --- /dev/null +++ b/packages/kbn-screenshotting-server/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-server", + "id": "@kbn/screenshotting-server", + "owner": "@elastic/appex-sharedux" +} diff --git a/packages/kbn-screenshotting-server/package.json b/packages/kbn-screenshotting-server/package.json new file mode 100644 index 0000000000000..11f02c6cb5c30 --- /dev/null +++ b/packages/kbn-screenshotting-server/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/screenshotting-server", + "private": true, + "version": "1.0.0", + "license": "SSPL-1.0 OR Elastic License 2.0" +} \ No newline at end of file diff --git a/x-pack/plugins/screenshotting/server/browsers/chromium/driver_factory/args.test.ts b/packages/kbn-screenshotting-server/src/args.test.ts similarity index 89% rename from x-pack/plugins/screenshotting/server/browsers/chromium/driver_factory/args.test.ts rename to packages/kbn-screenshotting-server/src/args.test.ts index d66386deb1669..b3ed9a8a4003c 100644 --- a/x-pack/plugins/screenshotting/server/browsers/chromium/driver_factory/args.test.ts +++ b/packages/kbn-screenshotting-server/src/args.test.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import os from 'os'; diff --git a/x-pack/plugins/screenshotting/server/browsers/chromium/driver_factory/args.ts b/packages/kbn-screenshotting-server/src/args.ts similarity index 92% rename from x-pack/plugins/screenshotting/server/browsers/chromium/driver_factory/args.ts rename to packages/kbn-screenshotting-server/src/args.ts index 2337e452cdc94..a1b1b82e8a24a 100644 --- a/x-pack/plugins/screenshotting/server/browsers/chromium/driver_factory/args.ts +++ b/packages/kbn-screenshotting-server/src/args.ts @@ -1,12 +1,13 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import os from 'os'; -import type { ConfigType } from '../../../config'; +import type { ConfigType } from './config'; interface WindowSize { height: number; diff --git a/x-pack/plugins/screenshotting/server/config/create_config.test.ts b/packages/kbn-screenshotting-server/src/config/create_config.test.ts similarity index 86% rename from x-pack/plugins/screenshotting/server/config/create_config.test.ts rename to packages/kbn-screenshotting-server/src/config/create_config.test.ts index 4bc5ff65727d0..9a6a7e1cdd579 100644 --- a/x-pack/plugins/screenshotting/server/config/create_config.test.ts +++ b/packages/kbn-screenshotting-server/src/config/create_config.test.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import type { Logger } from '@kbn/core/server'; diff --git a/x-pack/plugins/screenshotting/server/config/create_config.ts b/packages/kbn-screenshotting-server/src/config/create_config.ts similarity index 89% rename from x-pack/plugins/screenshotting/server/config/create_config.ts rename to packages/kbn-screenshotting-server/src/config/create_config.ts index c2ab86b5de76e..099dc0b8cb9e6 100644 --- a/x-pack/plugins/screenshotting/server/config/create_config.ts +++ b/packages/kbn-screenshotting-server/src/config/create_config.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import { set } from '@kbn/safer-lodash-set'; diff --git a/x-pack/plugins/screenshotting/server/config/default_chromium_sandbox_disabled.test.ts b/packages/kbn-screenshotting-server/src/config/default_chromium_sandbox_disabled.test.ts similarity index 92% rename from x-pack/plugins/screenshotting/server/config/default_chromium_sandbox_disabled.test.ts rename to packages/kbn-screenshotting-server/src/config/default_chromium_sandbox_disabled.test.ts index 0b5f503e86921..01e863556691d 100644 --- a/x-pack/plugins/screenshotting/server/config/default_chromium_sandbox_disabled.test.ts +++ b/packages/kbn-screenshotting-server/src/config/default_chromium_sandbox_disabled.test.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ jest.mock('getos', () => jest.fn()); diff --git a/x-pack/plugins/screenshotting/server/config/default_chromium_sandbox_disabled.ts b/packages/kbn-screenshotting-server/src/config/default_chromium_sandbox_disabled.ts similarity index 90% rename from x-pack/plugins/screenshotting/server/config/default_chromium_sandbox_disabled.ts rename to packages/kbn-screenshotting-server/src/config/default_chromium_sandbox_disabled.ts index 34986e804f45a..19b268f20439c 100644 --- a/x-pack/plugins/screenshotting/server/config/default_chromium_sandbox_disabled.ts +++ b/packages/kbn-screenshotting-server/src/config/default_chromium_sandbox_disabled.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import getOsSync from 'getos'; diff --git a/x-pack/plugins/screenshotting/server/config/index.ts b/packages/kbn-screenshotting-server/src/config/index.ts similarity index 93% rename from x-pack/plugins/screenshotting/server/config/index.ts rename to packages/kbn-screenshotting-server/src/config/index.ts index 468f092780112..583952da6cba6 100644 --- a/x-pack/plugins/screenshotting/server/config/index.ts +++ b/packages/kbn-screenshotting-server/src/config/index.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import type { PluginConfigDescriptor } from '@kbn/core/server'; diff --git a/x-pack/plugins/screenshotting/server/config/schema.ts b/packages/kbn-screenshotting-server/src/config/schema.ts similarity index 94% rename from x-pack/plugins/screenshotting/server/config/schema.ts rename to packages/kbn-screenshotting-server/src/config/schema.ts index 0dda1e3ae9981..ce542f2a849f4 100644 --- a/x-pack/plugins/screenshotting/server/config/schema.ts +++ b/packages/kbn-screenshotting-server/src/config/schema.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import { schema, TypeOf, offeringBasedSchema } from '@kbn/config-schema'; diff --git a/packages/kbn-screenshotting-server/src/get_chromium_package.ts b/packages/kbn-screenshotting-server/src/get_chromium_package.ts new file mode 100644 index 0000000000000..af79341d0046a --- /dev/null +++ b/packages/kbn-screenshotting-server/src/get_chromium_package.ts @@ -0,0 +1,23 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import os from 'os'; +import { ChromiumArchivePaths } from './paths'; + +const paths = new ChromiumArchivePaths(); + +export const getChromiumPackage = () => { + const platform = process.platform; + const architecture = os.arch(); + + const chromiumPackageInfo = paths.find(process.platform, architecture); + if (!chromiumPackageInfo) { + throw new Error(`Unsupported platform: ${platform}-${architecture}`); + } + return chromiumPackageInfo; +}; diff --git a/x-pack/plugins/screenshotting/server/browsers/chromium/paths.ts b/packages/kbn-screenshotting-server/src/paths.ts similarity index 96% rename from x-pack/plugins/screenshotting/server/browsers/chromium/paths.ts rename to packages/kbn-screenshotting-server/src/paths.ts index ba82fe21734e4..f3c339988567f 100644 --- a/x-pack/plugins/screenshotting/server/browsers/chromium/paths.ts +++ b/packages/kbn-screenshotting-server/src/paths.ts @@ -1,8 +1,9 @@ /* * 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; you may not use this file except in compliance with the Elastic License - * 2.0. + * 2.0 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 or the Server + * Side Public License, v 1. */ import path from 'path'; diff --git a/packages/kbn-screenshotting-server/tsconfig.json b/packages/kbn-screenshotting-server/tsconfig.json new file mode 100644 index 0000000000000..1ca4b9da2b0f6 --- /dev/null +++ b/packages/kbn-screenshotting-server/tsconfig.json @@ -0,0 +1,21 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node" + ] + }, + "include": [ + "**/*.ts" + ], + "exclude": [ + "target/**/*" + ], + "kbn_references": [ + "@kbn/core", + "@kbn/safer-lodash-set", + "@kbn/config-schema" + ] +} diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.gen.ts index 7a6f0231a9f59..94ce9b7b8da74 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list/create_endpoint_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { EndpointList } from '../model/endpoint_list_common.gen'; diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.gen.ts index f36f79f7b0b2a..a8ce0d06bec96 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/create_endpoint_list_item/create_endpoint_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListItemHumanId, diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.gen.ts index cd02179c2922f..bffe32c61efad 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/delete_endpoint_list_item/delete_endpoint_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListItemId, diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.gen.ts index ac1f955df209e..e00e21c0d9844 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/find_endpoint_list_item/find_endpoint_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { EndpointListItem } from '../model/endpoint_list_common.gen'; diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/model/endpoint_list_common.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/model/endpoint_list_common.gen.ts index 30f7c80ba257c..4152f49e9ba90 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/model/endpoint_list_common.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/model/endpoint_list_common.gen.ts @@ -15,7 +15,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionList, diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.gen.ts index e3661cb8099d3..28cf72345e008 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/read_endpoint_list_item/read_endpoint_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListItemId, diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.gen.ts b/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.gen.ts index 38d8cd87a430e..e3dca2cdc27a9 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.gen.ts +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/api/update_endpoint_list_item/update_endpoint_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListItemId, diff --git a/packages/kbn-securitysolution-endpoint-exceptions-common/tsconfig.json b/packages/kbn-securitysolution-endpoint-exceptions-common/tsconfig.json index 750feb76c4bd2..7e3c3fd7396dc 100644 --- a/packages/kbn-securitysolution-endpoint-exceptions-common/tsconfig.json +++ b/packages/kbn-securitysolution-endpoint-exceptions-common/tsconfig.json @@ -6,5 +6,9 @@ "exclude": ["target/**/*"], "extends": "../../tsconfig.base.json", "include": ["**/*.ts"], - "kbn_references": ["@kbn/securitysolution-exceptions-common", "@kbn/openapi-common"] + "kbn_references": [ + "@kbn/securitysolution-exceptions-common", + "@kbn/openapi-common", + "@kbn/zod", + ] } diff --git a/packages/kbn-securitysolution-es-utils/src/transform_error/index.ts b/packages/kbn-securitysolution-es-utils/src/transform_error/index.ts index d893a3e1b4ed7..8fdf8fe32907c 100644 --- a/packages/kbn-securitysolution-es-utils/src/transform_error/index.ts +++ b/packages/kbn-securitysolution-es-utils/src/transform_error/index.ts @@ -9,7 +9,7 @@ import { errors } from '@elastic/elasticsearch'; import Boom from '@hapi/boom'; import { stringifyZodError } from '@kbn/zod-helpers'; -import { ZodError } from 'zod'; +import { ZodError } from '@kbn/zod'; import { BadRequestError } from '../bad_request_error'; export interface OutputError { diff --git a/packages/kbn-securitysolution-es-utils/tsconfig.json b/packages/kbn-securitysolution-es-utils/tsconfig.json index c9296a28f35c7..e584d504cc9c0 100644 --- a/packages/kbn-securitysolution-es-utils/tsconfig.json +++ b/packages/kbn-securitysolution-es-utils/tsconfig.json @@ -15,5 +15,6 @@ ], "kbn_references": [ "@kbn/zod-helpers", + "@kbn/zod", ] } diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.gen.ts index 3509b26499fc9..88154be8135eb 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list/create_exception_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListHumanId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.gen.ts index a11dd91aedd44..b39449b737735 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/create_exception_list_item/create_exception_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.gen.ts index e30f466cc056c..7fd4235fa3570 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/create_rule_exceptions/create_rule_exceptions.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { UUID, NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { diff --git a/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.gen.ts index e050c211e1513..28879de7ff81e 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/create_shared_exceptions_list/create_shared_exceptions_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListName, diff --git a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.gen.ts index 0797b7e3b9b01..808cc84807ab1 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list/delete_exception_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.gen.ts index d709fd5597b80..e44334ad60e5c 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/delete_exception_list_item/delete_exception_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListItemId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.gen.ts index e5c3f19b28aa2..65ea86f9f2f35 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/duplicate_exception_list/duplicate_exception_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListHumanId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.gen.ts index bb62df2e43226..f4c4fc720951a 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/export_exception_list/export_exception_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.gen.ts index 3c89952682847..9cf4d99c4d93a 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/find_exception_list_items/find_exception_list_items.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ArrayFromString } from '@kbn/zod-helpers'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; diff --git a/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.gen.ts index 6ae1aef1f15df..b478692515bda 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/find_exception_lists/find_exception_lists.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ArrayFromString } from '@kbn/zod-helpers'; import { ExceptionNamespaceType, ExceptionList } from '../model/exception_list_common.gen'; diff --git a/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.gen.ts index ec25576cc9dfe..a1b6d0ce8e26b 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/import_exceptions/import_exceptions.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { BooleanFromString } from '@kbn/zod-helpers'; import { diff --git a/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_common.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_common.gen.ts index 360e4ec747d85..28f3d2ac62b8f 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_common.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_common.gen.ts @@ -15,7 +15,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { ExceptionListItemEntryArray } from './exception_list_item_entry.gen'; diff --git a/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_item_entry.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_item_entry.gen.ts index c297388633429..d7a0e54487783 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_item_entry.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/model/exception_list_item_entry.gen.ts @@ -15,7 +15,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { ListId, ListType } from '@kbn/securitysolution-lists-common/api/model/list_common.gen'; diff --git a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.gen.ts index 1cd161cbcbc20..d86025c948329 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list/read_exception_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.gen.ts index 5c8d5a27c38d8..9ab5ae84446f5 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_item/read_exception_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListItemId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.gen.ts index d740f5843b5ce..94a9c6a51895b 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/read_exception_list_summary/read_exception_list_summary.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.gen.ts index 8fb0760677873..7fa7febd0e066 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list/update_exception_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ExceptionListId, diff --git a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.gen.ts b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.gen.ts index 963628a7be5c5..82e696cbf3825 100644 --- a/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.gen.ts +++ b/packages/kbn-securitysolution-exceptions-common/api/update_exception_list_item/update_exception_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { diff --git a/packages/kbn-securitysolution-exceptions-common/tsconfig.json b/packages/kbn-securitysolution-exceptions-common/tsconfig.json index 96bc2e233e73e..a51728703b383 100644 --- a/packages/kbn-securitysolution-exceptions-common/tsconfig.json +++ b/packages/kbn-securitysolution-exceptions-common/tsconfig.json @@ -9,6 +9,7 @@ "kbn_references": [ "@kbn/openapi-common", "@kbn/zod-helpers", - "@kbn/securitysolution-lists-common" + "@kbn/securitysolution-lists-common", + "@kbn/zod" ] } diff --git a/packages/kbn-securitysolution-lists-common/api/create_list/create_list.gen.ts b/packages/kbn-securitysolution-lists-common/api/create_list/create_list.gen.ts index 22c4a1c47bb8a..479f755956f52 100644 --- a/packages/kbn-securitysolution-lists-common/api/create_list/create_list.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/create_list/create_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId, diff --git a/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.gen.ts b/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.gen.ts index b2217f2016422..ebf5229162334 100644 --- a/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/create_list_index/create_list_index.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type CreateListIndexResponse = z.infer; export const CreateListIndexResponse = z.object({ diff --git a/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.gen.ts b/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.gen.ts index 94e1be2171921..da325ddefce0a 100644 --- a/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/create_list_item/create_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListItemId, ListId, ListItemValue, ListItemMetadata } from '../model/list_common.gen'; import { ListItem } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.gen.ts b/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.gen.ts index fe058928eca0b..26eb9f522dbe2 100644 --- a/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/delete_list/delete_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { BooleanFromString } from '@kbn/zod-helpers'; import { ListId } from '../model/list_common.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.gen.ts b/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.gen.ts index 3be609d0b8a92..2b4cbe10ab608 100644 --- a/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/delete_list_index/delete_list_index.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type DeleteListIndexResponse = z.infer; export const DeleteListIndexResponse = z.object({ diff --git a/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.gen.ts b/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.gen.ts index d94b2f18d6158..20eb9b0d2c0d1 100644 --- a/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/delete_list_item/delete_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId } from '../model/list_common.gen'; import { ListItem } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.gen.ts b/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.gen.ts index 0e831e0887bd0..ddc71d79568ae 100644 --- a/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/export_list_items/export_list_items.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId } from '../model/list_common.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.gen.ts b/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.gen.ts index adc9574833813..f3ae2fbcde50e 100644 --- a/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/find_list_items/find_list_items.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { ListId } from '../model/list_common.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.gen.ts b/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.gen.ts index 96fcaa5eefca4..5ec1be6b381ad 100644 --- a/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/find_lists/find_lists.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; import { List } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.gen.ts b/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.gen.ts index 5748e6a78e2c0..8f15c39a3bcb8 100644 --- a/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/import_list_items/import_list_items.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId, ListType } from '../model/list_common.gen'; import { List } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/model/list_common.gen.ts b/packages/kbn-securitysolution-lists-common/api/model/list_common.gen.ts index f4a6a007fed9b..26c79eaaf7bbe 100644 --- a/packages/kbn-securitysolution-lists-common/api/model/list_common.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/model/list_common.gen.ts @@ -15,7 +15,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '@kbn/openapi-common/schemas/primitives.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/model/list_schemas.gen.ts b/packages/kbn-securitysolution-lists-common/api/model/list_schemas.gen.ts index c70278df938ce..1d7ff3678565e 100644 --- a/packages/kbn-securitysolution-lists-common/api/model/list_schemas.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/model/list_schemas.gen.ts @@ -15,7 +15,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId, diff --git a/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.gen.ts b/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.gen.ts index 47eeb87d0f5d4..e4619e5def99b 100644 --- a/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/patch_list/patch_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId, ListName, ListDescription, ListMetadata } from '../model/list_common.gen'; import { List } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.gen.ts b/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.gen.ts index ce29d68bed7a7..0cf7f7594fbe3 100644 --- a/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/patch_list_item/patch_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListItemId, ListItemValue, ListItemMetadata } from '../model/list_common.gen'; import { ListItem } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/read_list/read_list.gen.ts b/packages/kbn-securitysolution-lists-common/api/read_list/read_list.gen.ts index c0f00a8718de1..fb04e41f9ac72 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list/read_list.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/read_list/read_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId } from '../model/list_common.gen'; import { List } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.gen.ts b/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.gen.ts index 3658cb1001bed..813620934baa5 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/read_list_index/read_list_index.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type ReadListIndexResponse = z.infer; export const ReadListIndexResponse = z.object({ diff --git a/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.gen.ts b/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.gen.ts index f981835219c80..e214e492c9cd7 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/read_list_item/read_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId } from '../model/list_common.gen'; import { ListItem } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.gen.ts b/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.gen.ts index 26dd21fed8652..7c3a97665f374 100644 --- a/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/read_list_privileges/read_list_privileges.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type ListPrivileges = z.infer; export const ListPrivileges = z.object({ diff --git a/packages/kbn-securitysolution-lists-common/api/update_list/update_list.gen.ts b/packages/kbn-securitysolution-lists-common/api/update_list/update_list.gen.ts index 833239a7eb82b..362cfc4361fba 100644 --- a/packages/kbn-securitysolution-lists-common/api/update_list/update_list.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/update_list/update_list.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListId, ListName, ListDescription, ListMetadata } from '../model/list_common.gen'; import { List } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.gen.ts b/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.gen.ts index 069c101beaaf4..d8257e739b05f 100644 --- a/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.gen.ts +++ b/packages/kbn-securitysolution-lists-common/api/update_list_item/update_list_item.gen.ts @@ -15,7 +15,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ListItemId, ListItemValue, ListItemMetadata } from '../model/list_common.gen'; import { ListItem } from '../model/list_schemas.gen'; diff --git a/packages/kbn-securitysolution-lists-common/tsconfig.json b/packages/kbn-securitysolution-lists-common/tsconfig.json index b6a14b40363c7..59070e0a49731 100644 --- a/packages/kbn-securitysolution-lists-common/tsconfig.json +++ b/packages/kbn-securitysolution-lists-common/tsconfig.json @@ -6,5 +6,9 @@ "exclude": ["target/**/*"], "extends": "../../tsconfig.base.json", "include": ["**/*.ts"], - "kbn_references": ["@kbn/zod-helpers", "@kbn/openapi-common"] + "kbn_references": [ + "@kbn/zod-helpers", + "@kbn/openapi-common", + "@kbn/zod", + ] } diff --git a/packages/kbn-text-based-editor/src/esql_documentation_sections.tsx b/packages/kbn-text-based-editor/src/esql_documentation_sections.tsx index 05cb7b452c18b..9976078804819 100644 --- a/packages/kbn-text-based-editor/src/esql_documentation_sections.tsx +++ b/packages/kbn-text-based-editor/src/esql_documentation_sections.tsx @@ -2176,6 +2176,39 @@ export const functions = { ROW a=[2, 1] | EVAL min_a = MV_MIN(a) \`\`\` + `, + description: + 'Text is in markdown. Do not translate function names, special characters, or field names like sum(bytes)', + ignoreTag: true, + } + )} + /> + ), + }, + // Do not edit manually... automatically generated by scripts/generate_esql_docs.ts + { + label: i18n.translate( + 'textBasedEditor.query.textBasedLanguagesEditor.documentationESQL.mv_percentile', + { + defaultMessage: 'MV_PERCENTILE', + } + ), + description: ( + + + ### MV_PERCENTILE + Converts a multivalued field into a single valued field containing the value at which a certain percentage of observed values occur. + + \`\`\` + ROW values = [5, 5, 10, 12, 5000] + | EVAL p50 = MV_PERCENTILE(values, 50), median = MV_MEDIAN(values) + \`\`\` `, description: 'Text is in markdown. Do not translate function names, special characters, or field names like sum(bytes)', @@ -3370,6 +3403,7 @@ export const functions = { ROW string = ["1953-09-02T00:00:00.000Z", "1964-06-02T00:00:00.000Z", "1964-06-02 00:00:00"] | EVAL datetime = TO_DATETIME(string) \`\`\` + Note: Note that when converting from nanosecond resolution to millisecond resolution with this function, the nanosecond date is truncated, not rounded. `, description: 'Text is in markdown. Do not translate function names, special characters, or field names like sum(bytes)', diff --git a/packages/kbn-tooling-log/src/__snapshots__/tooling_log.test.ts.snap b/packages/kbn-tooling-log/src/__snapshots__/tooling_log.test.ts.snap index 7742c2bb681d0..de1d9c02f024e 100644 --- a/packages/kbn-tooling-log/src/__snapshots__/tooling_log.test.ts.snap +++ b/packages/kbn-tooling-log/src/__snapshots__/tooling_log.test.ts.snap @@ -9,6 +9,7 @@ Array [ "bar", "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "debug", @@ -24,6 +25,7 @@ Array [ "args": Array [ [Error: error message], ], + "context": undefined, "indent": 0, "source": undefined, "type": "error", @@ -34,6 +36,7 @@ Array [ "args": Array [ "string message", ], + "context": undefined, "indent": 0, "source": undefined, "type": "error", @@ -52,6 +55,7 @@ Array [ "args": Array [ "foo", ], + "context": undefined, "indent": 0, "source": undefined, "type": "debug", @@ -60,6 +64,7 @@ Array [ "args": Array [ "bar", ], + "context": undefined, "indent": 0, "source": undefined, "type": "info", @@ -68,6 +73,7 @@ Array [ "args": Array [ "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "verbose", @@ -81,6 +87,7 @@ Array [ "args": Array [ "foo", ], + "context": undefined, "indent": 0, "source": undefined, "type": "debug", @@ -89,6 +96,7 @@ Array [ "args": Array [ "bar", ], + "context": undefined, "indent": 0, "source": undefined, "type": "info", @@ -97,6 +105,7 @@ Array [ "args": Array [ "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "verbose", @@ -111,6 +120,7 @@ Array [ "args": Array [ "foo", ], + "context": undefined, "indent": 1, "source": undefined, "type": "debug", @@ -121,6 +131,7 @@ Array [ "args": Array [ "bar", ], + "context": undefined, "indent": 3, "source": undefined, "type": "debug", @@ -131,6 +142,7 @@ Array [ "args": Array [ "baz", ], + "context": undefined, "indent": 6, "source": undefined, "type": "debug", @@ -141,6 +153,7 @@ Array [ "args": Array [ "box", ], + "context": undefined, "indent": 4, "source": undefined, "type": "debug", @@ -151,6 +164,7 @@ Array [ "args": Array [ "foo", ], + "context": undefined, "indent": 0, "source": undefined, "type": "debug", @@ -168,6 +182,7 @@ Array [ "bar", "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "info", @@ -185,6 +200,7 @@ Array [ "bar", "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "success", @@ -202,6 +218,7 @@ Array [ "bar", "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "verbose", @@ -219,6 +236,7 @@ Array [ "bar", "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "warning", @@ -236,6 +254,7 @@ Array [ "bar", "baz", ], + "context": undefined, "indent": 0, "source": undefined, "type": "write", diff --git a/packages/kbn-tooling-log/src/message.ts b/packages/kbn-tooling-log/src/message.ts index 082c0e65d48b2..df8485d906337 100644 --- a/packages/kbn-tooling-log/src/message.ts +++ b/packages/kbn-tooling-log/src/message.ts @@ -20,4 +20,6 @@ export interface Message { source?: string; /** args passed to the logging method */ args: any[]; + /** an identifier of the logging entity */ + context?: string; } diff --git a/packages/kbn-tooling-log/src/tooling_log.ts b/packages/kbn-tooling-log/src/tooling_log.ts index bef4320be2356..a3e124892a033 100644 --- a/packages/kbn-tooling-log/src/tooling_log.ts +++ b/packages/kbn-tooling-log/src/tooling_log.ts @@ -25,6 +25,13 @@ export interface ToolingLogOptions { * writers on either log will update the other too. */ parent?: ToolingLog; + + /** + * A string, conveniently the name of the script, + * that will be prepended to log messages. + * Can be useful to identify which entity is emitting the log. + */ + context?: string; } export class ToolingLog implements SomeDevLog { @@ -32,6 +39,7 @@ export class ToolingLog implements SomeDevLog { private writers$: Rx.BehaviorSubject; private readonly written$: Rx.Subject; private readonly type: string | undefined; + private readonly context: string | undefined; constructor(writerConfig?: ToolingLogTextWriterConfig, options?: ToolingLogOptions) { this.indentWidth$ = options?.parent ? options.parent.indentWidth$ : new Rx.BehaviorSubject(0); @@ -45,6 +53,7 @@ export class ToolingLog implements SomeDevLog { this.written$ = options?.parent ? options.parent.written$ : new Rx.Subject(); this.type = options?.type; + this.context = options?.context; } /** @@ -93,31 +102,31 @@ export class ToolingLog implements SomeDevLog { } public verbose(...args: any[]) { - this.sendToWriters('verbose', args); + this.sendToWriters({ type: 'verbose', context: this.context }, args); } public debug(...args: any[]) { - this.sendToWriters('debug', args); + this.sendToWriters({ type: 'debug', context: this.context }, args); } public info(...args: any[]) { - this.sendToWriters('info', args); + this.sendToWriters({ type: 'info', context: this.context }, args); } public success(...args: any[]) { - this.sendToWriters('success', args); + this.sendToWriters({ type: 'success', context: this.context }, args); } public warning(...args: any[]) { - this.sendToWriters('warning', args); + this.sendToWriters({ type: 'warning', context: this.context }, args); } public error(error: Error | string) { - this.sendToWriters('error', [error]); + this.sendToWriters({ type: 'error', context: this.context }, [error]); } public write(...args: any[]) { - this.sendToWriters('write', args); + this.sendToWriters({ type: 'write' }, args); } public getWriters() { @@ -143,7 +152,7 @@ export class ToolingLog implements SomeDevLog { }); } - private sendToWriters(type: MessageTypes, args: any[]) { + private sendToWriters({ type, context }: { type: MessageTypes; context?: string }, args: any[]) { const indent = this.indentWidth$.getValue(); const writers = this.writers$.getValue(); const msg: Message = { @@ -151,6 +160,7 @@ export class ToolingLog implements SomeDevLog { indent, source: this.type, args, + context, }; let written = false; diff --git a/packages/kbn-tooling-log/src/tooling_log_collecting_writer.ts b/packages/kbn-tooling-log/src/tooling_log_collecting_writer.ts index 6f73563f4a2c5..5550d86181446 100644 --- a/packages/kbn-tooling-log/src/tooling_log_collecting_writer.ts +++ b/packages/kbn-tooling-log/src/tooling_log_collecting_writer.ts @@ -26,16 +26,16 @@ export class ToolingLogCollectingWriter extends ToolingLogTextWriter { } /** - * Called by ToolingLog, extends messages with the source if message includes one. + * Called by ToolingLog, extends messages with the source and context if message include it. */ write(msg: Message) { - if (msg.source) { - return super.write({ - ...msg, - args: [`source[${msg.source}]`, ...msg.args], - }); - } + const args = [ + msg.source ? `source[${msg.source}]` : null, + msg.context ? `context[${msg.context}]` : null, + ] + .filter(Boolean) + .concat(msg.args); - return super.write(msg); + return super.write({ ...msg, args }); } } diff --git a/packages/kbn-tooling-log/src/tooling_log_text_writer.ts b/packages/kbn-tooling-log/src/tooling_log_text_writer.ts index 063edd75a14cb..5d097d23de818 100644 --- a/packages/kbn-tooling-log/src/tooling_log_text_writer.ts +++ b/packages/kbn-tooling-log/src/tooling_log_text_writer.ts @@ -103,7 +103,8 @@ export class ToolingLogTextWriter implements Writer { } } - const prefix = has(MSG_PREFIXES, msg.type) ? MSG_PREFIXES[msg.type] : ''; + let prefix = has(MSG_PREFIXES, msg.type) ? MSG_PREFIXES[msg.type] : ''; + prefix = msg.context ? prefix + `[${msg.context}] ` : prefix; ToolingLogTextWriter.write(this.writeTo, prefix, msg); return true; } diff --git a/packages/kbn-zod-helpers/src/array_from_string.test.ts b/packages/kbn-zod-helpers/src/array_from_string.test.ts index ba27fddb0c9b5..af6647563b5e4 100644 --- a/packages/kbn-zod-helpers/src/array_from_string.test.ts +++ b/packages/kbn-zod-helpers/src/array_from_string.test.ts @@ -7,7 +7,7 @@ */ import { ArrayFromString } from './array_from_string'; -import * as z from 'zod'; +import * as z from '@kbn/zod'; describe('ArrayFromString', () => { const itemsSchema = z.string(); diff --git a/packages/kbn-zod-helpers/src/array_from_string.ts b/packages/kbn-zod-helpers/src/array_from_string.ts index 24247e2d14c40..02e2a66e46a2a 100644 --- a/packages/kbn-zod-helpers/src/array_from_string.ts +++ b/packages/kbn-zod-helpers/src/array_from_string.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import * as z from 'zod'; +import * as z from '@kbn/zod'; /** * This is a helper schema to convert comma separated strings to arrays. Useful diff --git a/packages/kbn-zod-helpers/src/boolean_from_string.ts b/packages/kbn-zod-helpers/src/boolean_from_string.ts index d73e77ea1bddc..8ba06106b6093 100644 --- a/packages/kbn-zod-helpers/src/boolean_from_string.ts +++ b/packages/kbn-zod-helpers/src/boolean_from_string.ts @@ -5,7 +5,7 @@ * in compliance with, at your election, the Elastic License 2.0 or the Server * Side Public License, v 1. */ -import * as z from 'zod'; +import * as z from '@kbn/zod'; /** * This is a helper schema to convert a boolean string ("true" or "false") to a diff --git a/packages/kbn-zod-helpers/src/build_route_validation_with_zod.ts b/packages/kbn-zod-helpers/src/build_route_validation_with_zod.ts index a72eb96d3b968..7dae823e4c1b1 100644 --- a/packages/kbn-zod-helpers/src/build_route_validation_with_zod.ts +++ b/packages/kbn-zod-helpers/src/build_route_validation_with_zod.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import type { TypeOf, ZodType } from 'zod'; +import type { TypeOf, ZodType } from '@kbn/zod'; import type { RouteValidationFunction, RouteValidationResultFactory } from '@kbn/core/server'; import { stringifyZodError } from './stringify_zod_error'; diff --git a/packages/kbn-zod-helpers/src/expect_parse_error.ts b/packages/kbn-zod-helpers/src/expect_parse_error.ts index 9e5fcb3fd565c..8840e596af17c 100644 --- a/packages/kbn-zod-helpers/src/expect_parse_error.ts +++ b/packages/kbn-zod-helpers/src/expect_parse_error.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import type { SafeParseError, SafeParseReturnType } from 'zod'; +import type { SafeParseError, SafeParseReturnType } from '@kbn/zod'; export function expectParseError( result: SafeParseReturnType diff --git a/packages/kbn-zod-helpers/src/expect_parse_success.ts b/packages/kbn-zod-helpers/src/expect_parse_success.ts index 8c9e518c27b87..25eff77e08059 100644 --- a/packages/kbn-zod-helpers/src/expect_parse_success.ts +++ b/packages/kbn-zod-helpers/src/expect_parse_success.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import type { SafeParseReturnType, SafeParseSuccess } from 'zod'; +import type { SafeParseReturnType, SafeParseSuccess } from '@kbn/zod'; import { stringifyZodError } from './stringify_zod_error'; export function expectParseSuccess( diff --git a/packages/kbn-zod-helpers/src/is_valid_date_math.ts b/packages/kbn-zod-helpers/src/is_valid_date_math.ts index 8f3bd26f692a7..b55b64484c852 100644 --- a/packages/kbn-zod-helpers/src/is_valid_date_math.ts +++ b/packages/kbn-zod-helpers/src/is_valid_date_math.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import * as z from 'zod'; +import * as z from '@kbn/zod'; import dateMath from '@kbn/datemath'; function validateDateMath(time: string): boolean { diff --git a/packages/kbn-zod-helpers/src/safe_parse_result.ts b/packages/kbn-zod-helpers/src/safe_parse_result.ts index 4e9b701a18faf..aa0f756da7ec0 100644 --- a/packages/kbn-zod-helpers/src/safe_parse_result.ts +++ b/packages/kbn-zod-helpers/src/safe_parse_result.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import * as z from 'zod'; +import * as z from '@kbn/zod'; /** * Safely parse a payload against a schema, returning the output or undefined. diff --git a/packages/kbn-zod-helpers/src/stringify_zod_error.ts b/packages/kbn-zod-helpers/src/stringify_zod_error.ts index 1fbaec8bbac85..708a3ab44f7f2 100644 --- a/packages/kbn-zod-helpers/src/stringify_zod_error.ts +++ b/packages/kbn-zod-helpers/src/stringify_zod_error.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import { ZodError, ZodIssue } from 'zod'; +import { ZodError, ZodIssue } from '@kbn/zod'; const MAX_ERRORS = 5; diff --git a/packages/kbn-zod-helpers/tsconfig.json b/packages/kbn-zod-helpers/tsconfig.json index fbe3b91a89493..9eab856c8c4d2 100644 --- a/packages/kbn-zod-helpers/tsconfig.json +++ b/packages/kbn-zod-helpers/tsconfig.json @@ -6,5 +6,9 @@ "exclude": ["target/**/*"], "extends": "../../tsconfig.base.json", "include": ["**/*.ts"], - "kbn_references": ["@kbn/datemath", "@kbn/core"] + "kbn_references": [ + "@kbn/datemath", + "@kbn/core", + "@kbn/zod", + ] } diff --git a/packages/shared-ux/page/solution_nav/src/solution_nav.scss b/packages/shared-ux/page/solution_nav/src/solution_nav.scss index 3456364009e60..694045f9a8c94 100644 --- a/packages/shared-ux/page/solution_nav/src/solution_nav.scss +++ b/packages/shared-ux/page/solution_nav/src/solution_nav.scss @@ -10,11 +10,11 @@ } .kbnSolutionNav { - @include euiYScroll; - display: flex; flex-direction: column; + @include euiYScroll; + @include euiBreakpoint('m', 'l', 'xl') { width: $solutionNavWidth; padding: $euiSizeL; diff --git a/packages/shared-ux/table_persist/README.md b/packages/shared-ux/table_persist/README.md new file mode 100644 index 0000000000000..08688990ce450 --- /dev/null +++ b/packages/shared-ux/table_persist/README.md @@ -0,0 +1,51 @@ +# @kbn/shared-ux-table-persist + +This package contains the `useEuiTablePersist` hook that can be used in components +containing Eui tables for storing their page size ("rows per page" value) or +the current sort criteria in local storage so that the user's preferences for +these properties can persist. + +The package also exports some table-related constants (e.g. `DEFAULT_PAGE_SIZE_OPTIONS`) +for use across tables in Kibana Stack Management for consistency. + +Usage: + +``` +interface Props { + items: T[]; +} + +const MyTableComponent: FunctionComponent = ({ items }) => { + const columns = [ + { + field: 'name', + name: 'Name', + sortable: true, + }, + ... + ]; + + const { pageSize, sorting, onTableChange } = useEuiTablePersist({ + tableId: 'myTableId', + initialPageSize: 50, + initialSort: { + field: 'name', + direction: 'asc', + }, + }); + + const pagination = { + pageSize, + pageSizeOptions: DEFAULT_PAGE_SIZE_OPTIONS, + }; + + return ( + + ); +}; +``` diff --git a/packages/shared-ux/table_persist/index.ts b/packages/shared-ux/table_persist/index.ts new file mode 100644 index 0000000000000..b92d69bdbc7d5 --- /dev/null +++ b/packages/shared-ux/table_persist/index.ts @@ -0,0 +1,9 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { useEuiTablePersist, DEFAULT_PAGE_SIZE_OPTIONS } from './src'; diff --git a/packages/shared-ux/table_persist/jest.config.js b/packages/shared-ux/table_persist/jest.config.js new file mode 100644 index 0000000000000..34e5873f082de --- /dev/null +++ b/packages/shared-ux/table_persist/jest.config.js @@ -0,0 +1,13 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +module.exports = { + preset: '@kbn/test', + rootDir: '../../..', + roots: ['/packages/shared-ux/table_persist'], +}; diff --git a/packages/shared-ux/table_persist/kibana.jsonc b/packages/shared-ux/table_persist/kibana.jsonc new file mode 100644 index 0000000000000..4a29533855f99 --- /dev/null +++ b/packages/shared-ux/table_persist/kibana.jsonc @@ -0,0 +1,5 @@ +{ + "type": "shared-common", + "id": "@kbn/shared-ux-table-persist", + "owner": "@elastic/appex-sharedux" +} diff --git a/packages/shared-ux/table_persist/package.json b/packages/shared-ux/table_persist/package.json new file mode 100644 index 0000000000000..794822093eeed --- /dev/null +++ b/packages/shared-ux/table_persist/package.json @@ -0,0 +1,6 @@ +{ + "name": "@kbn/shared-ux-table-persist", + "private": true, + "version": "1.0.0", + "license": "SSPL-1.0 OR Elastic License 2.0" +} \ No newline at end of file diff --git a/packages/shared-ux/table_persist/src/constants.ts b/packages/shared-ux/table_persist/src/constants.ts new file mode 100644 index 0000000000000..60421e14edb43 --- /dev/null +++ b/packages/shared-ux/table_persist/src/constants.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 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 or the Server + * Side Public License, v 1. + */ + +export const DEFAULT_PAGE_SIZE_OPTIONS = [25, 50, 100]; +export const DEFAULT_INITIAL_PAGE_SIZE = 50; + +export const LOCAL_STORAGE_PREFIX = 'tablePersist'; diff --git a/packages/shared-ux/table_persist/src/index.ts b/packages/shared-ux/table_persist/src/index.ts new file mode 100644 index 0000000000000..300fbc451e717 --- /dev/null +++ b/packages/shared-ux/table_persist/src/index.ts @@ -0,0 +1,10 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export { useEuiTablePersist } from './use_table_persist'; +export { DEFAULT_PAGE_SIZE_OPTIONS } from './constants'; diff --git a/packages/shared-ux/table_persist/src/storage.ts b/packages/shared-ux/table_persist/src/storage.ts new file mode 100644 index 0000000000000..1f3d416711bd8 --- /dev/null +++ b/packages/shared-ux/table_persist/src/storage.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 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 or the Server + * Side Public License, v 1. + */ + +import { LOCAL_STORAGE_PREFIX } from './constants'; + +type IStorageEngine = typeof window.localStorage; + +class Storage { + engine: IStorageEngine = window.localStorage; + prefix: string = LOCAL_STORAGE_PREFIX; + + encode(val: unknown) { + return JSON.stringify(val); + } + + decode(val: string | null) { + if (typeof val === 'string') { + return JSON.parse(val); + } + } + + encodeKey(key: string) { + return `${this.prefix}:${key}`; + } + + set(key: string, val: unknown) { + this.engine.setItem(this.encodeKey(key), this.encode(val)); + return val; + } + + has(key: string) { + return this.engine.getItem(this.encodeKey(key)) != null; + } + + get(key: string, _default?: T) { + if (this.has(key)) { + return this.decode(this.engine.getItem(this.encodeKey(key))); + } else { + return _default; + } + } +} + +export function createStorage() { + return new Storage(); +} diff --git a/packages/shared-ux/table_persist/src/types.ts b/packages/shared-ux/table_persist/src/types.ts new file mode 100644 index 0000000000000..be6a32459b440 --- /dev/null +++ b/packages/shared-ux/table_persist/src/types.ts @@ -0,0 +1,17 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +export interface PropertySort { + field: keyof T; + direction: 'asc' | 'desc'; +} + +export interface PersistData { + pageSize?: number; + sort?: PropertySort; +} diff --git a/packages/shared-ux/table_persist/src/use_table_persist.test.ts b/packages/shared-ux/table_persist/src/use_table_persist.test.ts new file mode 100644 index 0000000000000..7626a3a2d518d --- /dev/null +++ b/packages/shared-ux/table_persist/src/use_table_persist.test.ts @@ -0,0 +1,130 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { Criteria } from '@elastic/eui'; +import { renderHook, act } from '@testing-library/react-hooks'; +import { useEuiTablePersist } from './use_table_persist'; +import { createStorage } from './storage'; // Mock this if it's external + +jest.mock('./storage'); + +describe('useEuiTablePersist', () => { + const mockStorage = { + get: jest.fn(), + set: jest.fn(), + }; + + beforeEach(() => { + (createStorage as jest.Mock).mockReturnValue(mockStorage); + mockStorage.get.mockClear(); + mockStorage.set.mockClear(); + }); + + it('should initialize with default values if local storage is empty', () => { + mockStorage.get.mockReturnValueOnce(undefined); + + const { result } = renderHook(() => useEuiTablePersist({ tableId: 'testTable' })); + + expect(result.current.pageSize).toBe(50); // Default initialPageSize + expect(result.current.sorting).toBe(true); // Allow sorting by default + expect(mockStorage.get).toHaveBeenCalledWith('testTable', undefined); + }); + + it('should initialize with values from local storage', () => { + const persistedData = { pageSize: 25, sort: { field: 'name', direction: 'asc' } }; + mockStorage.get.mockReturnValueOnce(persistedData); + + const { result } = renderHook(() => useEuiTablePersist({ tableId: 'testTable' })); + + expect(result.current.pageSize).toBe(25); + expect(result.current.sorting).toEqual({ sort: { field: 'name', direction: 'asc' } }); + }); + + it('should update pageSize and sort in state and local storage when onTableChange is called', () => { + const persistedData = { pageSize: 25, sort: { field: 'name', direction: 'asc' } }; + mockStorage.get.mockReturnValueOnce(persistedData); + + const { result } = renderHook(() => useEuiTablePersist({ tableId: 'testTable' })); + + const nextCriteria = { + page: { size: 100 }, + sort: { field: 'age', direction: 'desc' }, + }; + + act(() => { + result.current.onTableChange(nextCriteria as Criteria); + }); + + expect(result.current.pageSize).toBe(100); + expect(result.current.sorting).toEqual({ sort: { field: 'age', direction: 'desc' } }); + expect(mockStorage.set).toHaveBeenCalledWith('testTable', { + pageSize: 100, + sort: { field: 'age', direction: 'desc' }, + }); + }); + + it('should call customOnTableChange if provided', () => { + const customOnTableChange = jest.fn(); + + const { result } = renderHook(() => + useEuiTablePersist({ + tableId: 'testTable', + customOnTableChange, + }) + ); + + const nextCriteria = { + page: { size: 20 }, + sort: { field: 'age', direction: 'desc' }, + }; + + act(() => { + result.current.onTableChange(nextCriteria as Criteria); + }); + + expect(customOnTableChange).toHaveBeenCalledWith(nextCriteria); + }); + + it('should maintain sort and pageSize if new values are not provided on change', () => { + const persistedData = { pageSize: 25, sort: { field: 'name', direction: 'asc' } }; + mockStorage.get.mockReturnValueOnce(persistedData); + + const { result } = renderHook(() => useEuiTablePersist({ tableId: 'testTable' })); + + act(() => { + result.current.onTableChange({}); // Empty change + }); + + expect(result.current.pageSize).toBe(25); + expect(result.current.sorting).toEqual({ sort: { field: 'name', direction: 'asc' } }); + expect(mockStorage.set).not.toHaveBeenCalled(); + }); + + it('should remove sort in state and local storage if field is an empty string', () => { + const persistedData = { pageSize: 25, sort: { field: 'name', direction: 'asc' } }; + mockStorage.get.mockReturnValueOnce(persistedData); + + const { result } = renderHook(() => useEuiTablePersist({ tableId: 'testTable' })); + + const nextCriteria = { + page: { size: 100 }, + sort: { field: '', direction: 'asc' }, + }; + + act(() => { + result.current.onTableChange(nextCriteria as Criteria); + }); + + expect(result.current.pageSize).toBe(100); + expect(result.current.sorting).toEqual(true); + expect(mockStorage.set).toHaveBeenCalledWith('testTable', { + pageSize: 100, + sort: undefined, + }); + }); +}); diff --git a/packages/shared-ux/table_persist/src/use_table_persist.ts b/packages/shared-ux/table_persist/src/use_table_persist.ts new file mode 100644 index 0000000000000..031a072420f5d --- /dev/null +++ b/packages/shared-ux/table_persist/src/use_table_persist.ts @@ -0,0 +1,94 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { useState, useCallback } from 'react'; +import { Criteria } from '@elastic/eui'; +import { DEFAULT_INITIAL_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS } from './constants'; +import { createStorage } from './storage'; +import { validatePersistData } from './validate_persist_data'; +import { PersistData, PropertySort } from './types'; + +export interface EuiTablePersistProps { + /** A unique id that will be included in the local storage variable for this table. */ + tableId: string; + /** (Optional) Specifies a custom onTableChange handler. */ + customOnTableChange?: (change: Criteria) => void; + /** (Optional) Specifies a custom initial table sorting. */ + initialSort?: PropertySort; + /** (Optional) Specifies a custom initial page size for the table. Defaults to 50. */ + initialPageSize?: number; + /** (Optional) Specifies custom page size options for the table. + * Defaults to {@link DEFAULT_PAGE_SIZE_OPTIONS} */ + pageSizeOptions?: number[]; +} + +/** + * A hook that stores and retrieves from local storage the table page size and sort criteria. + * Returns the persisting page size and sort and the onTableChange handler that should be passed + * as props to an Eui table component. + */ +export const useEuiTablePersist = ({ + tableId, + customOnTableChange, + initialSort, + initialPageSize, + pageSizeOptions, +}: EuiTablePersistProps) => { + const storage = createStorage(); + const storedPersistData = storage.get(tableId, undefined); + + const { pageSize: storagePageSize, sort: storageSort }: PersistData = validatePersistData( + storedPersistData, + pageSizeOptions ?? DEFAULT_PAGE_SIZE_OPTIONS + ); + + const [pageSize, setPageSize] = useState( + storagePageSize ?? initialPageSize ?? DEFAULT_INITIAL_PAGE_SIZE + ); + const [sort, setSort] = useState | undefined>(storageSort ?? initialSort); + const sorting = sort ? { sort } : true; // If sort is undefined, return true to allow sorting + + const onTableChange = useCallback( + (nextValues: Criteria) => { + if (customOnTableChange) { + customOnTableChange(nextValues); + } + + let nextSort: PropertySort | undefined; + const isSortRemoved = nextValues.sort?.field?.toString() === ''; // `field` is an empty string when sort is removed from this field + if (nextValues.sort?.field && nextValues.sort?.direction) { + // Both field and direction are needed for a valid sort criteria + nextSort = nextValues.sort; + } + + if (nextValues.sort?.field || nextValues.sort?.direction) { + setSort(nextSort); + } + + const nextPageSize = nextValues.page?.size; + if (nextPageSize) { + setPageSize(nextPageSize); + } + + if ( + (nextPageSize && nextPageSize !== storagePageSize) || + (nextSort && nextSort !== storageSort) || + isSortRemoved + ) { + const nextPersistData: PersistData = { + pageSize: nextPageSize, + sort: nextSort, + }; + storage.set(tableId, nextPersistData); + } + }, + [customOnTableChange, storage, storagePageSize, storageSort, tableId] + ); + + return { pageSize, sorting, onTableChange }; +}; diff --git a/packages/shared-ux/table_persist/src/validate_persist_data.ts b/packages/shared-ux/table_persist/src/validate_persist_data.ts new file mode 100644 index 0000000000000..ee98125022365 --- /dev/null +++ b/packages/shared-ux/table_persist/src/validate_persist_data.ts @@ -0,0 +1,36 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +/** + * A utility function used to validate a table persist data. + * If any of the properties is not valid, it is returned with undefined value. + * + * @param data The data to be validated + * @param pageSizeOptions The table page size options that are available + */ +export const validatePersistData = (data: any, pageSizeOptions: number[]) => { + const pageSize = data?.pageSize; + const sort = data?.sort; + + let validatedPageSize = pageSize; + let validatedSort = sort; + + if (pageSize && !pageSizeOptions.includes(pageSize)) { + validatedPageSize = undefined; + } + + if (sort) { + const field = sort.field; + const direction = sort.direction; + if (typeof field !== 'string' || !['asc', 'desc'].includes(direction)) { + validatedSort = undefined; + } + } + + return { pageSize: validatedPageSize, sort: validatedSort }; +}; diff --git a/packages/shared-ux/table_persist/src/validate_persist_date.test.ts b/packages/shared-ux/table_persist/src/validate_persist_date.test.ts new file mode 100644 index 0000000000000..00c779709f9af --- /dev/null +++ b/packages/shared-ux/table_persist/src/validate_persist_date.test.ts @@ -0,0 +1,140 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { validatePersistData } from './validate_persist_data'; + +describe('validatePersistData', () => { + const TEST_PAGE_SIZE_OPTIONS = [50, 100]; + + const TEST_VALID_DATA = { + pageSize: 50, + sort: { + field: 'name', + direction: 'asc', + }, + }; + + it('returns valid data', () => { + expect(validatePersistData(TEST_VALID_DATA, TEST_PAGE_SIZE_OPTIONS)).toEqual(TEST_VALID_DATA); + }); + + it('returns valid data when pageSize is undefined', () => { + const data = { + sort: { + field: 'name', + direction: 'asc', + }, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual(data); + }); + + it('returns valid data when sort is undefined', () => { + const data = { + pageSize: 100, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual(data); + }); + + it('returns valid data when provided data is not object', () => { + expect(validatePersistData('test', TEST_PAGE_SIZE_OPTIONS)).toEqual({}); + }); + + it('returns valid data when provided data contains invalid properties', () => { + const data = { + foo: 'bar', + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({}); + }); + + it('returns valid data when provided data is undefined', () => { + expect(validatePersistData(undefined, TEST_PAGE_SIZE_OPTIONS)).toEqual({}); + }); + + describe('pageSize validation', () => { + it("does not accept pageSize if it's not of type number", () => { + const data = { + pageSize: 'test', + sort: TEST_VALID_DATA.sort, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({ + sort: TEST_VALID_DATA.sort, + }); + }); + + it("does not accept pageSize if it's not one of the available options", () => { + const data = { + pageSize: 3, + sort: TEST_VALID_DATA.sort, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({ + sort: TEST_VALID_DATA.sort, + }); + }); + }); + + describe('sort validation', () => { + it("does not accept sort if it doesn't contain direction property", () => { + const data = { + pageSize: TEST_VALID_DATA.pageSize, + sort: { + field: 'name', + }, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({ + pageSize: TEST_VALID_DATA.pageSize, + }); + }); + + it("does not accept sort if it doesn't contain field property", () => { + const data = { + pageSize: TEST_VALID_DATA.pageSize, + sort: { + direction: 'asc', + }, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({ + pageSize: TEST_VALID_DATA.pageSize, + }); + }); + + it('does not accept sort if its field property is not of type string, number, or symbol', () => { + const data = { + pageSize: TEST_VALID_DATA.pageSize, + sort: { + field: false, + direction: 'asc', + }, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({ + pageSize: TEST_VALID_DATA.pageSize, + }); + }); + + it('does not accept sort if its direction property is not `asc` or `desc`', () => { + const data = { + pageSize: TEST_VALID_DATA.pageSize, + sort: { + field: 'name', + direction: 'test', + }, + }; + + expect(validatePersistData(data, TEST_PAGE_SIZE_OPTIONS)).toEqual({ + pageSize: TEST_VALID_DATA.pageSize, + }); + }); + }); +}); diff --git a/packages/shared-ux/table_persist/tsconfig.json b/packages/shared-ux/table_persist/tsconfig.json new file mode 100644 index 0000000000000..60e639fea37e0 --- /dev/null +++ b/packages/shared-ux/table_persist/tsconfig.json @@ -0,0 +1,20 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "target/types", + "types": [ + "jest", + "node", + "react" + ] + }, + "include": [ + "**/*.ts", + "**/*.tsx" + ], + "kbn_references": [ + ], + "exclude": [ + "target/**/*", + ] +} diff --git a/renovate.json b/renovate.json index 0d9b15c7cf067..31f8630a3ad87 100644 --- a/renovate.json +++ b/renovate.json @@ -85,6 +85,14 @@ "labels": ["release_note:skip", "Team:Core", "backport:skip"], "enabled": true }, + { + "groupName": "@elastic/ebt", + "matchDepNames": ["@elastic/ebt"], + "reviewers": ["team:kibana-core"], + "matchBaseBranches": ["main"], + "labels": ["release_note:skip", "Team:Core", "backport:skip"], + "enabled": true + }, { "groupName": "ansi-regex", "matchDepNames": ["ansi-regex"], @@ -437,15 +445,6 @@ "minimumReleaseAge": "7 days", "enabled": true }, - { - "groupName": "machine learning modules", - "matchDepNames": ["apidoc-markdown"], - "reviewers": ["team:ml-ui"], - "matchBaseBranches": ["main"], - "labels": ["Team:ML", "release_note:skip", "backport:all-open"], - "minimumReleaseAge": "7 days", - "enabled": true - }, { "groupName": "Kibana ES|QL Team", "matchDepNames": ["recast"], diff --git a/scripts/enabled_ftr_configs.js b/scripts/enabled_ftr_configs.js index ccece9f370115..942d9b70d3042 100644 --- a/scripts/enabled_ftr_configs.js +++ b/scripts/enabled_ftr_configs.js @@ -19,7 +19,7 @@ var allManifestPaths = Object.values(manifestsSource).flat(); try { for (var manifestRelPath of allManifestPaths) { - var manifest = yaml.load(fs.readFileSync(manifestRelPath, 'utf8')); + var manifest = yaml.safeLoad(fs.readFileSync(manifestRelPath, 'utf8')); if (manifest.enabled) { manifest.enabled.forEach(function (x) { console.log(x); diff --git a/scripts/quick_checks.js b/scripts/quick_checks.js new file mode 100644 index 0000000000000..db6a3b1daeef4 --- /dev/null +++ b/scripts/quick_checks.js @@ -0,0 +1,10 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +require('../src/setup_node_env'); +require('../src/dev/run_quick_checks'); 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 ebd62f83798d7..7a37b6c86065f 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 @@ -8,7 +8,7 @@ import { readFileSync, writeFileSync } from 'fs'; import { resolve } from 'path'; -import { dump } from 'js-yaml'; +import { safeDump } from 'js-yaml'; import { Build, Config, mkdirp } from '../../lib'; export async function createOSPackageKibanaYML(config: Config, build: Build) { @@ -24,7 +24,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, - dump({ + safeDump({ logging: { appenders: { file: { diff --git a/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/hardening_manifest.yaml b/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/hardening_manifest.yaml index 8d82b411961a4..4dc8ff9868dc1 100644 --- a/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/hardening_manifest.yaml +++ b/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/hardening_manifest.yaml @@ -80,3 +80,7 @@ maintainers: email: sid.mantri@elastic.co name: Sid Mantri username: sidmantri + - cht_member: false + email: elena.shostak@elastic.co + name: Elena Shostak + username: elena.shostak diff --git a/src/dev/eslint/types.eslint.config.template.js b/src/dev/eslint/types.eslint.config.template.js index db17de6f08e3e..2d7cf7f667f3d 100644 --- a/src/dev/eslint/types.eslint.config.template.js +++ b/src/dev/eslint/types.eslint.config.template.js @@ -26,7 +26,7 @@ module.exports = { }, overrides: [ { - files: ['server/**/*'], + files: ['server/**/*', '*functional*/**/*', '*api_integration*/**/*'], rules: { // Let's focus on server-side errors first to avoid server crashes. // We'll tackle /public eventually. diff --git a/src/dev/run_quick_checks.ts b/src/dev/run_quick_checks.ts new file mode 100644 index 0000000000000..cdb59bdce3cb2 --- /dev/null +++ b/src/dev/run_quick_checks.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 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 or the Server + * Side Public License, v 1. + */ + +import { exec } from 'child_process'; +import { availableParallelism } from 'os'; +import { join, isAbsolute } from 'path'; +import { readdirSync, readFileSync } from 'fs'; + +import { run, RunOptions } from '@kbn/dev-cli-runner'; +import { REPO_ROOT } from '@kbn/repo-info'; +import { ToolingLog } from '@kbn/tooling-log'; + +const MAX_PARALLELISM = availableParallelism(); +const buildkiteQuickchecksFolder = join('.buildkite', 'scripts', 'steps', 'checks'); +const quickChecksList = join(buildkiteQuickchecksFolder, 'quick_checks.txt'); +const sleep = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms)); + +interface CheckResult { + success: boolean; + script: string; + output: string; + durationMs: number; +} + +const scriptOptions: RunOptions = { + description: ` + Runs sanity-testing quick-checks in parallel. + - arguments (--file, --dir, --checks) are exclusive - only one can be used at a time. + `, + flags: { + string: ['dir', 'checks', 'file'], + help: ` + --file Run all checks from a given file. (default='${quickChecksList}') + --dir Run all checks in a given directory. + --checks Runs all scripts given in this parameter. (comma or newline delimited) + `, + }, + log: { + context: 'quick-checks', + defaultLevel: process.env.CI === 'true' ? 'debug' : 'info', + }, +}; + +let logger: ToolingLog; +void run(async ({ log, flagsReader }) => { + logger = log; + + const scriptsToRun = collectScriptsToRun({ + targetFile: flagsReader.string('file'), + targetDir: flagsReader.string('dir'), + checks: flagsReader.string('checks'), + }); + + logger.write( + `--- Running ${scriptsToRun.length} checks, with parallelism ${MAX_PARALLELISM}...`, + scriptsToRun + ); + const startTime = Date.now(); + const results = await runAllChecks(scriptsToRun); + + logger.write('--- All checks finished.'); + printResults(startTime, results); + + const failedChecks = results.filter((check) => !check.success); + if (failedChecks.length > 0) { + logger.write(`--- ${failedChecks.length} quick check(s) failed. ❌`); + logger.write(`See above for details.`); + process.exitCode = 1; + } else { + logger.write('--- All checks passed. ✅'); + return results; + } +}, scriptOptions); + +function collectScriptsToRun(inputOptions: { + targetFile: string | undefined; + targetDir: string | undefined; + checks: string | undefined; +}) { + const { targetFile, targetDir, checks } = inputOptions; + if ([targetFile, targetDir, checks].filter(Boolean).length > 1) { + throw new Error('Only one of --file, --dir, or --checks can be used at a time.'); + } + + if (targetDir) { + const targetDirAbsolute = isAbsolute(targetDir) ? targetDir : join(REPO_ROOT, targetDir); + return readdirSync(targetDirAbsolute).map((file) => join(targetDir, file)); + } else if (checks) { + return checks + .trim() + .split(/[,\n]/) + .map((script) => script.trim()); + } else { + const targetFileWithDefault = targetFile || quickChecksList; + const targetFileAbsolute = isAbsolute(targetFileWithDefault) + ? targetFileWithDefault + : join(REPO_ROOT, targetFileWithDefault); + + return readFileSync(targetFileAbsolute, 'utf-8') + .trim() + .split('\n') + .map((line) => line.trim()); + } +} + +async function runAllChecks(scriptsToRun: string[]) { + const checksRunning: Array> = []; + const checksFinished: CheckResult[] = []; + + while (scriptsToRun.length > 0 || checksRunning.length > 0) { + while (scriptsToRun.length > 0 && checksRunning.length < MAX_PARALLELISM) { + const script = scriptsToRun.shift(); + if (!script) { + continue; + } + + const check = runCheckAsync(script); + checksRunning.push(check); + check.then((result) => { + checksRunning.splice(checksRunning.indexOf(check), 1); + checksFinished.push(result); + }); + } + + await sleep(1000); + } + + return checksFinished; +} + +async function runCheckAsync(script: string): Promise { + logger.info(`Starting check: ${script}`); + const startTime = Date.now(); + + return new Promise((resolve) => { + const scriptProcess = exec(script); + let output = ''; + const appendToOutput = (data: string | Buffer) => (output += data); + + scriptProcess.stdout?.on('data', appendToOutput); + scriptProcess.stderr?.on('data', appendToOutput); + + scriptProcess.on('exit', (code) => { + const result: CheckResult = { + success: code === 0, + script, + output, + durationMs: Date.now() - startTime, + }; + if (code === 0) { + logger.info(`Passed check: ${script} in ${humanizeTime(result.durationMs)}`); + } else { + logger.warning(`Failed check: ${script} in ${humanizeTime(result.durationMs)}`); + } + + resolve(result); + }); + }); +} + +function printResults(startTimestamp: number, results: CheckResult[]) { + const totalDuration = results.reduce((acc, result) => acc + result.durationMs, 0); + const total = humanizeTime(totalDuration); + const effective = humanizeTime(Date.now() - startTimestamp); + logger.info(`- Total time: ${total}, effective: ${effective}`); + + results.forEach((result) => { + logger.write( + `--- ${result.success ? '✅' : '❌'} ${result.script}: ${humanizeTime(result.durationMs)}` + ); + if (result.success) { + logger.debug(result.output); + } else { + logger.warning(result.output); + } + }); +} + +function humanizeTime(ms: number) { + if (ms < 1000) { + return `${ms}ms`; + } + + const minutes = Math.floor(ms / 1000 / 60); + const seconds = Math.floor((ms - minutes * 60 * 1000) / 1000); + if (minutes === 0) { + return `${seconds}s`; + } else { + return `${minutes}m ${seconds}s`; + } +} diff --git a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx index 3687113d9aee0..7311adee7a202 100644 --- a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx +++ b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.test.tsx @@ -428,14 +428,12 @@ describe('MetricVisComponent', function () { const [[visConfig]] = component.find(Metric).props().data!; - expect(visConfig!.value).toMatchInlineSnapshot( - ` + expect(visConfig!.value).toMatchInlineSnapshot(` Array [ "text-28.984375", "text-100", ] - ` - ); + `); }); it('should display multi-values numeric values formatted and without quotes', () => { @@ -451,14 +449,24 @@ describe('MetricVisComponent', function () { const [[visConfig]] = component.find(Metric).props().data!; - expect(visConfig!.value).toMatchInlineSnapshot( - ` + expect(visConfig!.value).toMatchInlineSnapshot(` Array [ "number-28.984375", "number-100", ] - ` - ); + `); + }); + + it('should display an empty tile if no data is provided', () => { + const newTable = { + ...table, + rows: [], + }; + const component = shallow(); + + const [[visConfig]] = component.find(Metric).props().data!; + + expect(visConfig!.value).toMatchInlineSnapshot(`NaN`); }); }); diff --git a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx index 4ed15f5f72554..d0f6b6f3399e6 100644 --- a/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx +++ b/src/plugins/chart_expressions/expression_metric/public/components/metric_vis.tsx @@ -163,7 +163,7 @@ export const MetricVis = ({ ); const onWillRender = useCallback(() => { - const maxTileSideLength = grid.current.length * grid.current[0].length > 1 ? 200 : 300; + const maxTileSideLength = grid.current.length * grid.current[0]?.length > 1 ? 200 : 300; const event: ChartSizeEvent = { name: 'chartSize', data: { @@ -197,8 +197,15 @@ export const MetricVis = ({ ? getColumnByAccessor(config.dimensions.max, data.columns)?.id : undefined; + // For a sigle tile configuration, either no breakdown or with a collapse by, provide + // a fallback in case of missing data. Make sure to provide an exact "null" value to render a N/A metric. + // For reference, undefined will render as - instead of N/A and it is used in a breakdown scenario + const firstRowForNonBreakdown = ( + data.rows.length ? data.rows : [{ [primaryMetricColumn.id]: null }] + ).slice(0, 1); + const metricConfigs: MetricSpec['data'][number] = ( - breakdownByColumn ? data.rows : data.rows.slice(0, 1) + breakdownByColumn ? data.rows : firstRowForNonBreakdown ).map((row, rowIdx) => { const value: number | string = row[primaryMetricColumn.id] !== null ? row[primaryMetricColumn.id] : NaN; diff --git a/src/plugins/controls/public/react_controls/control_group/components/control_group_editor.test.tsx b/src/plugins/controls/public/react_controls/control_group/components/control_group_editor.test.tsx new file mode 100644 index 0000000000000..99feed42d0857 --- /dev/null +++ b/src/plugins/controls/public/react_controls/control_group/components/control_group_editor.test.tsx @@ -0,0 +1,50 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import React from 'react'; +import { BehaviorSubject } from 'rxjs'; +import { render } from '@testing-library/react'; +import { ControlGroupEditor } from './control_group_editor'; +import { ControlGroupApi, ControlStyle, ParentIgnoreSettings } from '../../..'; +import { ControlGroupChainingSystem, DEFAULT_CONTROL_STYLE } from '../../../../common'; +import { DefaultControlApi } from '../../controls/types'; + +describe('render', () => { + const children$ = new BehaviorSubject<{ [key: string]: DefaultControlApi }>({}); + const props = { + api: { + children$, + } as unknown as ControlGroupApi, + onCancel: () => {}, + onSave: () => {}, + onDeleteAll: () => {}, + stateManager: { + chainingSystem: new BehaviorSubject('HIERARCHICAL'), + labelPosition: new BehaviorSubject(DEFAULT_CONTROL_STYLE), + autoApplySelections: new BehaviorSubject(true), + ignoreParentSettings: new BehaviorSubject(undefined), + }, + }; + + beforeEach(() => { + children$.next({}); + }); + + test('should not display delete all controls button when there are no controls', () => { + const editor = render(); + expect(editor.queryByTestId('delete-all-controls-button')).not.toBeInTheDocument(); + }); + + test('should display delete all controls button when there are controls', () => { + children$.next({ + alpha: {} as unknown as DefaultControlApi, + }); + const editor = render(); + expect(editor.queryByTestId('delete-all-controls-button')).toBeInTheDocument(); + }); +}); diff --git a/src/plugins/controls/public/react_controls/control_group/control_group_editor.tsx b/src/plugins/controls/public/react_controls/control_group/components/control_group_editor.tsx similarity index 95% rename from src/plugins/controls/public/react_controls/control_group/control_group_editor.tsx rename to src/plugins/controls/public/react_controls/control_group/components/control_group_editor.tsx index 9c8ca5b52b0ae..a65c8c1ac5bba 100644 --- a/src/plugins/controls/public/react_controls/control_group/control_group_editor.tsx +++ b/src/plugins/controls/public/react_controls/control_group/components/control_group_editor.tsx @@ -27,11 +27,11 @@ import { } from '@elastic/eui'; import { css } from '@emotion/react'; import { useBatchedPublishingSubjects } from '@kbn/presentation-publishing'; -import { ControlStyle, ParentIgnoreSettings } from '../..'; +import { ControlStyle, ParentIgnoreSettings } from '../../..'; -import { ControlStateManager } from '../controls/types'; -import { ControlGroupStrings } from './control_group_strings'; -import { ControlGroupApi, ControlGroupEditorState } from './types'; +import { ControlStateManager } from '../../controls/types'; +import { ControlGroupStrings } from '../control_group_strings'; +import { ControlGroupApi, ControlGroupEditorState } from '../types'; const CONTROL_LAYOUT_OPTIONS = [ { @@ -46,7 +46,7 @@ const CONTROL_LAYOUT_OPTIONS = [ }, ]; -interface EditControlGroupProps { +interface Props { onCancel: () => void; onSave: () => void; onDeleteAll: () => void; @@ -54,13 +54,7 @@ interface EditControlGroupProps { api: ControlGroupApi; // controls must always have a parent API } -export const ControlGroupEditor = ({ - onCancel, - onSave, - onDeleteAll, - stateManager, - api, -}: EditControlGroupProps) => { +export const ControlGroupEditor = ({ onCancel, onSave, onDeleteAll, stateManager, api }: Props) => { const [ children, selectedLabelPosition, diff --git a/src/plugins/controls/public/react_controls/control_group/components/control_panel.test.tsx b/src/plugins/controls/public/react_controls/control_group/components/control_panel.test.tsx new file mode 100644 index 0000000000000..34d3f344b1a81 --- /dev/null +++ b/src/plugins/controls/public/react_controls/control_group/components/control_panel.test.tsx @@ -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 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 or the Server + * Side Public License, v 1. + */ + +import React, { useImperativeHandle } from 'react'; +import { BehaviorSubject } from 'rxjs'; +import { render, waitFor } from '@testing-library/react'; +import { ControlPanel } from './control_panel'; +import { registry as presentationUtilServicesRegistry } from '@kbn/presentation-util-plugin/public/services/plugin_services.story'; +import { pluginServices as presentationUtilPluginServices } from '@kbn/presentation-util-plugin/public/services'; +import { ControlStyle, ControlWidth } from '../../..'; + +describe('render', () => { + let mockApi = {}; + const Component = React.forwardRef((_, ref) => { + // expose the api into the imperative handle + useImperativeHandle(ref, () => mockApi, []); + + return

; + }) as any; + + beforeAll(() => { + presentationUtilServicesRegistry.start({}); + presentationUtilPluginServices.setRegistry(presentationUtilServicesRegistry); + presentationUtilPluginServices.getServices().uiActions.getTriggerCompatibleActions = jest + .fn() + .mockImplementation(() => { + return [ + { + isCompatible: jest.fn().mockResolvedValue(true), + id: 'testAction', + MenuItem: () =>
test1
, + }, + ]; + }); + }); + + beforeEach(() => { + mockApi = {}; + }); + + describe('control width', () => { + test('defaults to medium and grow enabled', async () => { + const controlPanel = render(); + await waitFor(() => { + const controlFrame = controlPanel.getByTestId('control-frame'); + expect(controlFrame.getAttribute('class')).toContain('controlFrameWrapper--medium'); + expect(controlFrame.getAttribute('class')).toContain('controlFrameWrapper--grow'); + }); + }); + + test('should use small class when using small width', async () => { + mockApi = { + uuid: 'control1', + width: new BehaviorSubject('small'), + }; + const controlPanel = render(); + await waitFor(() => { + const controlFrame = controlPanel.getByTestId('control-frame'); + expect(controlFrame.getAttribute('class')).toContain('controlFrameWrapper--small'); + }); + }); + }); + + describe('label position', () => { + test('should use one line layout class when using one line layout', async () => { + mockApi = { + uuid: 'control1', + parentApi: { + labelPosition: new BehaviorSubject('oneLine'), + }, + }; + const controlPanel = render(); + await waitFor(() => { + const floatingActions = controlPanel.getByTestId( + 'presentationUtil__floatingActions__control1' + ); + expect(floatingActions.getAttribute('class')).toContain( + 'controlFrameFloatingActions--oneLine' + ); + }); + }); + + test('should use two line layout class when using two line layout', async () => { + mockApi = { + uuid: 'control1', + parentApi: { + labelPosition: new BehaviorSubject('twoLine'), + }, + }; + const controlPanel = render(); + await waitFor(() => { + const floatingActions = controlPanel.getByTestId( + 'presentationUtil__floatingActions__control1' + ); + expect(floatingActions.getAttribute('class')).toContain( + 'controlFrameFloatingActions--twoLine' + ); + }); + }); + }); +}); diff --git a/src/plugins/controls/public/react_controls/control_group/components/control_panel.tsx b/src/plugins/controls/public/react_controls/control_group/components/control_panel.tsx index b83b0b464b5c5..9ed24904f25cd 100644 --- a/src/plugins/controls/public/react_controls/control_group/components/control_panel.tsx +++ b/src/plugins/controls/public/react_controls/control_group/components/control_panel.tsx @@ -27,7 +27,7 @@ import { useBatchedOptionalPublishingSubjects, } from '@kbn/presentation-publishing'; import { FloatingActions } from '@kbn/presentation-util-plugin/public'; -import { DEFAULT_CONTROL_WIDTH } from '../../../../common'; +import { DEFAULT_CONTROL_GROW, DEFAULT_CONTROL_WIDTH } from '../../../../common'; import { ControlPanelProps, DefaultControlApi } from '../../controls/types'; import { ControlError } from './control_error'; @@ -121,17 +121,18 @@ export const ControlPanel = { const { initialChildControlState, - defaultControlGrow, - defaultControlWidth, labelPosition: initialLabelPosition, chainingSystem, autoApplySelections, @@ -89,12 +84,6 @@ export const getControlGroupEmbeddableFactory = (services: { const ignoreParentSettings$ = new BehaviorSubject( ignoreParentSettings ); - const grow = new BehaviorSubject( - defaultControlGrow === undefined ? DEFAULT_CONTROL_GROW : defaultControlGrow - ); - const width = new BehaviorSubject( - defaultControlWidth ?? DEFAULT_CONTROL_WIDTH - ); const labelPosition$ = new BehaviorSubject( // TODO: Rename `ControlStyle` initialLabelPosition ?? DEFAULT_CONTROL_STYLE // TODO: Rename `DEFAULT_CONTROL_STYLE` ); @@ -175,13 +164,9 @@ export const getControlGroupEmbeddableFactory = (services: { controlInputTransform: (state) => state, }; openDataControlEditor({ - initialState: { - grow: api.grow.getValue(), - width: api.width.getValue(), - dataViewId: controlsManager.api.lastUsedDataViewId$.value, - }, + initialState: controlsManager.getNewControlState(), onSave: ({ type: controlType, state: initialState }) => { - api.addNewPanel({ + controlsManager.api.addNewPanel({ panelType: controlType, initialState: controlInputTransform!( initialState as Partial, @@ -206,8 +191,6 @@ export const getControlGroupEmbeddableFactory = (services: { references, }; }, - grow, - width, dataViews, labelPosition: labelPosition$, saveNotification$: apiHasSaveNotification(parentApi) diff --git a/src/plugins/controls/public/react_controls/control_group/init_controls_manager.test.ts b/src/plugins/controls/public/react_controls/control_group/init_controls_manager.test.ts index 76899c3d9d0b4..3e381123ecd9a 100644 --- a/src/plugins/controls/public/react_controls/control_group/init_controls_manager.test.ts +++ b/src/plugins/controls/public/react_controls/control_group/init_controls_manager.test.ts @@ -6,8 +6,10 @@ * Side Public License, v 1. */ +import { DefaultDataControlState } from '../controls/data_controls/types'; import { DefaultControlApi } from '../controls/types'; import { initControlsManager, getLastUsedDataViewId } from './init_controls_manager'; +import { ControlPanelState } from './types'; jest.mock('uuid', () => ({ v4: jest.fn().mockReturnValue('delta'), @@ -187,3 +189,51 @@ describe('getLastUsedDataViewId', () => { expect(dataViewId).toBeUndefined(); }); }); + +describe('getNewControlState', () => { + test('should contain defaults when there are no existing controls', () => { + const controlsManager = initControlsManager({}, DEFAULT_DATA_VIEW_ID); + expect(controlsManager.getNewControlState()).toEqual({ + grow: true, + width: 'medium', + dataViewId: DEFAULT_DATA_VIEW_ID, + }); + }); + + test('should start with defaults if there are existing controls', () => { + const controlsManager = initControlsManager( + { + alpha: { + type: 'testControl', + order: 1, + dataViewId: 'myOtherDataViewId', + width: 'small', + grow: false, + } as ControlPanelState & Pick, + }, + DEFAULT_DATA_VIEW_ID + ); + expect(controlsManager.getNewControlState()).toEqual({ + grow: true, + width: 'medium', + dataViewId: 'myOtherDataViewId', + }); + }); + + test('should contain values of last added control', () => { + const controlsManager = initControlsManager({}, DEFAULT_DATA_VIEW_ID); + controlsManager.api.addNewPanel({ + panelType: 'testControl', + initialState: { + grow: false, + width: 'small', + dataViewId: 'myOtherDataViewId', + }, + }); + expect(controlsManager.getNewControlState()).toEqual({ + grow: false, + width: 'small', + dataViewId: 'myOtherDataViewId', + }); + }); +}); diff --git a/src/plugins/controls/public/react_controls/control_group/init_controls_manager.ts b/src/plugins/controls/public/react_controls/control_group/init_controls_manager.ts index 0e762bfd53fa3..07b533f329631 100644 --- a/src/plugins/controls/public/react_controls/control_group/init_controls_manager.ts +++ b/src/plugins/controls/public/react_controls/control_group/init_controls_manager.ts @@ -22,6 +22,7 @@ import { ControlGroupApi, ControlPanelsState, ControlPanelState } from './types' import { DefaultControlApi, DefaultControlState } from '../controls/types'; import { ControlGroupComparatorState } from './control_group_unsaved_changes_api'; import { DefaultDataControlState } from '../controls/data_controls/types'; +import { ControlWidth, DEFAULT_CONTROL_GROW, DEFAULT_CONTROL_WIDTH } from '../../../common'; export type ControlsInOrder = Array<{ id: string; type: string }>; @@ -54,6 +55,8 @@ export function initControlsManager( defaultDataViewId ?? undefined ); + const lastUsedWidth$ = new BehaviorSubject(DEFAULT_CONTROL_WIDTH); + const lastUsedGrow$ = new BehaviorSubject(DEFAULT_CONTROL_GROW); function untilControlLoaded( id: string @@ -91,6 +94,13 @@ export function initControlsManager( if ((initialState as DefaultDataControlState)?.dataViewId) { lastUsedDataViewId$.next((initialState as DefaultDataControlState).dataViewId); } + if (initialState?.width) { + lastUsedWidth$.next(initialState.width); + } + if (typeof initialState?.grow === 'boolean') { + lastUsedGrow$.next(initialState.grow); + } + const id = generateId(); const nextControlsInOrder = [...controlsInOrder$.value]; nextControlsInOrder.splice(index, 0, { @@ -110,6 +120,13 @@ export function initControlsManager( return { controlsInOrder$, + getNewControlState: () => { + return { + grow: lastUsedGrow$.value, + width: lastUsedWidth$.value, + dataViewId: lastUsedDataViewId$.value, + }; + }, getControlApi, setControlApi: (uuid: string, controlApi: DefaultControlApi) => { children$.next({ @@ -168,7 +185,6 @@ export function initControlsManager( return controlsRuntimeState; }, api: { - lastUsedDataViewId$: lastUsedDataViewId$ as PublishingSubject, getSerializedStateForChild: (childId: string) => { const controlPanelState = controlsPanelState[childId]; return controlPanelState ? { rawState: controlPanelState } : undefined; @@ -210,7 +226,7 @@ export function initControlsManager( }, } as PresentationContainer & HasSerializedChildState & - Pick, + Pick, comparators: { controlsInOrder: [ controlsInOrder$, diff --git a/src/plugins/controls/public/react_controls/control_group/open_edit_control_group_flyout.tsx b/src/plugins/controls/public/react_controls/control_group/open_edit_control_group_flyout.tsx index 06ab4c063b5c0..c636d37ade6b2 100644 --- a/src/plugins/controls/public/react_controls/control_group/open_edit_control_group_flyout.tsx +++ b/src/plugins/controls/public/react_controls/control_group/open_edit_control_group_flyout.tsx @@ -16,7 +16,7 @@ import React from 'react'; import { BehaviorSubject } from 'rxjs'; import { ControlStateManager } from '../controls/types'; -import { ControlGroupEditor } from './control_group_editor'; +import { ControlGroupEditor } from './components/control_group_editor'; import { ControlGroupApi, ControlGroupEditorState } from './types'; export const openEditControlGroupFlyout = ( diff --git a/src/plugins/controls/public/react_controls/control_group/serialization_utils.ts b/src/plugins/controls/public/react_controls/control_group/serialization_utils.ts index f57fbd801804f..eb3706c3913a1 100644 --- a/src/plugins/controls/public/react_controls/control_group/serialization_utils.ts +++ b/src/plugins/controls/public/react_controls/control_group/serialization_utils.ts @@ -8,7 +8,6 @@ import { SerializedPanelState } from '@kbn/presentation-containers'; import { omit } from 'lodash'; -import { DEFAULT_CONTROL_GROW, DEFAULT_CONTROL_WIDTH } from '../../../common'; import { ControlGroupRuntimeState, ControlGroupSerializedState } from './types'; export const deserializeControlGroup = ( @@ -46,7 +45,5 @@ export const deserializeControlGroup = ( ? !state.rawState.showApplySelections : false, // Rename "showApplySelections" to "autoApplySelections" labelPosition: state.rawState.controlStyle, // Rename "controlStyle" to "labelPosition" - defaultControlGrow: DEFAULT_CONTROL_GROW, - defaultControlWidth: DEFAULT_CONTROL_WIDTH, }; }; diff --git a/src/plugins/controls/public/react_controls/control_group/types.ts b/src/plugins/controls/public/react_controls/control_group/types.ts index f00aaeae578b4..d009712e52a5b 100644 --- a/src/plugins/controls/public/react_controls/control_group/types.ts +++ b/src/plugins/controls/public/react_controls/control_group/types.ts @@ -31,21 +31,17 @@ import { PublishesReload } from '@kbn/presentation-publishing/interfaces/fetch/p import { ParentIgnoreSettings } from '../..'; import { ControlInputTransform } from '../../../common'; import { ControlGroupChainingSystem } from '../../../common/control_group/types'; -import { ControlStyle, ControlWidth } from '../../types'; -import { DefaultControlState, PublishesControlDisplaySettings } from '../controls/types'; +import { ControlStyle } from '../../types'; +import { DefaultControlState } from '../controls/types'; import { ControlFetchContext } from './control_fetch/control_fetch'; -/** The control display settings published by the control group are the "default" */ -type PublishesControlGroupDisplaySettings = PublishesControlDisplaySettings & { - labelPosition: PublishingSubject; -}; export interface ControlPanelsState { [panelId: string]: ControlState; } export type ControlGroupUnsavedChanges = Omit< ControlGroupRuntimeState, - 'initialChildControlState' | 'defaultControlGrow' | 'defaultControlWidth' + 'initialChildControlState' > & { filters: Filter[] | undefined; }; @@ -60,7 +56,6 @@ export type ControlGroupApi = PresentationContainer & HasEditCapabilities & PublishesDataLoading & Pick & - PublishesControlGroupDisplaySettings & PublishesTimeslice & Partial & HasSaveNotification & PublishesReload> & { asyncResetUnsavedChanges: () => Promise; @@ -73,13 +68,11 @@ export type ControlGroupApi = PresentationContainer & openAddDataControlFlyout: (settings?: { controlInputTransform?: ControlInputTransform; }) => void; - lastUsedDataViewId$: PublishingSubject; + labelPosition: PublishingSubject; }; export interface ControlGroupRuntimeState { chainingSystem: ControlGroupChainingSystem; - defaultControlGrow?: boolean; - defaultControlWidth?: ControlWidth; labelPosition: ControlStyle; // TODO: Rename this type to ControlLabelPosition autoApplySelections: boolean; ignoreParentSettings?: ParentIgnoreSettings; diff --git a/src/plugins/controls/public/react_controls/controls/data_controls/data_control_editor.tsx b/src/plugins/controls/public/react_controls/controls/data_controls/data_control_editor.tsx index a39b0ea03b422..d26d156d1e09a 100644 --- a/src/plugins/controls/public/react_controls/controls/data_controls/data_control_editor.tsx +++ b/src/plugins/controls/public/react_controls/controls/data_controls/data_control_editor.tsx @@ -32,7 +32,6 @@ import { } from '@elastic/eui'; import { DataViewField } from '@kbn/data-views-plugin/common'; import { DataViewsPublicPluginStart } from '@kbn/data-views-plugin/public'; -import { useBatchedPublishingSubjects } from '@kbn/presentation-publishing'; import { LazyDataViewPicker, LazyFieldPicker, @@ -145,10 +144,6 @@ export const DataControlEditor = ) => { - const [defaultGrow, defaultWidth] = useBatchedPublishingSubjects( - controlGroupApi.grow, - controlGroupApi.width - ); const [editorState, setEditorState] = useState>(initialState); const [defaultPanelTitle, setDefaultPanelTitle] = useState( initialDefaultPanelTitle ?? initialState.fieldName ?? '' @@ -368,7 +363,7 @@ export const DataControlEditor = setEditorState({ ...editorState, width: newWidth as ControlWidth }) } @@ -377,10 +372,7 @@ export const DataControlEditor = setEditorState({ ...editorState, grow: !editorState.grow })} data-test-subj="control-editor-grow-switch" /> diff --git a/src/plugins/controls/public/react_controls/controls/types.ts b/src/plugins/controls/public/react_controls/controls/types.ts index d89db77e1f53b..2d71ae0dd1298 100644 --- a/src/plugins/controls/public/react_controls/controls/types.ts +++ b/src/plugins/controls/public/react_controls/controls/types.ts @@ -26,11 +26,6 @@ import { CanClearSelections, ControlWidth } from '../../types'; import { ControlGroupApi } from '../control_group/types'; -export interface PublishesControlDisplaySettings { - grow: PublishingSubject; - width: PublishingSubject; -} - export interface HasCustomPrepend { CustomPrependComponent: React.FC<{}>; } @@ -38,7 +33,6 @@ export interface HasCustomPrepend { export type DefaultControlApi = PublishesDataLoading & PublishesBlockingError & PublishesUnsavedChanges & - PublishesControlDisplaySettings & Partial & CanClearSelections & HasType & @@ -51,6 +45,8 @@ export type DefaultControlApi = PublishesDataLoading & /** TODO: Make these non-public as part of https://github.com/elastic/kibana/issues/174961 */ setDataLoading: (loading: boolean) => void; setBlockingError: (error: Error | undefined) => void; + grow: PublishingSubject; + width: PublishingSubject; }; export interface DefaultControlState { diff --git a/src/plugins/dashboard/public/dashboard_app/_dashboard_app_strings.ts b/src/plugins/dashboard/public/dashboard_app/_dashboard_app_strings.ts index c58fa0cf828df..80e5208d63ea9 100644 --- a/src/plugins/dashboard/public/dashboard_app/_dashboard_app_strings.ts +++ b/src/plugins/dashboard/public/dashboard_app/_dashboard_app_strings.ts @@ -26,9 +26,13 @@ export const dashboardReadonlyBadge = { }; export const dashboardManagedBadge = { - getTooltip: () => - i18n.translate('dashboard.badge.managed.tooltip', { - defaultMessage: 'Elastic manages this dashboard. Clone it to make changes.', + getDuplicateButtonAriaLabel: () => + i18n.translate('dashboard.managedContentPopoverFooterText', { + defaultMessage: 'Click here to duplicate this dashboard', + }), + getBadgeAriaLabel: () => + i18n.translate('dashboard.managedContentBadge.ariaLabel', { + defaultMessage: 'Elastic manages this dashboard. Duplicate it to make changes.', }), }; diff --git a/src/plugins/dashboard/public/dashboard_app/top_nav/use_dashboard_menu_items.tsx b/src/plugins/dashboard/public/dashboard_app/top_nav/use_dashboard_menu_items.tsx index 066ee2a018221..1bcea2b0c4ee1 100644 --- a/src/plugins/dashboard/public/dashboard_app/top_nav/use_dashboard_menu_items.tsx +++ b/src/plugins/dashboard/public/dashboard_app/top_nav/use_dashboard_menu_items.tsx @@ -18,19 +18,18 @@ import { topNavStrings } from '../_dashboard_app_strings'; import { ShowShareModal } from './share/show_share_modal'; import { pluginServices } from '../../services/plugin_services'; import { CHANGE_CHECK_DEBOUNCE } from '../../dashboard_constants'; -import { DashboardRedirect } from '../../dashboard_container/types'; -import { SaveDashboardReturn } from '../../services/dashboard_content_management/types'; import { confirmDiscardUnsavedChanges } from '../../dashboard_listing/confirm_overlays'; +import { SaveDashboardReturn } from '../../services/dashboard_content_management/types'; export const useDashboardMenuItems = ({ - redirectTo, isLabsShown, setIsLabsShown, + maybeRedirect, showResetChange, }: { - redirectTo: DashboardRedirect; isLabsShown: boolean; setIsLabsShown: Dispatch>; + maybeRedirect: (result?: SaveDashboardReturn) => void; showResetChange?: boolean; }) => { const [isSaveInProgress, setIsSaveInProgress] = useState(false); @@ -78,22 +77,6 @@ export const useDashboardMenuItems = ({ [dashboardTitle, hasUnsavedChanges, lastSavedId, dashboard] ); - const maybeRedirect = useCallback( - (result?: SaveDashboardReturn) => { - if (!result) return; - const { redirectRequired, id } = result; - if (redirectRequired) { - redirectTo({ - id, - editMode: true, - useReplace: true, - destination: 'dashboard', - }); - } - }, - [redirectTo] - ); - /** * Save the dashboard without any UI or popups. */ diff --git a/src/plugins/dashboard/public/dashboard_container/embeddable/api/run_save_functions.tsx b/src/plugins/dashboard/public/dashboard_container/embeddable/api/run_save_functions.tsx index df246be4e5d99..215c3e7b99e7d 100644 --- a/src/plugins/dashboard/public/dashboard_container/embeddable/api/run_save_functions.tsx +++ b/src/plugins/dashboard/public/dashboard_container/embeddable/api/run_save_functions.tsx @@ -261,6 +261,7 @@ export async function runInteractiveSave(this: DashboardContainer, interactionMo this.saveNotification$.next(); resolve(saveResult); + return saveResult; } catch (error) { reject(error); diff --git a/src/plugins/dashboard/public/dashboard_container/embeddable/create/create_dashboard.ts b/src/plugins/dashboard/public/dashboard_container/embeddable/create/create_dashboard.ts index 708e3c8aac809..158fc638adc3d 100644 --- a/src/plugins/dashboard/public/dashboard_container/embeddable/create/create_dashboard.ts +++ b/src/plugins/dashboard/public/dashboard_container/embeddable/create/create_dashboard.ts @@ -178,6 +178,7 @@ export const initializeDashboard = async ({ query: queryService, search: { session }, }, + dashboardContentInsights, } = pluginServices.getServices(); const { queryString, @@ -635,5 +636,13 @@ export const initializeDashboard = async ({ }); } + if (loadDashboardReturn.dashboardId && !incomingEmbeddable) { + // We count a new view every time a user opens a dashboard, both in view or edit mode + // We don't count views when a user is editing a dashboard and is returning from an editor after saving + // however, there is an edge case that we now count a new view when a user is editing a dashboard and is returning from an editor by canceling + // TODO: this should be revisited by making embeddable transfer support canceling logic https://github.com/elastic/kibana/issues/190485 + dashboardContentInsights.trackDashboardView(loadDashboardReturn.dashboardId); + } + return { input: initialDashboardInput, searchSessionId: initialSearchSessionId }; }; diff --git a/src/plugins/dashboard/public/dashboard_container/embeddable/dashboard_container.tsx b/src/plugins/dashboard/public/dashboard_container/embeddable/dashboard_container.tsx index 162b80306ed4f..585e0ff0b1ff6 100644 --- a/src/plugins/dashboard/public/dashboard_container/embeddable/dashboard_container.tsx +++ b/src/plugins/dashboard/public/dashboard_container/embeddable/dashboard_container.tsx @@ -440,7 +440,6 @@ export class DashboardContainer // ------------------------------------------------------------------------------------------------------ // Dashboard API // ------------------------------------------------------------------------------------------------------ - public runInteractiveSave = runInteractiveSave; public runQuickSave = runQuickSave; diff --git a/src/plugins/dashboard/public/dashboard_listing/dashboard_listing.tsx b/src/plugins/dashboard/public/dashboard_listing/dashboard_listing.tsx index 2904eb4648df1..1e0de2b72b2b5 100644 --- a/src/plugins/dashboard/public/dashboard_listing/dashboard_listing.tsx +++ b/src/plugins/dashboard/public/dashboard_listing/dashboard_listing.tsx @@ -45,6 +45,7 @@ export const DashboardListing = ({ savedObjectsTagging, coreContext: { executionContext }, userProfile, + dashboardContentInsights: { contentInsightsClient }, dashboardFavorites, } = pluginServices.getServices(); @@ -86,6 +87,7 @@ export const DashboardListing = ({ savedObjectsTagging: savedObjectsTaggingFakePlugin, FormattedRelative, favorites: dashboardFavorites, + contentInsightsClient, }} > {...tableListViewTableProps}> diff --git a/src/plugins/dashboard/public/dashboard_listing/dashboard_listing_table.tsx b/src/plugins/dashboard/public/dashboard_listing/dashboard_listing_table.tsx index 07ce8eeea771f..5a0f8caee1a9b 100644 --- a/src/plugins/dashboard/public/dashboard_listing/dashboard_listing_table.tsx +++ b/src/plugins/dashboard/public/dashboard_listing/dashboard_listing_table.tsx @@ -47,6 +47,7 @@ export const DashboardListingTable = ({ coreContext: { executionContext }, chrome: { theme }, userProfile, + dashboardContentInsights: { contentInsightsClient }, } = pluginServices.getServices(); useExecutionContext(executionContext, { @@ -98,6 +99,7 @@ export const DashboardListingTable = ({ core={core} savedObjectsTagging={savedObjectsTaggingFakePlugin} FormattedRelative={FormattedRelative} + contentInsightsClient={contentInsightsClient} > <> { onSave: expect.any(Function), isReadonly: false, customValidators: expect.any(Object), - showActivityView: true, }, createdByEnabled: true, recentlyAccessed: expect.objectContaining({ get: expect.any(Function) }), diff --git a/src/plugins/dashboard/public/dashboard_listing/hooks/use_dashboard_listing_table.tsx b/src/plugins/dashboard/public/dashboard_listing/hooks/use_dashboard_listing_table.tsx index 097fc5ea6d866..d3afbc61d2607 100644 --- a/src/plugins/dashboard/public/dashboard_listing/hooks/use_dashboard_listing_table.tsx +++ b/src/plugins/dashboard/public/dashboard_listing/hooks/use_dashboard_listing_table.tsx @@ -283,7 +283,6 @@ export const useDashboardListingTable = ({ isReadonly: !showWriteControls, onSave: updateItemMeta, customValidators: contentEditorValidators, - showActivityView: true, }, createItem: !showWriteControls || !showCreateDashboardButton ? undefined : createItem, deleteItems: !showWriteControls ? undefined : deleteItems, diff --git a/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.test.tsx b/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.test.tsx new file mode 100644 index 0000000000000..22aacec0946af --- /dev/null +++ b/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.test.tsx @@ -0,0 +1,63 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import React from 'react'; +import { render } from '@testing-library/react'; +import { buildMockDashboard } from '../mocks'; +import { InternalDashboardTopNav } from './internal_dashboard_top_nav'; +import { setMockedPresentationUtilServices } from '@kbn/presentation-util-plugin/public/mocks'; +import { pluginServices } from '../services/plugin_services'; +import { DashboardAPIContext } from '../dashboard_app/dashboard_app'; +import { TopNavMenuProps } from '@kbn/navigation-plugin/public'; + +describe('Internal dashboard top nav', () => { + const mockTopNav = (badges: TopNavMenuProps['badges'] | undefined[]) => { + if (badges) { + return badges?.map((badge, index) => ( +
+ {badge?.badgeText} +
+ )); + } else { + return <>; + } + }; + + beforeEach(() => { + setMockedPresentationUtilServices(); + pluginServices.getServices().data.query.filterManager.getFilters = jest + .fn() + .mockReturnValue([]); + // topNavMenu is mocked as a jest.fn() so we want to mock it with a component + // @ts-ignore type issue with the mockTopNav for this test suite + pluginServices.getServices().navigation.TopNavMenu = ({ badges }: TopNavMenuProps) => + mockTopNav(badges); + }); + + it('should not render the managed badge by default', async () => { + const component = render( + + + + ); + + expect(component.queryByText('Managed')).toBeNull(); + }); + + it('should render the managed badge when the dashboard is managed', async () => { + const container = buildMockDashboard(); + container.dispatch.setManaged(true); + const component = render( + + + + ); + + expect(component.getByText('Managed')).toBeInTheDocument(); + }); +}); diff --git a/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.tsx b/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.tsx index eba228229f066..5f6edc138aa13 100644 --- a/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.tsx +++ b/src/plugins/dashboard/public/dashboard_top_nav/internal_dashboard_top_nav.tsx @@ -7,20 +7,28 @@ */ import UseUnmount from 'react-use/lib/useUnmount'; -import React, { useEffect, useMemo, useRef, useState } from 'react'; +import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react'; import { withSuspense, LazyLabsFlyout, getContextProvider as getPresentationUtilContextProvider, } from '@kbn/presentation-util-plugin/public'; -import { getManagedContentBadge } from '@kbn/managed-content-badge'; import { ViewMode } from '@kbn/embeddable-plugin/public'; import type { DataView } from '@kbn/data-views-plugin/public'; -import { TopNavMenuProps } from '@kbn/navigation-plugin/public'; -import { EuiHorizontalRule, EuiIcon, EuiToolTipProps } from '@elastic/eui'; -import type { EuiBreadcrumb } from '@elastic/eui'; +import { TopNavMenuBadgeProps, TopNavMenuProps } from '@kbn/navigation-plugin/public'; +import { + EuiBreadcrumb, + EuiHorizontalRule, + EuiIcon, + EuiToolTipProps, + EuiPopover, + EuiBadge, + EuiLink, +} from '@elastic/eui'; import { MountPoint } from '@kbn/core/public'; +import { getManagedContentBadge } from '@kbn/managed-content-badge'; +import { FormattedMessage } from '@kbn/i18n-react'; import { getDashboardTitle, leaveConfirmStrings, @@ -38,6 +46,7 @@ import { useDashboardMountContext } from '../dashboard_app/hooks/dashboard_mount import { getFullEditPath, LEGACY_DASHBOARD_APP_ID } from '../dashboard_constants'; import './_dashboard_top_nav.scss'; import { DashboardRedirect } from '../dashboard_container/types'; +import { SaveDashboardReturn } from '../services/dashboard_content_management/types'; export interface InternalDashboardTopNavProps { customLeadingBreadCrumbs?: EuiBreadcrumb[]; @@ -90,7 +99,6 @@ export function InternalDashboardTopNav({ const dashboard = useDashboardAPI(); const PresentationUtilContextProvider = getPresentationUtilContextProvider(); - const hasRunMigrations = dashboard.select( (state) => state.componentState.hasRunClientsideMigrations ); @@ -107,6 +115,7 @@ export function InternalDashboardTopNav({ // store data views in state & subscribe to dashboard data view changes. const [allDataViews, setAllDataViews] = useState([]); + const [isPopoverOpen, setIsPopoverOpen] = useState(false); useEffect(() => { setAllDataViews(dashboard.getAllDataViews()); const subscription = dashboard.onDataViewsUpdate$.subscribe((dataViews) => @@ -274,10 +283,26 @@ export function InternalDashboardTopNav({ viewMode, ]); + const maybeRedirect = useCallback( + (result?: SaveDashboardReturn) => { + if (!result) return; + const { redirectRequired, id } = result; + if (redirectRequired) { + redirectTo({ + id, + editMode: true, + useReplace: true, + destination: 'dashboard', + }); + } + }, + [redirectTo] + ); + const { viewModeTopNavConfig, editModeTopNavConfig } = useDashboardMenuItems({ - redirectTo, isLabsShown, setIsLabsShown, + maybeRedirect, showResetChange, }); @@ -313,10 +338,63 @@ export function InternalDashboardTopNav({ }); } if (showWriteControls && managed) { - allBadges.push(getManagedContentBadge(dashboardManagedBadge.getTooltip())); + const badgeProps = { + ...getManagedContentBadge(dashboardManagedBadge.getBadgeAriaLabel()), + onClick: () => setIsPopoverOpen(!isPopoverOpen), + onClickAriaLabel: dashboardManagedBadge.getBadgeAriaLabel(), + iconOnClick: () => setIsPopoverOpen(!isPopoverOpen), + iconOnClickAriaLabel: dashboardManagedBadge.getBadgeAriaLabel(), + } as TopNavMenuBadgeProps; + + allBadges.push({ + renderCustomBadge: ({ badgeText }) => { + const badgeButton = {badgeText}; + return ( + setIsPopoverOpen(false)} + panelStyle={{ maxWidth: 250 }} + > + { + dashboard + .runInteractiveSave(viewMode) + .then((result) => maybeRedirect(result)); + }} + aria-label={dashboardManagedBadge.getDuplicateButtonAriaLabel()} + > + + + ), + }} + /> + + ); + }, + badgeText: badgeProps.badgeText, + }); } return allBadges; - }, [hasUnsavedChanges, viewMode, hasRunMigrations, showWriteControls, managed]); + }, [ + hasUnsavedChanges, + viewMode, + hasRunMigrations, + showWriteControls, + managed, + isPopoverOpen, + dashboard, + maybeRedirect, + ]); return (
diff --git a/src/plugins/dashboard/public/services/dashboard_content_insights/dashboard_content_insights.stub.ts b/src/plugins/dashboard/public/services/dashboard_content_insights/dashboard_content_insights.stub.ts new file mode 100644 index 0000000000000..26abd7f65c768 --- /dev/null +++ b/src/plugins/dashboard/public/services/dashboard_content_insights/dashboard_content_insights.stub.ts @@ -0,0 +1,23 @@ +/* + * 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 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 or the Server + * Side Public License, v 1. + */ + +import { PluginServiceFactory } from '@kbn/presentation-util-plugin/public'; +import type { DashboardContentInsightsService } from './types'; + +type DashboardContentInsightsServiceFactory = PluginServiceFactory; + +export const dashboardContentInsightsServiceFactory: DashboardContentInsightsServiceFactory = + () => { + return { + trackDashboardView: jest.fn(), + contentInsightsClient: { + track: jest.fn(), + getStats: jest.fn(), + }, + }; + }; diff --git a/src/plugins/dashboard/public/services/dashboard_content_insights/dashboard_content_insights_service.ts b/src/plugins/dashboard/public/services/dashboard_content_insights/dashboard_content_insights_service.ts new file mode 100644 index 0000000000000..8877589d036ea --- /dev/null +++ b/src/plugins/dashboard/public/services/dashboard_content_insights/dashboard_content_insights_service.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 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 or the Server + * Side Public License, v 1. + */ + +import { KibanaPluginServiceFactory } from '@kbn/presentation-util-plugin/public'; +import { ContentInsightsClient } from '@kbn/content-management-content-insights-public'; +import { DashboardStartDependencies } from '../../plugin'; +import { DashboardContentInsightsService } from './types'; + +export type DashboardContentInsightsServiceFactory = KibanaPluginServiceFactory< + DashboardContentInsightsService, + DashboardStartDependencies +>; + +export const dashboardContentInsightsServiceFactory: DashboardContentInsightsServiceFactory = ( + params +) => { + const contentInsightsClient = new ContentInsightsClient( + { http: params.coreStart.http }, + { domainId: 'dashboard' } + ); + + return { + trackDashboardView: (dashboardId: string) => { + contentInsightsClient.track(dashboardId, 'viewed'); + }, + contentInsightsClient, + }; +}; diff --git a/src/plugins/dashboard/public/services/dashboard_content_insights/types.ts b/src/plugins/dashboard/public/services/dashboard_content_insights/types.ts new file mode 100644 index 0000000000000..ac709c725f879 --- /dev/null +++ b/src/plugins/dashboard/public/services/dashboard_content_insights/types.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 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 or the Server + * Side Public License, v 1. + */ + +import type { ContentInsightsClientPublic } from '@kbn/content-management-content-insights-public'; + +export interface DashboardContentInsightsService { + trackDashboardView: (dashboardId: string) => void; + contentInsightsClient: ContentInsightsClientPublic; +} diff --git a/src/plugins/dashboard/public/services/plugin_services.stub.ts b/src/plugins/dashboard/public/services/plugin_services.stub.ts index 247a3f29e35aa..1bd37c98d6ece 100644 --- a/src/plugins/dashboard/public/services/plugin_services.stub.ts +++ b/src/plugins/dashboard/public/services/plugin_services.stub.ts @@ -49,6 +49,7 @@ import { noDataPageServiceFactory } from './no_data_page/no_data_page_service.st import { uiActionsServiceFactory } from './ui_actions/ui_actions_service.stub'; import { dashboardRecentlyAccessedServiceFactory } from './dashboard_recently_accessed/dashboard_recently_accessed.stub'; import { dashboardFavoritesServiceFactory } from './dashboard_favorites/dashboard_favorites_service.stub'; +import { dashboardContentInsightsServiceFactory } from './dashboard_content_insights/dashboard_content_insights.stub'; export const providers: PluginServiceProviders = { dashboardContentManagement: new PluginServiceProvider(dashboardContentManagementServiceFactory), @@ -85,6 +86,7 @@ export const providers: PluginServiceProviders = { userProfile: new PluginServiceProvider(userProfileServiceFactory), observabilityAIAssistant: new PluginServiceProvider(observabilityAIAssistantServiceStubFactory), dashboardRecentlyAccessed: new PluginServiceProvider(dashboardRecentlyAccessedServiceFactory), + dashboardContentInsights: new PluginServiceProvider(dashboardContentInsightsServiceFactory), dashboardFavorites: new PluginServiceProvider(dashboardFavoritesServiceFactory), }; diff --git a/src/plugins/dashboard/public/services/plugin_services.ts b/src/plugins/dashboard/public/services/plugin_services.ts index 8f554d33aeea4..592b494634432 100644 --- a/src/plugins/dashboard/public/services/plugin_services.ts +++ b/src/plugins/dashboard/public/services/plugin_services.ts @@ -50,6 +50,7 @@ import { observabilityAIAssistantServiceFactory } from './observability_ai_assis import { userProfileServiceFactory } from './user_profile/user_profile_service'; import { dashboardRecentlyAccessedFactory } from './dashboard_recently_accessed/dashboard_recently_accessed'; import { dashboardFavoritesServiceFactory } from './dashboard_favorites/dashboard_favorites_service'; +import { dashboardContentInsightsServiceFactory } from './dashboard_content_insights/dashboard_content_insights_service'; const providers: PluginServiceProviders = { dashboardContentManagement: new PluginServiceProvider(dashboardContentManagementServiceFactory, [ @@ -99,6 +100,7 @@ const providers: PluginServiceProviders & { @@ -85,5 +86,6 @@ export interface DashboardServices { observabilityAIAssistant: ObservabilityAIAssistantService; // TODO: make this optional in follow up userProfile: DashboardUserProfileService; dashboardRecentlyAccessed: DashboardRecentlyAccessedService; + dashboardContentInsights: DashboardContentInsightsService; dashboardFavorites: DashboardFavoritesService; } diff --git a/src/plugins/dashboard/server/plugin.ts b/src/plugins/dashboard/server/plugin.ts index e1626c2e72108..27747ca71bb8d 100644 --- a/src/plugins/dashboard/server/plugin.ts +++ b/src/plugins/dashboard/server/plugin.ts @@ -11,9 +11,10 @@ import { TaskManagerStartContract, } from '@kbn/task-manager-plugin/server'; import { EmbeddableSetup } from '@kbn/embeddable-plugin/server'; -import { UsageCollectionSetup } from '@kbn/usage-collection-plugin/server'; +import { UsageCollectionSetup, UsageCollectionStart } from '@kbn/usage-collection-plugin/server'; import { ContentManagementServerSetup } from '@kbn/content-management-plugin/server'; import { PluginInitializerContext, CoreSetup, CoreStart, Plugin, Logger } from '@kbn/core/server'; +import { registerContentInsights } from '@kbn/content-management-content-insights-server'; import { initializeDashboardTelemetryTask, @@ -31,13 +32,14 @@ import { dashboardPersistableStateServiceFactory } from './dashboard_container/d interface SetupDeps { embeddable: EmbeddableSetup; - usageCollection: UsageCollectionSetup; + usageCollection?: UsageCollectionSetup; taskManager: TaskManagerSetupContract; contentManagement: ContentManagementServerSetup; } interface StartDeps { taskManager: TaskManagerStartContract; + usageCollection?: UsageCollectionStart; } export class DashboardPlugin @@ -83,6 +85,25 @@ export class DashboardPlugin ); } + if (plugins.usageCollection) { + // Registers routes for tracking and fetching dashboard views + registerContentInsights( + { + usageCollection: plugins.usageCollection, + http: core.http, + getStartServices: () => + core.getStartServices().then(([_, start]) => ({ + usageCollection: start.usageCollection!, + })), + }, + { + domainId: 'dashboard', + // makes sure that only users with read/all access to dashboard app can access the routes + routeTags: ['access:dashboardUsageStats'], + } + ); + } + plugins.embeddable.registerEmbeddableFactory( dashboardPersistableStateServiceFactory(plugins.embeddable) ); diff --git a/src/plugins/dashboard/tsconfig.json b/src/plugins/dashboard/tsconfig.json index 85b279490166f..f289f4f725fe5 100644 --- a/src/plugins/dashboard/tsconfig.json +++ b/src/plugins/dashboard/tsconfig.json @@ -73,7 +73,6 @@ "@kbn/presentation-panel-plugin", "@kbn/content-management-table-list-view-common", "@kbn/shared-ux-utility", - "@kbn/managed-content-badge", "@kbn/core-test-helpers-model-versions", "@kbn/deeplinks-analytics", "@kbn/core-user-profile-browser-mocks", @@ -84,6 +83,9 @@ "@kbn/lens-embeddable-utils", "@kbn/lens-plugin", "@kbn/recently-accessed", + "@kbn/content-management-content-insights-public", + "@kbn/content-management-content-insights-server", + "@kbn/managed-content-badge", "@kbn/content-management-favorites-public", "@kbn/core-http-browser-mocks", ], diff --git a/src/plugins/data/config.ts b/src/plugins/data/config.ts index b6adfdede2469..5b9f15dbce3e5 100644 --- a/src/plugins/data/config.ts +++ b/src/plugins/data/config.ts @@ -6,7 +6,7 @@ * Side Public License, v 1. */ -import { schema, TypeOf } from '@kbn/config-schema'; +import { offeringBasedSchema, schema, TypeOf } from '@kbn/config-schema'; export const searchSessionsConfigSchema = schema.object({ /** @@ -84,7 +84,23 @@ export const searchConfigSchema = schema.object({ sessions: searchSessionsConfigSchema, }); +export const queryConfigSchema = schema.object({ + /** + * Config for timefilter + */ + timefilter: schema.object({ + /** + * Lower limit of refresh interval (in milliseconds) + */ + minRefreshInterval: offeringBasedSchema({ + serverless: schema.number({ min: 1000, defaultValue: 5000 }), + traditional: schema.number({ min: 1000, defaultValue: 1000 }), + }), + }), +}); + export const configSchema = schema.object({ + query: queryConfigSchema, search: searchConfigSchema, /** * Turns on/off limit validations for the registered uiSettings. @@ -96,4 +112,6 @@ export type ConfigSchema = TypeOf; export type SearchConfigSchema = TypeOf; +export type QueryConfigSchema = TypeOf; + export type SearchSessionsConfigSchema = TypeOf; diff --git a/src/plugins/data/public/plugin.ts b/src/plugins/data/public/plugin.ts index 32e321bd98a43..530cbe978c3d1 100644 --- a/src/plugins/data/public/plugin.ts +++ b/src/plugins/data/public/plugin.ts @@ -59,7 +59,9 @@ export class DataPublicPlugin constructor(initializerContext: PluginInitializerContext) { this.searchService = new SearchService(initializerContext); - this.queryService = new QueryService(); + this.queryService = new QueryService( + initializerContext.config.get().query.timefilter.minRefreshInterval + ); this.storage = new Storage(window.localStorage); this.nowProvider = new NowProvider(); diff --git a/src/plugins/data/public/query/query_service.test.ts b/src/plugins/data/public/query/query_service.test.ts index 6ddde2d18f74f..b95e02dadf356 100644 --- a/src/plugins/data/public/query/query_service.test.ts +++ b/src/plugins/data/public/query/query_service.test.ts @@ -18,6 +18,8 @@ import { StubBrowserStorage } from '@kbn/test-jest-helpers'; import { TimefilterContract } from './timefilter'; import { createNowProviderMock } from '../now_provider/mocks'; +const minRefreshIntervalDefault = 1000; + const setupMock = coreMock.createSetup(); const startMock = coreMock.createStart(); @@ -48,6 +50,7 @@ describe('query_service', () => { uiSettings: setupMock.uiSettings, storage: new Storage(new StubBrowserStorage()), nowProvider: createNowProviderMock(), + minRefreshInterval: minRefreshIntervalDefault, }); queryServiceStart = queryService.start({ uiSettings: setupMock.uiSettings, @@ -82,7 +85,7 @@ describe('query_service', () => { const filters = [getFilter(FilterStateStore.GLOBAL_STATE, true, true, 'key1', 'value1')]; const query = { language: 'kql', query: 'query' }; const time = { from: new Date().toISOString(), to: new Date().toISOString() }; - const refreshInterval = { pause: false, value: 10 }; + const refreshInterval = { pause: false, value: 2000 }; filterManager.setFilters(filters); queryStringManager.setQuery(query); diff --git a/src/plugins/data/public/query/query_service.ts b/src/plugins/data/public/query/query_service.ts index 72943d6b0f59b..776f7e93273a2 100644 --- a/src/plugins/data/public/query/query_service.ts +++ b/src/plugins/data/public/query/query_service.ts @@ -39,6 +39,7 @@ interface QueryServiceSetupDependencies { storage: IStorageWrapper; uiSettings: IUiSettingsClient; nowProvider: NowProviderInternalContract; + minRefreshInterval?: number; } interface QueryServiceStartDependencies { @@ -81,13 +82,21 @@ export class QueryService implements PersistableStateService { state$!: QueryState$; - public setup({ storage, uiSettings, nowProvider }: QueryServiceSetupDependencies): QuerySetup { + constructor(private minRefreshInterval: number = 5000) {} + + public setup({ + storage, + uiSettings, + nowProvider, + minRefreshInterval = this.minRefreshInterval, + }: QueryServiceSetupDependencies): QuerySetup { this.filterManager = new FilterManager(uiSettings); const timefilterService = new TimefilterService(nowProvider); this.timefilter = timefilterService.setup({ uiSettings, storage, + minRefreshInterval, }); this.queryStringManager = new QueryStringManager(storage, uiSettings); diff --git a/src/plugins/data/public/query/state_sync/connect_to_query_state.test.ts b/src/plugins/data/public/query/state_sync/connect_to_query_state.test.ts index 515cc38783cbd..21a8c6a0661ed 100644 --- a/src/plugins/data/public/query/state_sync/connect_to_query_state.test.ts +++ b/src/plugins/data/public/query/state_sync/connect_to_query_state.test.ts @@ -66,7 +66,7 @@ describe('connect_to_global_state', () => { let aF2: Filter; beforeEach(() => { - const queryService = new QueryService(); + const queryService = new QueryService(1000); queryService.setup({ uiSettings: setupMock.uiSettings, storage: new Storage(new StubBrowserStorage()), @@ -120,11 +120,21 @@ describe('connect_to_global_state', () => { }); test('when refresh interval changes, state container contains updated refresh interval', () => { + const stop = connectToQueryGlobalState(queryServiceStart, globalState); + timeFilter.setRefreshInterval({ pause: true, value: 5000 }); + expect(globalState.get().refreshInterval).toEqual({ + pause: true, + value: 5000, + }); + stop(); + }); + + test('when refresh interval is set below min, state container contains min refresh interval', () => { const stop = connectToQueryGlobalState(queryServiceStart, globalState); timeFilter.setRefreshInterval({ pause: true, value: 100 }); expect(globalState.get().refreshInterval).toEqual({ pause: true, - value: 100, + value: 1000, }); stop(); }); @@ -135,14 +145,14 @@ describe('connect_to_global_state', () => { globalState.set({ ...globalState.get(), filters: [gF1, gF2], - refreshInterval: { pause: true, value: 100 }, + refreshInterval: { pause: true, value: 5000 }, time: { from: 'now-30m', to: 'now' }, }); expect(globalStateChangeTriggered).toBeCalledTimes(1); expect(filterManager.getGlobalFilters()).toHaveLength(2); - expect(timeFilter.getRefreshInterval()).toEqual({ pause: true, value: 100 }); + expect(timeFilter.getRefreshInterval()).toEqual({ pause: true, value: 5000 }); expect(timeFilter.getTime()).toEqual({ from: 'now-30m', to: 'now' }); stop(); }); diff --git a/src/plugins/data/public/query/state_sync/sync_state_with_url.test.ts b/src/plugins/data/public/query/state_sync/sync_state_with_url.test.ts index 10cbe1bd25c5b..e6ed0119d80b8 100644 --- a/src/plugins/data/public/query/state_sync/sync_state_with_url.test.ts +++ b/src/plugins/data/public/query/state_sync/sync_state_with_url.test.ts @@ -25,6 +25,8 @@ import { syncQueryStateWithUrl } from './sync_state_with_url'; import { GlobalQueryStateFromUrl } from './types'; import { createNowProviderMock } from '../../now_provider/mocks'; +const minRefreshIntervalDefault = 1000; + const setupMock = coreMock.createSetup(); const startMock = coreMock.createStart(); @@ -65,6 +67,7 @@ describe('sync_query_state_with_url', () => { uiSettings: setupMock.uiSettings, storage: new Storage(new StubBrowserStorage()), nowProvider: createNowProviderMock(), + minRefreshInterval: minRefreshIntervalDefault, }); queryServiceStart = queryService.start({ uiSettings: startMock.uiSettings, @@ -93,7 +96,7 @@ describe('sync_query_state_with_url', () => { filterManager.setFilters([gF, aF]); kbnUrlStateStorage.kbnUrlControls.flush(); // sync force location change expect(history.location.hash).toMatchInlineSnapshot( - `"#?_g=(filters:!(('$state':(store:globalState),meta:(alias:!n,disabled:!t,index:'logstash-*',key:query,negate:!t,type:custom,value:'%7B%22match%22:%7B%22key1%22:%22value1%22%7D%7D'),query:(match:(key1:value1)))),refreshInterval:(pause:!t,value:0),time:(from:now-15m,to:now))"` + `"#?_g=(filters:!(('$state':(store:globalState),meta:(alias:!n,disabled:!t,index:'logstash-*',key:query,negate:!t,type:custom,value:'%7B%22match%22:%7B%22key1%22:%22value1%22%7D%7D'),query:(match:(key1:value1)))),refreshInterval:(pause:!t,value:1000),time:(from:now-15m,to:now))"` ); stop(); }); @@ -116,11 +119,21 @@ describe('sync_query_state_with_url', () => { }); test('when refresh interval changes, refresh interval is synced to urlStorage', () => { + const { stop } = syncQueryStateWithUrl(queryServiceStart, kbnUrlStateStorage); + timefilter.setRefreshInterval({ pause: true, value: 5000 }); + expect(kbnUrlStateStorage.get('_g')?.refreshInterval).toEqual({ + pause: true, + value: 5000, + }); + stop(); + }); + + test('when refresh interval is set below min, refresh interval is not synced to urlStorage', () => { const { stop } = syncQueryStateWithUrl(queryServiceStart, kbnUrlStateStorage); timefilter.setRefreshInterval({ pause: true, value: 100 }); expect(kbnUrlStateStorage.get('_g')?.refreshInterval).toEqual({ pause: true, - value: 100, + value: minRefreshIntervalDefault, }); stop(); }); diff --git a/src/plugins/data/public/query/timefilter/timefilter.test.ts b/src/plugins/data/public/query/timefilter/timefilter.test.ts index 1a4023644ed43..9aef9870541ce 100644 --- a/src/plugins/data/public/query/timefilter/timefilter.test.ts +++ b/src/plugins/data/public/query/timefilter/timefilter.test.ts @@ -17,15 +17,23 @@ import { RefreshInterval } from '../../../common'; import { createNowProviderMock } from '../../now_provider/mocks'; import { timefilterServiceMock } from './timefilter_service.mock'; +import { TimefilterConfig } from './types'; + const timefilterSetupMock = timefilterServiceMock.createSetupContract(); +const minRefreshIntervalDefault = 1000; -const timefilterConfig = { +const defaultTimefilterConfig: TimefilterConfig = { timeDefaults: { from: 'now-15m', to: 'now' }, - refreshIntervalDefaults: { pause: false, value: 0 }, + refreshIntervalDefaults: { pause: false, value: minRefreshIntervalDefault }, + minRefreshIntervalDefault, }; const nowProviderMock = createNowProviderMock(); -const timefilter = new Timefilter(timefilterConfig, timefilterSetupMock.history, nowProviderMock); +let timefilter = new Timefilter( + defaultTimefilterConfig, + timefilterSetupMock.history, + nowProviderMock +); function stubNowTime(nowTime: any) { nowProviderMock.get.mockImplementation(() => (nowTime ? new Date(nowTime) : new Date())); @@ -118,21 +126,28 @@ describe('setRefreshInterval', () => { let fetchSub: Subscription; let refreshSub: Subscription; let autoRefreshSub: Subscription; + let prevTimefilter = timefilter; - beforeEach(() => { + function setup() { update = sinon.spy(); fetch = sinon.spy(); autoRefreshFetch = sinon.spy((done) => done()); timefilter.setRefreshInterval({ pause: false, - value: 0, + value: minRefreshIntervalDefault, }); refreshSub = timefilter.getRefreshIntervalUpdate$().subscribe(update); fetchSub = timefilter.getFetch$().subscribe(fetch); autoRefreshSub = timefilter.getAutoRefreshFetch$().subscribe(autoRefreshFetch); + } + + beforeEach(() => { + prevTimefilter = timefilter; + setup(); }); afterEach(() => { + timefilter = prevTimefilter; refreshSub.unsubscribe(); fetchSub.unsubscribe(); autoRefreshSub.unsubscribe(); @@ -142,16 +157,50 @@ describe('setRefreshInterval', () => { expect(timefilter.isRefreshIntervalTouched()).toBe(false); }); + test('should limit initial default value to minRefreshIntervalDefault', () => { + timefilter = new Timefilter( + { + ...defaultTimefilterConfig, + refreshIntervalDefaults: { pause: false, value: minRefreshIntervalDefault - 100 }, + }, + timefilterSetupMock.history, + nowProviderMock + ); + setup(); + + expect(timefilter.isRefreshIntervalTouched()).toBe(false); + expect(timefilter.getRefreshInterval()).toEqual({ + pause: false, + value: minRefreshIntervalDefault, + }); + }); + + test('should pause if initial value is set to 0 regardless of minRefreshInterval', () => { + timefilter = new Timefilter( + { + ...defaultTimefilterConfig, + refreshIntervalDefaults: { pause: false, value: 0 }, + }, + timefilterSetupMock.history, + nowProviderMock + ); + + expect(timefilter.getRefreshInterval()).toEqual({ + pause: true, + value: minRefreshIntervalDefault, + }); + }); + test('should register changes to the initial interval', () => { - timefilter.setRefreshInterval(timefilterConfig.refreshIntervalDefaults); + timefilter.setRefreshInterval(defaultTimefilterConfig.refreshIntervalDefaults); expect(timefilter.isRefreshIntervalTouched()).toBe(false); - timefilter.setRefreshInterval({ pause: false, value: 1000 }); + timefilter.setRefreshInterval({ pause: false, value: 5000 }); expect(timefilter.isRefreshIntervalTouched()).toBe(true); }); test('should update refresh interval', () => { - timefilter.setRefreshInterval({ pause: true, value: 10 }); - expect(timefilter.getRefreshInterval()).toEqual({ pause: true, value: 10 }); + timefilter.setRefreshInterval({ pause: true, value: 5000 }); + expect(timefilter.getRefreshInterval()).toEqual({ pause: true, value: 5000 }); }); test('should not add unexpected object keys to refreshInterval state', () => { @@ -165,23 +214,40 @@ describe('setRefreshInterval', () => { }); test('should allow partial updates to refresh interval', () => { - timefilter.setRefreshInterval({ value: 10 }); - expect(timefilter.getRefreshInterval()).toEqual({ pause: true, value: 10 }); + const { pause } = timefilter.getRefreshInterval(); + timefilter.setRefreshInterval({ value: 5000 }); + expect(timefilter.getRefreshInterval()).toEqual({ pause, value: 5000 }); }); test('should not allow negative intervals', () => { timefilter.setRefreshInterval({ value: -10 }); - expect(timefilter.getRefreshInterval()).toEqual({ pause: true, value: 0 }); + expect(timefilter.getRefreshInterval()).toEqual({ pause: false, value: 1000 }); }); test('should set pause to true when interval is changed to zero from non-zero', () => { + timefilter = new Timefilter( + { + ...defaultTimefilterConfig, + minRefreshIntervalDefault: 0, + }, + timefilterSetupMock.history, + nowProviderMock + ); + setup(); + timefilter.setRefreshInterval({ value: 1000, pause: false }); timefilter.setRefreshInterval({ value: 0, pause: false }); expect(timefilter.getRefreshInterval()).toEqual({ pause: true, value: 0 }); }); + test('should pause when interval is set to zero regardless of minRefreshInterval', () => { + timefilter.setRefreshInterval({ value: 5000, pause: false }); + timefilter.setRefreshInterval({ value: 0 }); + expect(timefilter.getRefreshInterval()).toEqual({ pause: true, value: 1000 }); + }); + test('not emit anything if nothing has changed', () => { - timefilter.setRefreshInterval({ pause: false, value: 0 }); + timefilter.setRefreshInterval(timefilter.getRefreshInterval()); expect(update.called).toBe(false); expect(fetch.called).toBe(false); }); @@ -192,7 +258,25 @@ describe('setRefreshInterval', () => { expect(fetch.called).toBe(false); }); + test('should not emit update, nor fetch, when setting interval below min', () => { + const prevInterval = timefilter.getRefreshInterval(); + timefilter.setRefreshInterval({ value: minRefreshIntervalDefault - 100 }); + expect(update.called).toBe(false); + expect(fetch.called).toBe(false); + expect(timefilter.getRefreshInterval()).toEqual(prevInterval); + }); + test('emit update, not fetch, when switching to value: 0', () => { + timefilter = new Timefilter( + { + ...defaultTimefilterConfig, + minRefreshIntervalDefault: 0, + }, + timefilterSetupMock.history, + nowProviderMock + ); + setup(); + timefilter.setRefreshInterval({ pause: false, value: 5000 }); expect(update.calledOnce).toBe(true); expect(fetch.calledOnce).toBe(true); diff --git a/src/plugins/data/public/query/timefilter/timefilter.ts b/src/plugins/data/public/query/timefilter/timefilter.ts index 11c44bd296640..19ed99173411a 100644 --- a/src/plugins/data/public/query/timefilter/timefilter.ts +++ b/src/plugins/data/public/query/timefilter/timefilter.ts @@ -27,7 +27,6 @@ import { createAutoRefreshLoop, AutoRefreshDoneFn } from './lib/auto_refresh_loo export type { AutoRefreshDoneFn }; -// TODO: remove! export class Timefilter { // Fired when isTimeRangeSelectorEnabled \ isAutoRefreshSelectorEnabled are toggled private enabledUpdated$ = new BehaviorSubject(false); @@ -41,6 +40,7 @@ export class Timefilter { // Denotes whether setTime has been called, can be used to determine if the constructor defaults are being used. private _isTimeTouched: boolean = false; private _refreshInterval!: RefreshInterval; + private _minRefreshInterval: number; // Denotes whether the refresh interval defaults were overriden. private _isRefreshIntervalTouched: boolean = false; private _history: TimeHistoryContract; @@ -61,7 +61,15 @@ export class Timefilter { ) { this._history = timeHistory; this.timeDefaults = config.timeDefaults; - this.refreshIntervalDefaults = config.refreshIntervalDefaults; + + // Initialize 0ms intervals with pause set to true and min value + this.refreshIntervalDefaults = { + pause: + config.refreshIntervalDefaults.value === 0 ? true : config.refreshIntervalDefaults.pause, + value: Math.max(config.refreshIntervalDefaults.value, config.minRefreshIntervalDefault), + }; + + this._minRefreshInterval = config.minRefreshIntervalDefault; this._time = config.timeDefaults; this.setRefreshInterval(config.refreshIntervalDefaults); } @@ -148,6 +156,10 @@ export class Timefilter { return _.clone(this._refreshInterval); }; + public getMinRefreshInterval = () => { + return this._minRefreshInterval; + }; + /** * Set timefilter refresh interval. * @param {Object} refreshInterval @@ -157,6 +169,16 @@ export class Timefilter { public setRefreshInterval = (refreshInterval: Partial) => { const prevRefreshInterval = this.getRefreshInterval(); const newRefreshInterval = { ...prevRefreshInterval, ...refreshInterval }; + + if (newRefreshInterval.value === 0) { + // override only when explicitly set to 0 + newRefreshInterval.pause = true; + } + + if (newRefreshInterval.value < this._minRefreshInterval) { + newRefreshInterval.value = this._minRefreshInterval; + } + let shouldUnpauseRefreshLoop = newRefreshInterval.pause === false && prevRefreshInterval != null; if (prevRefreshInterval?.value > 0 && newRefreshInterval.value <= 0) { diff --git a/src/plugins/data/public/query/timefilter/timefilter_service.mock.ts b/src/plugins/data/public/query/timefilter/timefilter_service.mock.ts index 03e7bed0545d1..27b25ddee9635 100644 --- a/src/plugins/data/public/query/timefilter/timefilter_service.mock.ts +++ b/src/plugins/data/public/query/timefilter/timefilter_service.mock.ts @@ -28,6 +28,7 @@ const createSetupContractMock = () => { setTime: jest.fn(), setRefreshInterval: jest.fn(), getRefreshInterval: jest.fn(), + getMinRefreshInterval: jest.fn().mockReturnValue(1000), getActiveBounds: jest.fn(), disableAutoRefreshSelector: jest.fn(), disableTimeRangeSelector: jest.fn(), diff --git a/src/plugins/data/public/query/timefilter/timefilter_service.ts b/src/plugins/data/public/query/timefilter/timefilter_service.ts index a8c9b7a759e9e..d9c026c956165 100644 --- a/src/plugins/data/public/query/timefilter/timefilter_service.ts +++ b/src/plugins/data/public/query/timefilter/timefilter_service.ts @@ -8,27 +8,38 @@ import { IUiSettingsClient } from '@kbn/core/public'; import { IStorageWrapper } from '@kbn/kibana-utils-plugin/public'; -import { TimeHistory, Timefilter, TimeHistoryContract, TimefilterContract } from '.'; +import { + TimeHistory, + Timefilter, + TimeHistoryContract, + TimefilterContract, + TimefilterConfig, +} from '.'; import { UI_SETTINGS } from '../../../common'; import { NowProviderInternalContract } from '../../now_provider'; -/** - * Filter Service - * @internal - */ - export interface TimeFilterServiceDependencies { uiSettings: IUiSettingsClient; storage: IStorageWrapper; + minRefreshInterval: number; } +/** + * Filter Service + * @internal + */ export class TimefilterService { constructor(private readonly nowProvider: NowProviderInternalContract) {} - public setup({ uiSettings, storage }: TimeFilterServiceDependencies): TimefilterSetup { - const timefilterConfig = { + public setup({ + uiSettings, + storage, + minRefreshInterval, + }: TimeFilterServiceDependencies): TimefilterSetup { + const timefilterConfig: TimefilterConfig = { timeDefaults: uiSettings.get(UI_SETTINGS.TIMEPICKER_TIME_DEFAULTS), refreshIntervalDefaults: uiSettings.get(UI_SETTINGS.TIMEPICKER_REFRESH_INTERVAL_DEFAULTS), + minRefreshIntervalDefault: minRefreshInterval, }; const history = new TimeHistory(storage); const timefilter = new Timefilter(timefilterConfig, history, this.nowProvider); diff --git a/src/plugins/data/public/query/timefilter/types.ts b/src/plugins/data/public/query/timefilter/types.ts index 1392022768fa7..f3cc8f5869a19 100644 --- a/src/plugins/data/public/query/timefilter/types.ts +++ b/src/plugins/data/public/query/timefilter/types.ts @@ -14,6 +14,7 @@ import { RefreshInterval } from '../../../common'; export interface TimefilterConfig { timeDefaults: TimeRange; refreshIntervalDefaults: RefreshInterval; + minRefreshIntervalDefault: number; } // Timefilter accepts moment input but always returns string output diff --git a/src/plugins/data/server/index.ts b/src/plugins/data/server/index.ts index e1d2080b6c59f..7a41c20094d6e 100644 --- a/src/plugins/data/server/index.ts +++ b/src/plugins/data/server/index.ts @@ -107,6 +107,7 @@ export const config: PluginConfigDescriptor = { deprecations: configDeprecationProvider, exposeToBrowser: { search: true, + query: true, }, schema: configSchema, }; diff --git a/src/plugins/discover/public/application/main/state_management/discover_data_state_container.ts b/src/plugins/discover/public/application/main/state_management/discover_data_state_container.ts index 6e34982dc91ae..d943dba36f9e2 100644 --- a/src/plugins/discover/public/application/main/state_management/discover_data_state_container.ts +++ b/src/plugins/discover/public/application/main/state_management/discover_data_state_container.ts @@ -185,7 +185,7 @@ export function getDataStateContainer({ totalHits$: new BehaviorSubject(initialState), }; - let autoRefreshDone: AutoRefreshDoneFn | undefined; + let autoRefreshDone: AutoRefreshDoneFn | undefined | null = null; /** * handler emitted by `timefilter.getAutoRefreshFetch$()` * to notify when data completed loading and to start a new autorefresh loop @@ -304,8 +304,8 @@ export function getDataStateContainer({ // If the autoRefreshCallback is still the same as when we started i.e. there was no newer call // replacing this current one, call it to make sure we tell that the auto refresh is done - // and a new one can be scheduled. - if (autoRefreshDone === prevAutoRefreshDone) { + // and a new one can be scheduled. null is checked to always start initial looping. + if (autoRefreshDone === prevAutoRefreshDone || prevAutoRefreshDone === null) { // if this function was set and is executed, another refresh fetch can be triggered autoRefreshDone?.(); autoRefreshDone = undefined; diff --git a/src/plugins/home/server/services/sample_data/data_sets/ecommerce/saved_objects.ts b/src/plugins/home/server/services/sample_data/data_sets/ecommerce/saved_objects.ts index 812052480e8b2..d3cca336413b8 100644 --- a/src/plugins/home/server/services/sample_data/data_sets/ecommerce/saved_objects.ts +++ b/src/plugins/home/server/services/sample_data/data_sets/ecommerce/saved_objects.ts @@ -141,7 +141,7 @@ export const getSavedObjects = (): SavedObject[] => [ description: 'Analyze mock eCommerce orders and revenue', refreshInterval: { pause: true, - value: 0, + value: 60000, }, timeRestore: true, optionsJSON: diff --git a/src/plugins/home/server/services/sample_data/data_sets/flights/saved_objects.ts b/src/plugins/home/server/services/sample_data/data_sets/flights/saved_objects.ts index 3c3bf07f28da5..fcc780f8b7b64 100644 --- a/src/plugins/home/server/services/sample_data/data_sets/flights/saved_objects.ts +++ b/src/plugins/home/server/services/sample_data/data_sets/flights/saved_objects.ts @@ -141,7 +141,7 @@ export const getSavedObjects = (): SavedObject[] => [ 'Analyze mock flight data for ES-Air, Logstash Airways, Kibana Airlines and JetBeats', refreshInterval: { pause: true, - value: 0, + value: 60000, }, timeRestore: true, optionsJSON: diff --git a/src/plugins/home/server/services/sample_data/data_sets/logs/saved_objects.ts b/src/plugins/home/server/services/sample_data/data_sets/logs/saved_objects.ts index c0140bd89283d..d4a3fd466ba0d 100644 --- a/src/plugins/home/server/services/sample_data/data_sets/logs/saved_objects.ts +++ b/src/plugins/home/server/services/sample_data/data_sets/logs/saved_objects.ts @@ -305,8 +305,8 @@ export const getSavedObjects = (): SavedObject[] => [ }, description: "Analyze mock web traffic log data for Elastic's website", refreshInterval: { - pause: false, - value: 900000, + pause: true, + value: 60000, }, timeRestore: true, optionsJSON: diff --git a/src/plugins/home/server/tutorials/register.ts b/src/plugins/home/server/tutorials/register.ts index bc8c85c43e691..42e1d425cf539 100644 --- a/src/plugins/home/server/tutorials/register.ts +++ b/src/plugins/home/server/tutorials/register.ts @@ -98,7 +98,6 @@ import { redisenterpriseMetricsSpecProvider } from './redisenterprise_metrics'; import { santaLogsSpecProvider } from './santa_logs'; import { sonicwallLogsSpecProvider } from './sonicwall_logs'; import { sophosLogsSpecProvider } from './sophos_logs'; -import { squidLogsSpecProvider } from './squid_logs'; import { stanMetricsSpecProvider } from './stan_metrics'; import { statsdMetricsSpecProvider } from './statsd_metrics'; import { suricataLogsSpecProvider } from './suricata_logs'; @@ -223,7 +222,6 @@ export const builtInTutorials = [ santaLogsSpecProvider, sonicwallLogsSpecProvider, sophosLogsSpecProvider, - squidLogsSpecProvider, tomcatLogsSpecProvider, zscalerLogsSpecProvider, ]; diff --git a/src/plugins/home/server/tutorials/squid_logs/index.ts b/src/plugins/home/server/tutorials/squid_logs/index.ts deleted file mode 100644 index 05b76ab92bcc5..0000000000000 --- a/src/plugins/home/server/tutorials/squid_logs/index.ts +++ /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 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 or the Server - * Side Public License, v 1. - */ - -import { i18n } from '@kbn/i18n'; -import { TutorialsCategory } from '../../services/tutorials'; -import { - onPremInstructions, - cloudInstructions, - onPremCloudInstructions, -} from '../instructions/filebeat_instructions'; -import { - TutorialContext, - TutorialSchema, -} from '../../services/tutorials/lib/tutorials_registry_types'; - -export function squidLogsSpecProvider(context: TutorialContext): TutorialSchema { - const moduleName = 'squid'; - const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const; - return { - id: 'squidLogs', - name: i18n.translate('home.tutorials.squidLogs.nameTitle', { - defaultMessage: 'Squid Logs', - }), - moduleName, - category: TutorialsCategory.SECURITY_SOLUTION, - shortDescription: i18n.translate('home.tutorials.squidLogs.shortDescription', { - defaultMessage: 'Collect and parse logs from Squid servers with Filebeat.', - }), - longDescription: i18n.translate('home.tutorials.squidLogs.longDescription', { - defaultMessage: - 'This is a module for receiving Squid logs over Syslog or a file. \ -[Learn more]({learnMoreLink}).', - values: { - learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-squid.html', - }, - }), - euiIconType: 'logoLogging', - artifacts: { - dashboards: [], - application: { - path: '/app/security', - label: i18n.translate('home.tutorials.squidLogs.artifacts.dashboards.linkLabel', { - defaultMessage: 'Security App', - }), - }, - exportedFields: { - documentationUrl: '{config.docs.beats.filebeat}/exported-fields-squid.html', - }, - }, - completionTimeMinutes: 10, - onPrem: onPremInstructions(moduleName, platforms, context), - elasticCloud: cloudInstructions(moduleName, platforms, context), - onPremElasticCloud: onPremCloudInstructions(moduleName, platforms, context), - integrationBrowserCategories: ['security', 'network', 'proxy_security'], - }; -} diff --git a/src/plugins/navigation/public/top_nav_menu/top_nav_menu.tsx b/src/plugins/navigation/public/top_nav_menu/top_nav_menu.tsx index 56daf31fb0703..f4c23d41e01ee 100644 --- a/src/plugins/navigation/public/top_nav_menu/top_nav_menu.tsx +++ b/src/plugins/navigation/public/top_nav_menu/top_nav_menu.tsx @@ -79,7 +79,7 @@ export function TopNavMenu( } function renderSearchBar(): ReactElement | null { - // Validate presense of all required fields + // Validate presence of all required fields if (!showSearchBar || !props.unifiedSearch) return null; const { AggregateQuerySearchBar } = props.unifiedSearch.ui; return {...searchBarProps} />; diff --git a/src/plugins/presentation_util/public/mocks.ts b/src/plugins/presentation_util/public/mocks.ts index b8a69d21916a8..17e3031d4492b 100644 --- a/src/plugins/presentation_util/public/mocks.ts +++ b/src/plugins/presentation_util/public/mocks.ts @@ -38,3 +38,6 @@ export const mockedReduxEmbeddablePackage: ReduxToolsPackage = { }; export * from './__stories__/fixtures/flights'; +export const setMockedPresentationUtilServices = () => { + pluginServices.setRegistry(stubRegistry.start({})); +}; diff --git a/src/plugins/saved_objects_management/public/management_section/objects_table/components/__snapshots__/table.test.tsx.snap b/src/plugins/saved_objects_management/public/management_section/objects_table/components/__snapshots__/table.test.tsx.snap index 5702690033996..817c6ba6e23a7 100644 --- a/src/plugins/saved_objects_management/public/management_section/objects_table/components/__snapshots__/table.test.tsx.snap +++ b/src/plugins/saved_objects_management/public/management_section/objects_table/components/__snapshots__/table.test.tsx.snap @@ -121,9 +121,7 @@ exports[`Table prevents hidden saved objects from being deleted 1`] = ` ] } /> - +
@@ -355,9 +353,7 @@ exports[`Table should render normally 1`] = ` ] } /> - +
diff --git a/src/plugins/saved_objects_management/public/management_section/objects_table/components/table.tsx b/src/plugins/saved_objects_management/public/management_section/objects_table/components/table.tsx index 6edd1d93fd7fd..b07bf84c1ac03 100644 --- a/src/plugins/saved_objects_management/public/management_section/objects_table/components/table.tsx +++ b/src/plugins/saved_objects_management/public/management_section/objects_table/components/table.tsx @@ -468,7 +468,7 @@ export class Table extends PureComponent { ]} /> {queryParseError} - + {exceededResultCount && ( <> diff --git a/src/plugins/unified_doc_viewer/public/components/doc_viewer_logs_overview/logs_overview_header.tsx b/src/plugins/unified_doc_viewer/public/components/doc_viewer_logs_overview/logs_overview_header.tsx index 4bbc2993dedb0..c5b3b987c66a1 100644 --- a/src/plugins/unified_doc_viewer/public/components/doc_viewer_logs_overview/logs_overview_header.tsx +++ b/src/plugins/unified_doc_viewer/public/components/doc_viewer_logs_overview/logs_overview_header.tsx @@ -43,7 +43,7 @@ export function LogsOverviewHeader({ doc }: { doc: LogDocumentOverview }) { }); const accordionTitle = ( - +

{contentLabel}

); @@ -80,7 +80,7 @@ export function LogsOverviewHeader({ doc }: { doc: LogDocumentOverview }) { {logLevelAndTimestamp} - + {value} diff --git a/src/plugins/unified_search/public/query_string_input/query_bar_top_row.tsx b/src/plugins/unified_search/public/query_string_input/query_bar_top_row.tsx index 60d160aa943db..c685af3336551 100644 --- a/src/plugins/unified_search/public/query_string_input/query_bar_top_row.tsx +++ b/src/plugins/unified_search/public/query_string_input/query_bar_top_row.tsx @@ -152,6 +152,7 @@ export interface QueryBarTopRowProps prepend?: React.ComponentProps['prepend']; query?: Query | QT; refreshInterval?: number; + minRefreshInterval?: number; screenTitle?: string; showQueryInput?: boolean; showAddFilter?: boolean; @@ -503,6 +504,7 @@ export const QueryBarTopRow = React.memo( end={props.dateRangeTo} isPaused={props.isRefreshPaused} refreshInterval={props.refreshInterval} + refreshMinInterval={props.minRefreshInterval} onTimeChange={onTimeChange} onRefresh={onRefresh} onRefreshChange={props.onRefreshChange} diff --git a/src/plugins/unified_search/public/search_bar/create_search_bar.tsx b/src/plugins/unified_search/public/search_bar/create_search_bar.tsx index 38e3b11ae15e7..4f2a609c93cbc 100644 --- a/src/plugins/unified_search/public/search_bar/create_search_bar.tsx +++ b/src/plugins/unified_search/public/search_bar/create_search_bar.tsx @@ -171,7 +171,7 @@ export function createSearchBar({ query: props.query, queryStringManager: data.query.queryString, }) as { query: QT }; - const { timeRange, refreshInterval } = useTimefilter({ + const { timeRange, refreshInterval, minRefreshInterval } = useTimefilter({ dateRangeFrom: props.dateRangeFrom, dateRangeTo: props.dateRangeTo, refreshInterval: props.refreshInterval, @@ -232,6 +232,7 @@ export function createSearchBar({ timeHistory={data.query.timefilter.history} dateRangeFrom={timeRange.from} dateRangeTo={timeRange.to} + minRefreshInterval={minRefreshInterval} refreshInterval={refreshInterval.value} isRefreshPaused={refreshInterval.pause} isLoading={props.isLoading} diff --git a/src/plugins/unified_search/public/search_bar/lib/use_timefilter.ts b/src/plugins/unified_search/public/search_bar/lib/use_timefilter.ts index ddfff690fce81..de13936bed8d7 100644 --- a/src/plugins/unified_search/public/search_bar/lib/use_timefilter.ts +++ b/src/plugins/unified_search/public/search_bar/lib/use_timefilter.ts @@ -59,5 +59,6 @@ export const useTimefilter = (props: UseTimefilterProps) => { return { refreshInterval, timeRange, + minRefreshInterval: props.timefilter.getMinRefreshInterval(), }; }; diff --git a/src/plugins/unified_search/public/search_bar/search_bar.tsx b/src/plugins/unified_search/public/search_bar/search_bar.tsx index 2d7ce30423fc3..992f6290b53e8 100644 --- a/src/plugins/unified_search/public/search_bar/search_bar.tsx +++ b/src/plugins/unified_search/public/search_bar/search_bar.tsx @@ -79,6 +79,7 @@ export interface SearchBarOwnProps { // Date picker isRefreshPaused?: boolean; refreshInterval?: number; + minRefreshInterval?: number; dateRangeFrom?: string; dateRangeTo?: string; // Query bar - should be in SearchBarInjectedDeps @@ -619,6 +620,7 @@ class SearchBarUI extends C dateRangeTo={this.state.dateRangeTo} isRefreshPaused={this.props.isRefreshPaused} refreshInterval={this.props.refreshInterval} + minRefreshInterval={this.props.minRefreshInterval} showAutoRefreshOnly={this.props.showAutoRefreshOnly} showQueryInput={this.props.showQueryInput} showAddFilter={this.props.showFilterBar} diff --git a/src/plugins/usage_collection/server/index.ts b/src/plugins/usage_collection/server/index.ts index bdac41e9c04da..8de2a99d30e7d 100644 --- a/src/plugins/usage_collection/server/index.ts +++ b/src/plugins/usage_collection/server/index.ts @@ -28,7 +28,7 @@ export type { export { serializeCounterKey, USAGE_COUNTERS_SAVED_OBJECT_TYPE } from './usage_counters'; -export type { UsageCollectionSetup } from './plugin'; +export type { UsageCollectionSetup, UsageCollectionStart } from './plugin'; export { config } from './config'; export const plugin = async (initializerContext: PluginInitializerContext) => { const { UsageCollectionPlugin } = await import('./plugin'); diff --git a/test/accessibility/apps/dashboard.ts b/test/accessibility/apps/dashboard.ts index 268bf06bc4b17..972f8f00d5d3f 100644 --- a/test/accessibility/apps/dashboard.ts +++ b/test/accessibility/apps/dashboard.ts @@ -20,7 +20,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const dashboardName = 'Dashboard Listing A11y'; const clonedDashboardName = 'Dashboard Listing A11y (1)'; - it('dashboard', async () => { + it('navitate to dashboard app', async () => { await PageObjects.common.navigateToApp('dashboard'); await a11y.testAppSnapshot(); }); @@ -61,7 +61,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await a11y.testAppSnapshot(); }); - it('Open Edit mode', async () => { + it('Open Edit mode again', async () => { await PageObjects.dashboard.switchToEditMode(); await a11y.testAppSnapshot(); }); @@ -86,7 +86,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await a11y.testAppSnapshot(); }); - it('Open add panel', async () => { + it('Open add panel again', async () => { await dashboardAddPanel.clickOpenAddPanel(); await a11y.testAppSnapshot(); }); diff --git a/test/accessibility/apps/management.ts b/test/accessibility/apps/management.ts index 25db943a8fcf1..e04f576600cbc 100644 --- a/test/accessibility/apps/management.ts +++ b/test/accessibility/apps/management.ts @@ -25,7 +25,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await a11y.testAppSnapshot(); }); - describe('data views', async () => { + describe('data views', () => { before(async () => { await esArchiver.loadIfNeeded('test/functional/fixtures/es_archiver/logstash_functional'); await kibanaServer.importExport.load('test/functional/fixtures/kbn_archiver/discover'); diff --git a/test/api_integration/apis/custom_integration/integrations.ts b/test/api_integration/apis/custom_integration/integrations.ts index fd974a92adb1e..5a5284dd0a63d 100644 --- a/test/api_integration/apis/custom_integration/integrations.ts +++ b/test/api_integration/apis/custom_integration/integrations.ts @@ -40,7 +40,7 @@ export default function ({ getService }: FtrProviderContext) { expect(resp.body).to.be.an('array'); - expect(resp.body.length).to.be(109); // the beats + expect(resp.body.length).to.be(108); // the beats }); }); }); diff --git a/test/api_integration/apis/data_views/fields_route/cache.ts b/test/api_integration/apis/data_views/fields_route/cache.ts index dea14dec6bdcd..4a5505a772979 100644 --- a/test/api_integration/apis/data_views/fields_route/cache.ts +++ b/test/api_integration/apis/data_views/fields_route/cache.ts @@ -58,7 +58,7 @@ export default function ({ getService }: FtrProviderContext) { expect(response.get('vary')).to.equal('accept-encoding, user-hash'); expect(response.get('etag')).to.not.be.empty(); - kibanaServer.uiSettings.replace({ 'data_views:cache_max_age': 5 }); + await kibanaServer.uiSettings.replace({ 'data_views:cache_max_age': 5 }); }); it('returns 304 on matching etag', async () => { diff --git a/test/common/config.js b/test/common/config.js index 2c707d3b6856a..163703a693356 100644 --- a/test/common/config.js +++ b/test/common/config.js @@ -42,6 +42,7 @@ export default function () { `--elasticsearch.password=${kibanaServerTestUser.password}`, // Needed for async search functional tests to introduce a delay `--data.search.aggs.shardDelay.enabled=true`, + `--data.query.timefilter.minRefreshInterval=1000`, `--security.showInsecureClusterWarning=false`, '--telemetry.banner=false', '--telemetry.optIn=false', diff --git a/test/functional/apps/console/ace/_autocomplete.ts b/test/functional/apps/console/ace/_autocomplete.ts index fe329e8d2c320..afab6361152c6 100644 --- a/test/functional/apps/console/ace/_autocomplete.ts +++ b/test/functional/apps/console/ace/_autocomplete.ts @@ -8,7 +8,6 @@ import _ from 'lodash'; import expect from '@kbn/expect'; -import { asyncForEach } from '@kbn/std'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function ({ getService, getPageObjects }: FtrProviderContext) { @@ -17,6 +16,24 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const PageObjects = getPageObjects(['common', 'console', 'header']); const find = getService('find'); + async function runTemplateTest(type: string, template: string) { + await PageObjects.console.enterText(`{\n\t"type": "${type}"`); + await PageObjects.console.pressEnter(); + await PageObjects.console.sleepForDebouncePeriod(); + // Prompt autocomplete for 'settings' + await PageObjects.console.promptAutocomplete('s'); + + await retry.waitFor('autocomplete to be visible', () => + PageObjects.console.isAutocompleteVisible() + ); + await PageObjects.console.pressEnter(); + await retry.try(async () => { + const request = await PageObjects.console.getRequest(); + log.debug(request); + expect(request).to.contain(`${template}`); + }); + } + describe('console autocomplete feature', function describeIndexTests() { this.tags('includeFirefox'); before(async () => { @@ -365,47 +382,27 @@ GET _search }); }); - describe('with conditional templates', async () => { - const CONDITIONAL_TEMPLATES = [ - { - type: 'fs', - template: `"location": "path"`, - }, - { - type: 'url', - template: `"url": ""`, - }, - { type: 's3', template: `"bucket": ""` }, - { - type: 'azure', - template: `"path": ""`, - }, - ]; - + describe('with conditional templates', () => { beforeEach(async () => { await PageObjects.console.clearTextArea(); await PageObjects.console.enterRequest('\n POST _snapshot/test_repo'); await PageObjects.console.pressEnter(); }); - await asyncForEach(CONDITIONAL_TEMPLATES, async ({ type, template }) => { - it('should insert different templates depending on the value of type', async () => { - await PageObjects.console.enterText(`{\n\t"type": "${type}"`); - await PageObjects.console.pressEnter(); - await PageObjects.console.sleepForDebouncePeriod(); - // Prompt autocomplete for 'settings' - await PageObjects.console.promptAutocomplete('s'); + it('should insert fs template', async () => { + await runTemplateTest('fs', `"location": "path"`); + }); - await retry.waitFor('autocomplete to be visible', () => - PageObjects.console.isAutocompleteVisible() - ); - await PageObjects.console.pressEnter(); - await retry.try(async () => { - const request = await PageObjects.console.getRequest(); - log.debug(request); - expect(request).to.contain(`${template}`); - }); - }); + it('should insert url template', async () => { + await runTemplateTest('url', `"url": ""`); + }); + + it('should insert s3 template', async () => { + await runTemplateTest('s3', `"bucket": ""`); + }); + + it('should insert azure template', async () => { + await runTemplateTest('azure', `"path": ""`); }); }); }); diff --git a/test/functional/apps/console/ace/_comments.ts b/test/functional/apps/console/ace/_comments.ts index 8ef708d68b44f..b81fb3c2e4e2d 100644 --- a/test/functional/apps/console/ace/_comments.ts +++ b/test/functional/apps/console/ace/_comments.ts @@ -7,7 +7,6 @@ */ import expect from '@kbn/expect'; -import { asyncForEach } from '@kbn/std'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function ({ getService, getPageObjects }: FtrProviderContext) { @@ -15,6 +14,18 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const retry = getService('retry'); const PageObjects = getPageObjects(['common', 'console', 'header']); + const enterRequest = async (url: string, body: string) => { + await PageObjects.console.clearTextArea(); + await PageObjects.console.enterRequest(url); + await PageObjects.console.pressEnter(); + await PageObjects.console.enterText(body); + }; + + async function runTest(input: { url?: string; body: string }, fn: () => Promise) { + await enterRequest(input.url ?? '\nGET search', input.body); + await fn(); + } + // Failing: See https://github.com/elastic/kibana/issues/138160 describe.skip('console app', function testComments() { this.tags('includeFirefox'); @@ -27,130 +38,193 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('with comments', async () => { - const enterRequest = async (url: string, body: string) => { - await PageObjects.console.clearTextArea(); - await PageObjects.console.enterRequest(url); - await PageObjects.console.pressEnter(); - await PageObjects.console.enterText(body); - }; - - async function runTests( - tests: Array<{ description: string; url?: string; body: string }>, - fn: () => Promise - ) { - await asyncForEach(tests, async ({ description, url, body }) => { - it(description, async () => { - await enterRequest(url ?? '\nGET search', body); - await fn(); - }); - }); - } - - describe('with single line comments', async () => { - await runTests( - [ + describe('with comments', () => { + describe('with single line comments', () => { + it('should allow in request url, using //', async () => { + await runTest( { url: '\n// GET _search', body: '', - description: 'should allow in request url, using //', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should allow in request body, using //', async () => { + await runTest( { body: '{\n\t\t"query": {\n\t\t\t// "match_all": {}', - description: 'should allow in request body, using //', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should allow in request url, using #', async () => { + await runTest( { url: '\n # GET _search', body: '', - description: 'should allow in request url, using #', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should allow in request body, using #', async () => { + await runTest( { body: '{\n\t\t"query": {\n\t\t\t# "match_all": {}', - description: 'should allow in request body, using #', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should accept as field names, using //', async () => { + await runTest( { - description: 'should accept as field names, using //', body: '{\n "//": {}', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should accept as field values, using //', async () => { + await runTest( { - description: 'should accept as field values, using //', body: '{\n "f": "//"', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should accept as field names, using #', async () => { + await runTest( { - description: 'should accept as field names, using #', body: '{\n "#": {}', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should accept as field values, using #', async () => { + await runTest( { - description: 'should accept as field values, using #', body: '{\n "f": "#"', }, - ], - async () => { - expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); - expect(await PageObjects.console.hasErrorMarker()).to.be(false); - } - ); + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); }); - describe('with multiline comments', async () => { - await runTests( - [ + describe('with multiline comments', () => { + it('should allow in request url, using /* */', async () => { + await runTest( { url: '\n /* \nGET _search \n*/', body: '', - description: 'should allow in request url, using /* */', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should allow in request body, using /* */', async () => { + await runTest( { body: '{\n\t\t"query": {\n\t\t\t/* "match_all": {} */', - description: 'should allow in request body, using /* */', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should accept as field names, using /*', async () => { + await runTest( { - description: 'should accept as field names, using /*', body: '{\n "/*": {} \n\t\t /* "f": 1 */', }, + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); + + it('should accept as field values, using */', async () => { + await runTest( { - description: 'should accept as field values, using */', body: '{\n /* "f": 1 */ \n"f": "*/"', }, - ], - async () => { - expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); - expect(await PageObjects.console.hasErrorMarker()).to.be(false); - } - ); + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(false); + expect(await PageObjects.console.hasErrorMarker()).to.be(false); + } + ); + }); }); - describe('with invalid syntax in request body', async () => { - await runTests( - [ + describe('with invalid syntax in request body', () => { + it('should highlight invalid syntax', async () => { + await runTest( { - description: 'should highlight invalid syntax', body: '{\n "query": \'\'', // E.g. using single quotes }, - ], - - async () => { - expect(await PageObjects.console.hasInvalidSyntax()).to.be(true); - } - ); + async () => { + expect(await PageObjects.console.hasInvalidSyntax()).to.be(true); + } + ); + }); }); - describe('with invalid request', async () => { - await runTests( - [ + describe('with invalid request', () => { + it('with invalid character should display error marker', async () => { + await runTest( { - description: 'with invalid character should display error marker', body: '{\n $ "query": {}', }, + async () => { + expect(await PageObjects.console.hasErrorMarker()).to.be(true); + } + ); + }); + + it('with missing field name', async () => { + await runTest( { - description: 'with missing field name', body: '{\n "query": {},\n {}', }, - ], - async () => { - expect(await PageObjects.console.hasErrorMarker()).to.be(true); - } - ); + async () => { + expect(await PageObjects.console.hasErrorMarker()).to.be(true); + } + ); + }); }); }); }); diff --git a/test/functional/apps/console/monaco/_autocomplete.ts b/test/functional/apps/console/monaco/_autocomplete.ts index b949a979a49db..9f7b3328d42a8 100644 --- a/test/functional/apps/console/monaco/_autocomplete.ts +++ b/test/functional/apps/console/monaco/_autocomplete.ts @@ -8,7 +8,6 @@ import _ from 'lodash'; import expect from '@kbn/expect'; -import { asyncForEach } from '@kbn/std'; import { FtrProviderContext } from '../../../ftr_provider_context'; export default function ({ getService, getPageObjects }: FtrProviderContext) { @@ -17,6 +16,23 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const PageObjects = getPageObjects(['common', 'console', 'header']); const find = getService('find'); + async function runTemplateTest(type: string, template: string) { + await PageObjects.console.monaco.enterText(`{\n\t"type": "${type}",\n`); + await PageObjects.console.sleepForDebouncePeriod(); + // Prompt autocomplete for 'settings' + await PageObjects.console.monaco.promptAutocomplete('s'); + + await retry.waitFor('autocomplete to be visible', () => + PageObjects.console.monaco.isAutocompleteVisible() + ); + await PageObjects.console.monaco.pressEnter(); + await retry.try(async () => { + const request = await PageObjects.console.monaco.getEditorText(); + log.debug(request); + expect(request).to.contain(`${template}`); + }); + } + describe('console autocomplete feature', function describeIndexTests() { this.tags('includeFirefox'); before(async () => { @@ -315,45 +331,26 @@ GET _search }); }); - describe('with conditional templates', async () => { - const CONDITIONAL_TEMPLATES = [ - { - type: 'fs', - template: `"location": "path"`, - }, - { - type: 'url', - template: `"url": ""`, - }, - { type: 's3', template: `"bucket": ""` }, - { - type: 'azure', - template: `"path": ""`, - }, - ]; - + describe('with conditional templates', () => { beforeEach(async () => { await PageObjects.console.monaco.clearEditorText(); await PageObjects.console.monaco.enterText('POST _snapshot/test_repo\n'); }); - await asyncForEach(CONDITIONAL_TEMPLATES, async ({ type, template }) => { - it('should insert different templates depending on the value of type', async () => { - await PageObjects.console.monaco.enterText(`{\n\t"type": "${type}",\n`); - await PageObjects.console.sleepForDebouncePeriod(); - // Prompt autocomplete for 'settings' - await PageObjects.console.monaco.promptAutocomplete('s'); + it('should insert fs template', async () => { + await runTemplateTest('fs', `"location": "path"`); + }); - await retry.waitFor('autocomplete to be visible', () => - PageObjects.console.monaco.isAutocompleteVisible() - ); - await PageObjects.console.monaco.pressEnter(); - await retry.try(async () => { - const request = await PageObjects.console.monaco.getEditorText(); - log.debug(request); - expect(request).to.contain(`${template}`); - }); - }); + it('should insert url template', async () => { + await runTemplateTest('url', `"url": ""`); + }); + + it('should insert s3 template', async () => { + await runTemplateTest('s3', `"bucket": ""`); + }); + + it('should insert azure template', async () => { + await runTemplateTest('azure', `"path": ""`); }); }); diff --git a/test/functional/apps/console/monaco/_comments.ts b/test/functional/apps/console/monaco/_comments.ts index ba8d8b6f04f07..37fcfc3e2db8f 100644 --- a/test/functional/apps/console/monaco/_comments.ts +++ b/test/functional/apps/console/monaco/_comments.ts @@ -23,7 +23,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.console.closeHelpIfExists(); }); - describe('with comments', async () => { + describe('with comments', () => { const enterRequest = async (url: string, body: string) => { await PageObjects.console.monaco.clearEditorText(); await PageObjects.console.monaco.enterText(`${url}\n${body}`); @@ -41,6 +41,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); } + // eslint-disable-next-line mocha/no-async-describe describe('with single line comments', async () => { await runTests( [ @@ -85,6 +86,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); + // eslint-disable-next-line mocha/no-async-describe describe('with multiline comments', async () => { await runTests( [ @@ -112,6 +114,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); + // eslint-disable-next-line mocha/no-async-describe describe('with invalid syntax in request body', async () => { await runTests( [ @@ -127,6 +130,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { ); }); + // eslint-disable-next-line mocha/no-async-describe describe('with invalid request', async () => { await runTests( [ diff --git a/test/functional/apps/dashboard/group3/panel_context_menu.ts b/test/functional/apps/dashboard/group3/panel_context_menu.ts index 56e9deeab4660..a09871f7825b9 100644 --- a/test/functional/apps/dashboard/group3/panel_context_menu.ts +++ b/test/functional/apps/dashboard/group3/panel_context_menu.ts @@ -137,14 +137,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { before('reset dashboard', async () => { const currentUrl = await browser.getCurrentUrl(); await browser.get(currentUrl.toString(), false); - }); - - before('and add one panel and save to put dashboard in "view" mode', async () => { await dashboardAddPanel.addVisualization(PIE_CHART_VIS_NAME); await PageObjects.dashboard.saveDashboard(dashboardName + '2'); - }); - - before('expand panel to "full screen"', async () => { await dashboardPanelActions.clickExpandPanelToggle(); }); diff --git a/test/functional/apps/dashboard/group4/dashboard_listing.ts b/test/functional/apps/dashboard/group4/dashboard_listing.ts index 36e99d0e5c8c1..8a5e121f659cf 100644 --- a/test/functional/apps/dashboard/group4/dashboard_listing.ts +++ b/test/functional/apps/dashboard/group4/dashboard_listing.ts @@ -15,6 +15,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const browser = getService('browser'); const listingTable = getService('listingTable'); const dashboardAddPanel = getService('dashboardAddPanel'); + const testSubjects = getService('testSubjects'); describe('dashboard listing page', function describeIndexTests() { const dashboardName = 'Dashboard Listing Test'; @@ -234,5 +235,43 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { expect(newPanelCount).to.equal(originalPanelCount); }); }); + + describe('insights', () => { + const DASHBOARD_NAME = 'Insights Dashboard'; + + before(async () => { + await PageObjects.dashboard.navigateToApp(); + await PageObjects.dashboard.clickNewDashboard(); + await PageObjects.dashboard.saveDashboard(DASHBOARD_NAME, { + saveAsNew: true, + waitDialogIsClosed: false, + exitFromEditMode: false, + }); + await PageObjects.dashboard.gotoDashboardLandingPage(); + }); + + it('shows the insights panel and counts the views', async () => { + await listingTable.searchForItemWithName(DASHBOARD_NAME); + + async function getViewsCount() { + await listingTable.inspectVisualization(); + const totalViewsStats = await testSubjects.find('views-stats-total-views'); + const viewsStr = await ( + await totalViewsStats.findByCssSelector('.euiStat__title') + ).getVisibleText(); + await listingTable.closeInspector(); + return Number(viewsStr); + } + + const views1 = await getViewsCount(); + expect(views1).to.be(1); + + await listingTable.clickItemLink('dashboard', DASHBOARD_NAME); + await PageObjects.dashboard.waitForRenderComplete(); + await PageObjects.dashboard.gotoDashboardLandingPage(); + const views2 = await getViewsCount(); + expect(views2).to.be(2); + }); + }); }); } diff --git a/test/functional/apps/dashboard/group5/legacy_urls.ts b/test/functional/apps/dashboard/group5/legacy_urls.ts index 0d09ba7a7ca79..566bc861c1ee8 100644 --- a/test/functional/apps/dashboard/group5/legacy_urls.ts +++ b/test/functional/apps/dashboard/group5/legacy_urls.ts @@ -93,7 +93,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.visualize.saveVisualizationExpectSuccess('legacy url markdown'); - (await find.byLinkText('abc')).click(); + await (await find.byLinkText('abc')).click(); await PageObjects.header.waitUntilLoadingHasFinished(); await PageObjects.timePicker.setDefaultDataRange(); @@ -115,7 +115,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.dashboard.navigateToApp(); await PageObjects.dashboard.clickNewDashboard(); await dashboardAddPanel.addVisualization('legacy url markdown'); - (await find.byLinkText('abc')).click(); + await (await find.byLinkText('abc')).click(); await PageObjects.header.waitUntilLoadingHasFinished(); await elasticChart.setNewChartUiDebugFlag(true); await PageObjects.timePicker.setDefaultDataRange(); diff --git a/test/functional/apps/dashboard/group5/saved_search_embeddable.ts b/test/functional/apps/dashboard/group5/saved_search_embeddable.ts index c2c7c9db70aa6..ee008a2c7d591 100644 --- a/test/functional/apps/dashboard/group5/saved_search_embeddable.ts +++ b/test/functional/apps/dashboard/group5/saved_search_embeddable.ts @@ -39,6 +39,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { after(async () => { await kibanaServer.savedObjects.cleanStandardList(); + await PageObjects.common.unsetTime(); }); it('highlighting on filtering works', async function () { @@ -85,9 +86,5 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { 'Rendering Test: saved search' ); }); - - after(async () => { - await PageObjects.common.unsetTime(); - }); }); } diff --git a/test/functional/apps/dashboard/group5/share.ts b/test/functional/apps/dashboard/group5/share.ts index 43af46a238589..7302f49ffb753 100644 --- a/test/functional/apps/dashboard/group5/share.ts +++ b/test/functional/apps/dashboard/group5/share.ts @@ -52,48 +52,42 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { return await PageObjects.share.getSharedUrl(); }; - describe('share dashboard', () => { - const testFilterState = async (mode: TestingModes) => { - it('should not have "filters" state in either app or global state when no filters', async () => { - expect(await getSharedUrl(mode)).to.not.contain('filters'); - }); - - it('unpinned filter should show up only in app state when dashboard is unsaved', async () => { - await filterBar.addFilter({ field: 'geo.src', operation: 'is', value: 'AE' }); - await PageObjects.dashboard.waitForRenderComplete(); - - const sharedUrl = await getSharedUrl(mode); - const { globalState, appState } = getStateFromUrl(sharedUrl); - expect(globalState).to.not.contain('filters'); - if (mode === 'snapshot') { - expect(appState).to.contain('filters'); - } else { - expect(sharedUrl).to.not.contain('appState'); - } - }); - - it('unpinned filters should be removed from app state when dashboard is saved', async () => { - await PageObjects.dashboard.clickQuickSave(); - await PageObjects.dashboard.waitForRenderComplete(); + const unpinnedFilterIsOnlyWhenDashboardIsUnsaved = async (mode: TestingModes) => { + await filterBar.addFilter({ field: 'geo.src', operation: 'is', value: 'AE' }); + await PageObjects.dashboard.waitForRenderComplete(); + + const sharedUrl = await getSharedUrl(mode); + const { globalState, appState } = getStateFromUrl(sharedUrl); + expect(globalState).to.not.contain('filters'); + if (mode === 'snapshot') { + expect(appState).to.contain('filters'); + } else { + expect(sharedUrl).to.not.contain('appState'); + } + }; - const sharedUrl = await getSharedUrl(mode); - expect(sharedUrl).to.not.contain('appState'); - }); + const unpinnedFilterIsRemoved = async (mode: TestingModes) => { + await PageObjects.dashboard.clickQuickSave(); + await PageObjects.dashboard.waitForRenderComplete(); - it('pinned filter should show up only in global state', async () => { - await filterBar.toggleFilterPinned('geo.src'); - await PageObjects.dashboard.clickQuickSave(); - await PageObjects.dashboard.waitForRenderComplete(); + const sharedUrl = await getSharedUrl(mode); + expect(sharedUrl).to.not.contain('appState'); + }; - const sharedUrl = await getSharedUrl(mode); - const { globalState, appState } = getStateFromUrl(sharedUrl); - expect(globalState).to.contain('filters'); - if (mode === 'snapshot') { - expect(appState).to.not.contain('filters'); - } - }); - }; + const pinnedFilterIsWhenDashboardInGlobalState = async (mode: TestingModes) => { + await filterBar.toggleFilterPinned('geo.src'); + await PageObjects.dashboard.clickQuickSave(); + await PageObjects.dashboard.waitForRenderComplete(); + + const sharedUrl = await getSharedUrl(mode); + const { globalState, appState } = getStateFromUrl(sharedUrl); + expect(globalState).to.contain('filters'); + if (mode === 'snapshot') { + expect(appState).to.not.contain('filters'); + } + }; + describe('share dashboard', () => { before(async () => { await kibanaServer.savedObjects.cleanStandardList(); await kibanaServer.importExport.load( @@ -117,8 +111,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.common.unsetTime(); }); - describe('snapshot share', async () => { - describe('test local state', async () => { + describe('snapshot share', () => { + describe('test local state', () => { it('should not have "panels" state when not in unsaved changes state', async () => { await testSubjects.missingOrFail('dashboardUnsavedChangesBadge'); expect(await getSharedUrl('snapshot')).to.not.contain('panels'); @@ -144,8 +138,24 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('test filter state', async () => { - await testFilterState('snapshot'); + describe('test filter state', () => { + const mode = 'snapshot'; + + it('should not have "filters" state in either app or global state when no filters', async () => { + expect(await getSharedUrl(mode)).to.not.contain('filters'); + }); + + it('unpinned filter should show up only in app state when dashboard is unsaved', async () => { + await unpinnedFilterIsOnlyWhenDashboardIsUnsaved(mode); + }); + + it('unpinned filters should be removed from app state when dashboard is saved', async () => { + await unpinnedFilterIsRemoved(mode); + }); + + it('pinned filter should show up only in global state', async () => { + await pinnedFilterIsWhenDashboardInGlobalState(mode); + }); }); after(async () => { @@ -155,9 +165,25 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('saved object share', async () => { - describe('test filter state', async () => { - await testFilterState('savedObject'); + describe('saved object share', () => { + describe('test filter state', () => { + const mode = 'savedObject'; + + it('should not have "filters" state in either app or global state when no filters', async () => { + expect(await getSharedUrl(mode)).to.not.contain('filters'); + }); + + it('unpinned filter should show up only in app state when dashboard is unsaved', async () => { + await unpinnedFilterIsOnlyWhenDashboardIsUnsaved(mode); + }); + + it('unpinned filters should be removed from app state when dashboard is saved', async () => { + await unpinnedFilterIsRemoved(mode); + }); + + it('pinned filter should show up only in global state', async () => { + await pinnedFilterIsWhenDashboardInGlobalState(mode); + }); }); }); }); diff --git a/test/functional/apps/dashboard/group6/dashboard_snapshots.ts b/test/functional/apps/dashboard/group6/dashboard_snapshots.ts index 5c24db05fcafc..cbd9d3bfaaf91 100644 --- a/test/functional/apps/dashboard/group6/dashboard_snapshots.ts +++ b/test/functional/apps/dashboard/group6/dashboard_snapshots.ts @@ -96,7 +96,7 @@ export default function ({ expect(percentDifference).to.be.lessThan(0.029); }); - describe('compare controls snapshot', async () => { + describe('compare controls snapshot', () => { const waitForPageReady = async () => { await PageObjects.header.waitUntilLoadingHasFinished(); await retry.waitFor('page ready for screenshot', async () => { diff --git a/test/functional/apps/dashboard_elements/controls/common/control_group_apply_button.ts b/test/functional/apps/dashboard_elements/controls/common/control_group_apply_button.ts index 9f5862c5fbbcd..683d6a6e7cc22 100644 --- a/test/functional/apps/dashboard_elements/controls/common/control_group_apply_button.ts +++ b/test/functional/apps/dashboard_elements/controls/common/control_group_apply_button.ts @@ -215,7 +215,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboard.waitForRenderComplete(); await dashboard.expectUnsavedChangesBadge(); - pieChart.expectEmptyPieChart(); + await pieChart.expectEmptyPieChart(); }); it('hitting dashboard resets selections + unapplies timeslice', async () => { diff --git a/test/functional/apps/dashboard_elements/controls/common/control_group_chaining.ts b/test/functional/apps/dashboard_elements/controls/common/control_group_chaining.ts index 11ec5694e88b9..c05b26d32961c 100644 --- a/test/functional/apps/dashboard_elements/controls/common/control_group_chaining.ts +++ b/test/functional/apps/dashboard_elements/controls/common/control_group_chaining.ts @@ -239,7 +239,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[2]); }); - describe('Hierarchical chaining off', async () => { + describe('Hierarchical chaining off', () => { before(async () => { await dashboardControls.updateChainingSystem('NONE'); }); diff --git a/test/functional/apps/dashboard_elements/controls/common/control_group_settings.ts b/test/functional/apps/dashboard_elements/controls/common/control_group_settings.ts index 80a8bc8148977..00b6e24b56fb5 100644 --- a/test/functional/apps/dashboard_elements/controls/common/control_group_settings.ts +++ b/test/functional/apps/dashboard_elements/controls/common/control_group_settings.ts @@ -6,13 +6,10 @@ * Side Public License, v 1. */ -import { OPTIONS_LIST_CONTROL, RANGE_SLIDER_CONTROL } from '@kbn/controls-plugin/common'; import expect from '@kbn/expect'; - import { FtrProviderContext } from '../../../../ftr_provider_context'; export default function ({ getService, getPageObjects }: FtrProviderContext) { - const find = getService('find'); const queryBar = getService('queryBar'); const filterBar = getService('filterBar'); const testSubjects = getService('testSubjects'); @@ -24,70 +21,15 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { describe('Dashboard control group settings', () => { before(async () => { - await dashboard.navigateToApp(); - await dashboard.gotoDashboardLandingPage(); - await dashboard.clickNewDashboard(); - await timePicker.setDefaultDataRange(); - await dashboard.saveDashboard('Test Control Group Settings'); - }); - - it('adjust layout of controls', async () => { + await dashboard.loadSavedDashboard('control group settings test dashboard'); await dashboard.switchToEditMode(); - await dashboardControls.createControl({ - controlType: OPTIONS_LIST_CONTROL, - dataViewTitle: 'animals-*', - fieldName: 'sound.keyword', - }); - await dashboardControls.adjustControlsLayout('twoLine'); - const controlGroupWrapper = await testSubjects.find('controls-group-wrapper'); - expect(await controlGroupWrapper.elementHasClass('controlsWrapper--twoLine')).to.be(true); - }); - - describe('apply new default width and grow', async () => { - it('defaults to medium width and grow enabled', async () => { - await dashboardControls.openCreateControlFlyout(); - const mediumWidthButton = await testSubjects.find('control-editor-width-medium'); - expect(await mediumWidthButton.elementHasClass('euiButtonGroupButton-isSelected')).to.be( - true - ); - const growSwitch = await testSubjects.find('control-editor-grow-switch'); - expect(await growSwitch.getAttribute('aria-checked')).to.be('true'); - await testSubjects.click('control-editor-cancel'); - }); - - it('sets default to width and grow of last created control', async () => { - await dashboardControls.createControl({ - controlType: OPTIONS_LIST_CONTROL, - dataViewTitle: 'animals-*', - fieldName: 'name.keyword', - width: 'small', - grow: false, - }); - - const controlIds = await dashboardControls.getAllControlIds(); - const firstControl = await find.byXPath(`//div[@data-control-id="${controlIds[0]}"]`); - expect(await firstControl.elementHasClass('controlFrameWrapper--medium')).to.be(true); - expect(await firstControl.getAttribute('class')).not.to.contain('euiFlexItem-growZero'); - const secondControl = await find.byXPath(`//div[@data-control-id="${controlIds[1]}"]`); - expect(await secondControl.elementHasClass('controlFrameWrapper--small')).to.be(true); - expect(await secondControl.getAttribute('class')).to.contain('euiFlexItem-growZero'); - - await dashboardControls.openCreateControlFlyout(); - const smallWidthButton = await testSubjects.find('control-editor-width-small'); - expect(await smallWidthButton.elementHasClass('euiButtonGroupButton-isSelected')).to.be( - true - ); - const growSwitch = await testSubjects.find('control-editor-grow-switch'); - expect(await growSwitch.getAttribute('aria-checked')).to.be('false'); - await testSubjects.click('control-editor-cancel'); - }); }); - describe('filtering settings', async () => { - let firstOptionsListId: string; + describe('filtering settings', () => { + const firstOptionsListId = 'bcb81550-0843-44ea-9020-6c1ebf3228ac'; let beforeCount: number; - let rangeSliderId: string; + const rangeSliderId = '15925456-9e12-4b08-b2e6-4ae6ac27114d'; let beforeRange: number; const getRange = async () => { @@ -106,23 +48,14 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }; before(async () => { - await dashboardControls.createControl({ - controlType: RANGE_SLIDER_CONTROL, - dataViewTitle: 'animals-*', - fieldName: 'weightLbs', - }); - await dashboard.clickQuickSave(); - - firstOptionsListId = (await dashboardControls.getAllControlIds())[0]; await dashboardControls.optionsListWaitForLoading(firstOptionsListId); await dashboardControls.optionsListOpenPopover(firstOptionsListId); beforeCount = await dashboardControls.optionsListPopoverGetAvailableOptionsCount(); - rangeSliderId = (await dashboardControls.getAllControlIds())[2]; beforeRange = await getRange(); }); - describe('do not apply global filters', async () => { + describe('do not apply global filters', () => { it('- filter pills', async () => { await filterBar.addFilter({ field: 'animal.keyword', operation: 'is', value: 'cat' }); await dashboardControls.optionsListOpenPopover(firstOptionsListId); @@ -172,65 +105,13 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('flyout only show settings that are relevant', async () => { - before(async () => { - await dashboard.switchToEditMode(); - }); - - it('when no controls', async () => { - await dashboardControls.deleteAllControls(); - await dashboardControls.openControlGroupSettingsFlyout(); - await testSubjects.missingOrFail('delete-all-controls-button'); - }); - - it('when at least one control', async () => { - await dashboardControls.createControl({ - controlType: OPTIONS_LIST_CONTROL, - dataViewTitle: 'animals-*', - fieldName: 'sound.keyword', - }); - await dashboardControls.openControlGroupSettingsFlyout(); - await testSubjects.existOrFail('delete-all-controls-button'); - }); - - afterEach(async () => { - await testSubjects.click('euiFlyoutCloseButton'); - if (await testSubjects.exists('confirmModalConfirmButton')) { - await testSubjects.click('confirmModalConfirmButton'); - } - }); - - after(async () => { - await dashboardControls.deleteAllControls(); - }); - }); - - describe('control group settings flyout closes', async () => { - it('on save', async () => { - await dashboardControls.openControlGroupSettingsFlyout(); - await dashboard.saveDashboard('Test Control Group Settings', { - saveAsNew: false, - exitFromEditMode: false, - }); - await testSubjects.missingOrFail('control-group-settings-flyout'); - }); - - it('on view mode change', async () => { - await dashboardControls.openControlGroupSettingsFlyout(); - await dashboard.clickCancelOutOfEditMode(); - await testSubjects.missingOrFail('control-group-settings-flyout'); - }); - + describe('control group settings flyout closes', () => { it('when navigating away from dashboard', async () => { await dashboard.switchToEditMode(); await dashboardControls.openControlGroupSettingsFlyout(); await dashboard.gotoDashboardLandingPage(); await testSubjects.missingOrFail('control-group-settings-flyout'); }); - - after(async () => { - await dashboard.loadSavedDashboard('Test Control Group Settings'); - }); }); }); } diff --git a/test/functional/apps/dashboard_elements/controls/common/index.ts b/test/functional/apps/dashboard_elements/controls/common/index.ts index c5fb1621e61f3..58c9a3dcb80fe 100644 --- a/test/functional/apps/dashboard_elements/controls/common/index.ts +++ b/test/functional/apps/dashboard_elements/controls/common/index.ts @@ -26,7 +26,6 @@ export default function ({ loadTestFile, getService, getPageObjects }: FtrProvid defaultIndex: '0bf35f60-3dc9-11e8-8660-4d65aa086b3c', }); - // enable the controls lab and navigate to the dashboard listing page to start await dashboard.navigateToApp(); await dashboard.preserveCrossAppState(); } diff --git a/test/functional/apps/dashboard_elements/controls/common/multiple_data_views.ts b/test/functional/apps/dashboard_elements/controls/common/multiple_data_views.ts index 45b0829f6ca5f..5a07e60d45695 100644 --- a/test/functional/apps/dashboard_elements/controls/common/multiple_data_views.ts +++ b/test/functional/apps/dashboard_elements/controls/common/multiple_data_views.ts @@ -105,13 +105,13 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { expect(await dashboardControls.optionsListGetCardinalityValue()).to.be('4'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[0]); - dashboardControls.validateRange('placeholder', controlIds[1], '100', '1200'); + await dashboardControls.validateRange('placeholder', controlIds[1], '100', '1200'); await dashboardControls.optionsListOpenPopover(controlIds[2]); expect(await dashboardControls.optionsListGetCardinalityValue()).to.be('5'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[2]); - dashboardControls.validateRange('placeholder', controlIds[3], '0', '19979'); + await dashboardControls.validateRange('placeholder', controlIds[3], '0', '19979'); }); it('ignores controls on other controls and panels using a data view without the control field by default', async () => { @@ -120,13 +120,13 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboardControls.optionsListPopoverSelectOption('Kibana Airlines'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[0]); - dashboardControls.validateRange('placeholder', controlIds[1], '100', '1196'); + await dashboardControls.validateRange('placeholder', controlIds[1], '100', '1196'); await dashboardControls.optionsListOpenPopover(controlIds[2]); expect(await dashboardControls.optionsListGetCardinalityValue()).to.be('5'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[2]); - dashboardControls.validateRange('placeholder', controlIds[3], '0', '19979'); + await dashboardControls.validateRange('placeholder', controlIds[3], '0', '19979'); const logstashSavedSearchPanel = await testSubjects.find('embeddedSavedSearchDocTable'); expect( @@ -154,13 +154,13 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { expect(await dashboardControls.optionsListGetCardinalityValue()).to.be('4'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[0]); - dashboardControls.validateRange('placeholder', controlIds[1], '100', '1200'); + await dashboardControls.validateRange('placeholder', controlIds[1], '100', '1200'); await dashboardControls.optionsListOpenPopover(controlIds[2]); expect(await dashboardControls.optionsListGetCardinalityValue()).to.be('0'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[2]); - dashboardControls.validateRange('placeholder', controlIds[3], '0', '0'); + await dashboardControls.validateRange('placeholder', controlIds[3], '0', '0'); }); it('applies global filters on controls using a data view without the filter field', async () => { @@ -169,13 +169,13 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboardControls.optionsListPopoverSelectOption('Kibana Airlines'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[0]); - dashboardControls.validateRange('placeholder', controlIds[1], '100', '1196'); + await dashboardControls.validateRange('placeholder', controlIds[1], '100', '1196'); await dashboardControls.optionsListOpenPopover(controlIds[2]); expect(await dashboardControls.optionsListGetCardinalityValue()).to.be('0'); await dashboardControls.optionsListEnsurePopoverIsClosed(controlIds[2]); - dashboardControls.validateRange('placeholder', controlIds[3], '0', '0'); + await dashboardControls.validateRange('placeholder', controlIds[3], '0', '0'); const logstashSavedSearchPanel = await testSubjects.find('embeddedSavedSearchDocTable'); expect( diff --git a/test/functional/apps/dashboard_elements/controls/common/range_slider.ts b/test/functional/apps/dashboard_elements/controls/common/range_slider.ts index 06e67b9d8df91..604ebb2677c82 100644 --- a/test/functional/apps/dashboard_elements/controls/common/range_slider.ts +++ b/test/functional/apps/dashboard_elements/controls/common/range_slider.ts @@ -29,7 +29,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const DASHBOARD_NAME = 'Test Range Slider Control'; - describe('Range Slider Control', async () => { + describe('Range Slider Control', () => { before(async () => { await security.testUser.setRoles([ 'kibana_admin', @@ -74,7 +74,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await security.testUser.restoreDefaults(); }); - describe('create and edit', async () => { + describe('create and edit', () => { it('can create a new range slider control from a blank state', async () => { await dashboardControls.createControl({ controlType: RANGE_SLIDER_CONTROL, @@ -257,7 +257,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('validation', async () => { + describe('validation', () => { it('displays error message when upper bound selection is less than lower bound selection', async () => { const firstId = (await dashboardControls.getAllControlIds())[0]; await dashboardControls.rangeSliderSetLowerBound(firstId, '500'); @@ -279,7 +279,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('interaction', async () => { + describe('interaction', () => { it('Malformed query throws an error', async () => { await queryBar.setQuery('AvgTicketPrice <= 300 error'); await queryBar.submitQuery(); diff --git a/test/functional/apps/dashboard_elements/controls/common/replace_controls.ts b/test/functional/apps/dashboard_elements/controls/common/replace_controls.ts index e29b53c95d4d0..22980eb6423a2 100644 --- a/test/functional/apps/dashboard_elements/controls/common/replace_controls.ts +++ b/test/functional/apps/dashboard_elements/controls/common/replace_controls.ts @@ -47,7 +47,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }; - describe('Replacing controls', async () => { + describe('Replacing controls', () => { let controlId: string; before(async () => { @@ -66,7 +66,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await security.testUser.restoreDefaults(); }); - describe('Replace options list', async () => { + describe('Replace options list', () => { beforeEach(async () => { await dashboardControls.clearAllControls(); await dashboardControls.createControl({ @@ -98,7 +98,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('Replace range slider', async () => { + describe('Replace range slider', () => { beforeEach(async () => { await dashboardControls.clearAllControls(); await dashboardControls.createControl({ diff --git a/test/functional/apps/dashboard_elements/controls/common/time_slider.ts b/test/functional/apps/dashboard_elements/controls/common/time_slider.ts index 32f6e39e6b3c2..ab1ddbcbe7e88 100644 --- a/test/functional/apps/dashboard_elements/controls/common/time_slider.ts +++ b/test/functional/apps/dashboard_elements/controls/common/time_slider.ts @@ -24,7 +24,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { 'dashboard', ]); - describe('Time Slider Control', async () => { + describe('Time Slider Control', () => { before(async () => { await security.testUser.setRoles([ 'kibana_admin', @@ -52,7 +52,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await security.testUser.restoreDefaults(); }); - describe('create, edit, and delete', async () => { + describe('create, edit, and delete', () => { before(async () => { await dashboard.navigateToApp(); await dashboard.preserveCrossAppState(); @@ -130,8 +130,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('panel interactions', async () => { - describe('saved search', async () => { + describe('panel interactions', () => { + describe('saved search', () => { before(async () => { await dashboard.navigateToApp(); await dashboard.loadSavedDashboard('timeslider and saved search'); diff --git a/test/functional/apps/dashboard_elements/controls/options_list/index.ts b/test/functional/apps/dashboard_elements/controls/options_list/index.ts index 5f589129ed279..95cd5eccf169b 100644 --- a/test/functional/apps/dashboard_elements/controls/options_list/index.ts +++ b/test/functional/apps/dashboard_elements/controls/options_list/index.ts @@ -47,7 +47,7 @@ export default function ({ loadTestFile, getService, getPageObjects }: FtrProvid await kibanaServer.savedObjects.cleanStandardList(); }; - describe('Options list control', async () => { + describe('Options list control', () => { before(setup); after(teardown); diff --git a/test/functional/apps/dashboard_elements/controls/options_list/options_list_creation_and_editing.ts b/test/functional/apps/dashboard_elements/controls/options_list/options_list_creation_and_editing.ts index a19d5bfee82bb..1ab63c4a0f602 100644 --- a/test/functional/apps/dashboard_elements/controls/options_list/options_list_creation_and_editing.ts +++ b/test/functional/apps/dashboard_elements/controls/options_list/options_list_creation_and_editing.ts @@ -30,7 +30,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboard.clickQuickSave(); }); - describe('Options List Control Editor selects relevant data views', async () => { + describe('Options List Control Editor selects relevant data views', () => { it('selects the default data view when the dashboard is blank', async () => { expect(await dashboardControls.optionsListEditorGetCurrentDataView(true)).to.eql( 'logstash-*' diff --git a/test/functional/apps/dashboard_elements/controls/options_list/options_list_dashboard_interaction.ts b/test/functional/apps/dashboard_elements/controls/options_list/options_list_dashboard_interaction.ts index 16d0b2cd5fc2d..77d7e2b2914d2 100644 --- a/test/functional/apps/dashboard_elements/controls/options_list/options_list_dashboard_interaction.ts +++ b/test/functional/apps/dashboard_elements/controls/options_list/options_list_dashboard_interaction.ts @@ -66,7 +66,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboard.clickQuickSave(); }); - describe('Applies query settings to controls', async () => { + describe('Applies query settings to controls', () => { it('Malformed query throws an error', async () => { await queryBar.setQuery('animal.keyword : "dog" error'); await queryBar.submitQuery(); // quicker than clicking the submit button, but hides the time picker @@ -111,7 +111,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await timePicker.setDefaultDataRange(); }); - describe('dashboard filters', async () => { + describe('dashboard filters', () => { before(async () => { await filterBar.addFilter({ field: 'sound.keyword', @@ -167,7 +167,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('Selections made in control apply to dashboard', async () => { + describe('Selections made in control apply to dashboard', () => { it('Shows available options in options list', async () => { await queryBar.setQuery(''); await queryBar.submitQuery(); @@ -259,8 +259,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboard.clearUnsavedChanges(); }); - describe('discarding changes', async () => { - describe('changes can be discarded', async () => { + describe('discarding changes', () => { + describe('changes can be discarded', () => { let selections = ''; beforeEach(async () => { @@ -292,7 +292,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('Test data view runtime field', async () => { + describe('Test data view runtime field', () => { const FIELD_NAME = 'testRuntimeField'; const FIELD_VALUES = { G: @@ -360,7 +360,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('Test exists query', async () => { + describe('Test exists query', () => { const newDocuments: Array<{ index: string; id: string }> = []; const addDocument = async (index: string, document: string) => { diff --git a/test/functional/apps/dashboard_elements/controls/options_list/options_list_validation.ts b/test/functional/apps/dashboard_elements/controls/options_list/options_list_validation.ts index 9c222c78715b5..fa4322963381c 100644 --- a/test/functional/apps/dashboard_elements/controls/options_list/options_list_validation.ts +++ b/test/functional/apps/dashboard_elements/controls/options_list/options_list_validation.ts @@ -55,7 +55,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboard.clickQuickSave(); }); - describe('Options List dashboard validation', async () => { + describe('Options List dashboard validation', () => { before(async () => { await dashboardControls.optionsListOpenPopover(controlId); await dashboardControls.optionsListPopoverSelectOption('meow'); @@ -116,7 +116,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('Options List dashboard no validation', async () => { + describe('Options List dashboard no validation', () => { before(async () => { await dashboardControls.optionsListOpenPopover(controlId); await dashboardControls.optionsListPopoverSelectOption('meow'); diff --git a/test/functional/apps/dashboard_elements/links/links_create_edit.ts b/test/functional/apps/dashboard_elements/links/links_create_edit.ts index 3842172cfdab4..5598ba3444378 100644 --- a/test/functional/apps/dashboard_elements/links/links_create_edit.ts +++ b/test/functional/apps/dashboard_elements/links/links_create_edit.ts @@ -38,7 +38,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const LINKS_PANEL_NAME = 'Some links'; describe('links panel create and edit', () => { - describe('creation', async () => { + describe('creation', () => { before(async () => { await dashboard.navigateToApp(); await dashboard.preserveCrossAppState(); @@ -95,7 +95,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await dashboardLinks.clickPanelEditorCloseButton(); }); - describe('by-value links panel', async () => { + describe('by-value links panel', () => { it('can create a new by-value links panel', async () => { await dashboardAddPanel.clickEditorMenuButton(); await dashboardAddPanel.clickAddNewPanelFromUIActionLink('Links'); diff --git a/test/functional/apps/discover/ccs_compatibility/_timeout_results.ts b/test/functional/apps/discover/ccs_compatibility/_timeout_results.ts index f8f81a44bdf8c..aaaf7f8172b51 100644 --- a/test/functional/apps/discover/ccs_compatibility/_timeout_results.ts +++ b/test/functional/apps/discover/ccs_compatibility/_timeout_results.ts @@ -38,7 +38,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await kibanaServer.uiSettings.unset('search:timeout'); }); - describe('bfetch enabled', async () => { + describe('bfetch enabled', () => { it('timeout on single shard shows warning and results with bfetch enabled', async () => { await PageObjects.common.navigateToApp('discover'); await dataViews.createFromSearchBar({ @@ -91,7 +91,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('bfetch disabled', async () => { + describe('bfetch disabled', () => { before(async () => { await kibanaServer.uiSettings.update({ 'bfetch:disable': true }); }); diff --git a/test/functional/apps/discover/classic/_classic_table_doc_navigation.ts b/test/functional/apps/discover/classic/_classic_table_doc_navigation.ts index a608d97873810..c6c70d964981d 100644 --- a/test/functional/apps/discover/classic/_classic_table_doc_navigation.ts +++ b/test/functional/apps/discover/classic/_classic_table_doc_navigation.ts @@ -35,11 +35,6 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await kibanaServer.uiSettings.replace({}); }); - beforeEach(async function () { - await PageObjects.common.navigateToApp('discover'); - await PageObjects.discover.waitForDocTableLoadingComplete(); - }); - beforeEach(async function () { await PageObjects.timePicker.setDefaultAbsoluteRangeViaUiSettings(); await PageObjects.common.navigateToApp('discover'); diff --git a/test/functional/apps/discover/classic/_doc_table.ts b/test/functional/apps/discover/classic/_doc_table.ts index 0e5934a62f943..d8cf4d2729174 100644 --- a/test/functional/apps/discover/classic/_doc_table.ts +++ b/test/functional/apps/discover/classic/_doc_table.ts @@ -74,7 +74,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.timePicker.setDefaultAbsoluteRange(); }); - describe('classic table in window 900x700', async function () { + describe('classic table in window 900x700', function () { before(async () => { await browser.setWindowSize(900, 700); await PageObjects.common.navigateToApp('discover'); @@ -93,7 +93,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('classic table in window 600x700', async function () { + describe('classic table in window 600x700', function () { before(async () => { await browser.setWindowSize(600, 700); await PageObjects.common.navigateToApp('discover'); @@ -112,7 +112,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('legacy', async function () { + describe('legacy', function () { before(async () => { await PageObjects.common.navigateToApp('discover'); await PageObjects.discover.waitUntilSearchingHasFinished(); @@ -146,7 +146,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { expect(skipButtonText === activeElementText).to.be(true); }); - describe('expand a document row', async function () { + describe('expand a document row', function () { const rowToInspect = 1; beforeEach(async function () { // close the toggle if open @@ -228,7 +228,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('add and remove columns', async function () { + describe('add and remove columns', function () { const extraColumns = ['phpmemory', 'ip']; const expectedFieldLength: Record = { phpmemory: 1, diff --git a/test/functional/apps/discover/classic/_esql_grid.ts b/test/functional/apps/discover/classic/_esql_grid.ts index d2bacbcd4947a..cb82deb8eece6 100644 --- a/test/functional/apps/discover/classic/_esql_grid.ts +++ b/test/functional/apps/discover/classic/_esql_grid.ts @@ -30,7 +30,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { 'doc_table:legacy': true, }; - describe('discover esql grid with legacy setting', async function () { + describe('discover esql grid with legacy setting', function () { before(async () => { await security.testUser.setRoles(['kibana_admin', 'test_logstash_reader']); await kibanaServer.importExport.load('test/functional/fixtures/kbn_archiver/discover'); diff --git a/test/functional/apps/discover/esql/_esql_columns.ts b/test/functional/apps/discover/esql/_esql_columns.ts index ad1fe5d31edc9..2a639032646b5 100644 --- a/test/functional/apps/discover/esql/_esql_columns.ts +++ b/test/functional/apps/discover/esql/_esql_columns.ts @@ -36,7 +36,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { defaultIndex: 'logstash-*', }; - describe('discover esql columns', async function () { + describe('discover esql columns', function () { before(async () => { await kibanaServer.savedObjects.cleanStandardList(); await security.testUser.setRoles(['kibana_admin', 'test_logstash_reader']); diff --git a/test/functional/apps/discover/esql/_esql_view.ts b/test/functional/apps/discover/esql/_esql_view.ts index a5a2fa78a7b65..11ea6a9ac4b22 100644 --- a/test/functional/apps/discover/esql/_esql_view.ts +++ b/test/functional/apps/discover/esql/_esql_view.ts @@ -38,7 +38,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { enableESQL: true, }; - describe('discover esql view', async function () { + describe('discover esql view', function () { before(async () => { await kibanaServer.savedObjects.cleanStandardList(); await security.testUser.setRoles(['kibana_admin', 'test_logstash_reader']); diff --git a/test/functional/apps/discover/group1/_date_nanos_mixed.ts b/test/functional/apps/discover/group1/_date_nanos_mixed.ts index df45356a69789..8c563ce14d6d9 100644 --- a/test/functional/apps/discover/group1/_date_nanos_mixed.ts +++ b/test/functional/apps/discover/group1/_date_nanos_mixed.ts @@ -40,6 +40,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await security.testUser.restoreDefaults(); await esArchiver.unload('test/functional/fixtures/es_archiver/date_nanos_mixed'); await kibanaServer.savedObjects.clean({ types: ['search', 'index-pattern'] }); + await PageObjects.common.unsetTime(); }); it('shows a list of records of indices with date & date_nanos fields in the right order', async function () { @@ -53,9 +54,5 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const rowData4 = await PageObjects.discover.getDocTableIndex(isLegacy ? 7 : 4); expect(rowData4).to.contain('Jan 1, 2019 @ 12:10:30.123000000'); }); - - after(async () => { - await PageObjects.common.unsetTime(); - }); }); } diff --git a/test/functional/apps/discover/group5/_filter_editor.ts b/test/functional/apps/discover/group5/_filter_editor.ts index 41d5f38b1103b..b71f0b342af3b 100644 --- a/test/functional/apps/discover/group5/_filter_editor.ts +++ b/test/functional/apps/discover/group5/_filter_editor.ts @@ -69,7 +69,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('version fields', async () => { + describe('version fields', () => { const es = getService('es'); const indexPatterns = getService('indexPatterns'); const indexTitle = 'version-test'; diff --git a/test/functional/apps/discover/group5/_shared_links.ts b/test/functional/apps/discover/group5/_shared_links.ts index 3aeda46316c59..238a859e7cdc5 100644 --- a/test/functional/apps/discover/group5/_shared_links.ts +++ b/test/functional/apps/discover/group5/_shared_links.ts @@ -50,7 +50,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }; } - describe('shared links with state in query', async () => { + describe('shared links with state in query', () => { let teardown: () => Promise; before(async function () { teardown = await setup({ storeStateInSessionStorage: false }); @@ -94,7 +94,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('shared links with state in sessionStorage', async () => { + describe('shared links with state in sessionStorage', () => { let teardown: () => Promise; before(async function () { teardown = await setup({ storeStateInSessionStorage: true }); diff --git a/test/functional/apps/getting_started/_shakespeare.ts b/test/functional/apps/getting_started/_shakespeare.ts index 5426594bee30a..99d04ce708700 100644 --- a/test/functional/apps/getting_started/_shakespeare.ts +++ b/test/functional/apps/getting_started/_shakespeare.ts @@ -53,7 +53,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { after(async () => { await security.testUser.restoreDefaults(); - kibanaServer.savedObjects.cleanStandardList(); + await kibanaServer.savedObjects.cleanStandardList(); await kibanaServer.uiSettings.replace({}); }); diff --git a/test/functional/apps/home/_sample_data.ts b/test/functional/apps/home/_sample_data.ts index 4120a9ecc1a54..43e2a9fa6dad4 100644 --- a/test/functional/apps/home/_sample_data.ts +++ b/test/functional/apps/home/_sample_data.ts @@ -36,7 +36,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { describe('listing', () => { before(async () => { - PageObjects.home.openSampleDataAccordion(); + await PageObjects.home.openSampleDataAccordion(); }); it('should display registered flights sample data sets', async () => { diff --git a/test/functional/apps/kibana_overview/_no_data.ts b/test/functional/apps/kibana_overview/_no_data.ts index 8dec616eb8afe..debb9783982c6 100644 --- a/test/functional/apps/kibana_overview/_no_data.ts +++ b/test/functional/apps/kibana_overview/_no_data.ts @@ -19,7 +19,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { describe('overview page - no data', function describeIndexTests() { before(async () => { await esArchiver.unload('test/functional/fixtures/es_archiver/logstash_functional'); - kibanaServer.savedObjects.clean({ types: ['index-pattern'] }); + await kibanaServer.savedObjects.clean({ types: ['index-pattern'] }); await kibanaServer.importExport.unload( 'test/functional/fixtures/kbn_archiver/kibana_sample_data_flights_index_pattern' ); diff --git a/test/functional/apps/management/_kibana_settings.ts b/test/functional/apps/management/_kibana_settings.ts index 875635cbd6a09..352293d7fe58b 100644 --- a/test/functional/apps/management/_kibana_settings.ts +++ b/test/functional/apps/management/_kibana_settings.ts @@ -26,6 +26,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.settings.navigateTo(); await PageObjects.settings.clickKibanaIndexPatterns(); await PageObjects.settings.removeLogstashIndexPatternIfExist(); + await kibanaServer.uiSettings.replace({ 'dateFormat:tz': 'UTC' }); + await browser.refresh(); }); it('should allow setting advanced settings', async function () { @@ -95,10 +97,5 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { expect(globalState.length).to.be.greaterThan(20); }); }); - - after(async function () { - await kibanaServer.uiSettings.replace({ 'dateFormat:tz': 'UTC' }); - await browser.refresh(); - }); }); } diff --git a/test/functional/apps/management/ccs_compatibility/_data_views_ccs.ts b/test/functional/apps/management/ccs_compatibility/_data_views_ccs.ts index d2ab2b64bf738..8a69b6a9ed80d 100644 --- a/test/functional/apps/management/ccs_compatibility/_data_views_ccs.ts +++ b/test/functional/apps/management/ccs_compatibility/_data_views_ccs.ts @@ -22,7 +22,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); describe('index pattern wizard ccs', () => { - describe('remote cluster only', async () => { + describe('remote cluster only', () => { beforeEach(async function () { await kibanaServer.uiSettings.replace({}); await PageObjects.settings.navigateTo(); @@ -47,7 +47,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await kibanaServer.savedObjects.cleanStandardList(); }); }); - describe('remote and local clusters', async () => { + describe('remote and local clusters', () => { before(async () => { await es.transport.request({ path: '/blogs/_doc', diff --git a/test/functional/apps/management/data_views/_cache.ts b/test/functional/apps/management/data_views/_cache.ts index 764dd99d20252..4c8c928da9f73 100644 --- a/test/functional/apps/management/data_views/_cache.ts +++ b/test/functional/apps/management/data_views/_cache.ts @@ -13,7 +13,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const PageObjects = getPageObjects(['settings', 'common', 'header']); const testSubjects = getService('testSubjects'); - describe('Data view field caps cache advanced setting', async function () { + describe('Data view field caps cache advanced setting', function () { before(async () => { await PageObjects.settings.navigateTo(); await PageObjects.settings.clickKibanaSettings(); diff --git a/test/functional/apps/management/data_views/_field_formatter.ts b/test/functional/apps/management/data_views/_field_formatter.ts index 7cfa792c41332..53542bbf4fa59 100644 --- a/test/functional/apps/management/data_views/_field_formatter.ts +++ b/test/functional/apps/management/data_views/_field_formatter.ts @@ -555,7 +555,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('check formats', async () => { + describe('check formats', () => { before(async () => { await PageObjects.common.navigateToApp('discover', { hash: `/doc/${indexPatternId}/${indexTitle}?id=${testDocumentId}`, diff --git a/test/functional/apps/management/data_views/_handle_alias.ts b/test/functional/apps/management/data_views/_handle_alias.ts index ba9459c0fa47e..addb6388ada0b 100644 --- a/test/functional/apps/management/data_views/_handle_alias.ts +++ b/test/functional/apps/management/data_views/_handle_alias.ts @@ -57,7 +57,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await PageObjects.settings.createIndexPattern('alias2*', 'date'); }); - describe('discover verify hits', async () => { + describe('discover verify hits', () => { before(async () => { const from = 'Nov 12, 2016 @ 05:00:00.000'; const to = 'Nov 19, 2016 @ 05:00:00.000'; diff --git a/test/functional/apps/management/data_views/_scripted_fields.ts b/test/functional/apps/management/data_views/_scripted_fields.ts index 2c70161a3bc43..659eec0b65bcf 100644 --- a/test/functional/apps/management/data_views/_scripted_fields.ts +++ b/test/functional/apps/management/data_views/_scripted_fields.ts @@ -56,6 +56,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { after(async function afterAll() { await kibanaServer.importExport.unload('test/functional/fixtures/kbn_archiver/discover'); await kibanaServer.uiSettings.replace({}); + await PageObjects.common.unsetTime(); }); /** @@ -145,7 +146,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('discover scripted field', async () => { + describe('discover scripted field', () => { before(async () => { const from = 'Sep 17, 2015 @ 06:31:44.000'; const to = 'Sep 18, 2015 @ 18:31:44.000'; @@ -515,9 +516,5 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); }); - - after(async () => { - await PageObjects.common.unsetTime(); - }); }); } diff --git a/test/functional/apps/visualize/group1/_data_table_nontimeindex.ts b/test/functional/apps/visualize/group1/_data_table_nontimeindex.ts index 897722d714145..3d776666b3a9b 100644 --- a/test/functional/apps/visualize/group1/_data_table_nontimeindex.ts +++ b/test/functional/apps/visualize/group1/_data_table_nontimeindex.ts @@ -103,7 +103,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { expect(data).to.be.eql([['14,004', '1,412.6']]); }); - describe('data table with date histogram', async () => { + describe('data table with date histogram', () => { before(async () => { await PageObjects.visualize.navigateToNewAggBasedVisualization(); await PageObjects.visualize.clickDataTable(); diff --git a/test/functional/apps/visualize/group2/_gauge_chart.ts b/test/functional/apps/visualize/group2/_gauge_chart.ts index e9b7ff7d29582..15fb5b1696590 100644 --- a/test/functional/apps/visualize/group2/_gauge_chart.ts +++ b/test/functional/apps/visualize/group2/_gauge_chart.ts @@ -18,20 +18,20 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const testSubjects = getService('testSubjects'); const PageObjects = getPageObjects(['visualize', 'visEditor', 'visChart', 'timePicker']); + async function initGaugeVis() { + log.debug('navigateToApp visualize'); + await PageObjects.visualize.navigateToNewAggBasedVisualization(); + log.debug('clickGauge'); + await PageObjects.visualize.clickGauge(); + await PageObjects.visualize.clickNewSearch(); + await PageObjects.timePicker.setDefaultAbsoluteRange(); + } + describe('gauge chart', function indexPatternCreation() { before(async () => { await PageObjects.visualize.initTests(); + await initGaugeVis(); }); - async function initGaugeVis() { - log.debug('navigateToApp visualize'); - await PageObjects.visualize.navigateToNewAggBasedVisualization(); - log.debug('clickGauge'); - await PageObjects.visualize.clickGauge(); - await PageObjects.visualize.clickNewSearch(); - await PageObjects.timePicker.setDefaultAbsoluteRange(); - } - - before(initGaugeVis); it('should have inspector enabled', async function () { await inspector.expectIsEnabled(); diff --git a/test/functional/apps/visualize/group3/_annotation_listing.ts b/test/functional/apps/visualize/group3/_annotation_listing.ts index f58f2fd386028..37123fc4ab721 100644 --- a/test/functional/apps/visualize/group3/_annotation_listing.ts +++ b/test/functional/apps/visualize/group3/_annotation_listing.ts @@ -143,7 +143,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { color: '#00FF00', }); - retry.try(async () => { + await retry.try(async () => { expect(await PageObjects.annotationEditor.getAnnotationCount()).to.be(2); }); }); diff --git a/test/functional/apps/visualize/group3/_pie_chart.ts b/test/functional/apps/visualize/group3/_pie_chart.ts index 466c82227606f..0ef5b3411ed24 100644 --- a/test/functional/apps/visualize/group3/_pie_chart.ts +++ b/test/functional/apps/visualize/group3/_pie_chart.ts @@ -69,7 +69,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); it('should show 10 slices in pie chart', async function () { - pieChart.expectPieSliceCount(10, isNewChartsLibraryEnabled); + await pieChart.expectPieSliceCount(10, isNewChartsLibraryEnabled); }); it('should show correct data', async function () { diff --git a/test/functional/apps/visualize/group6/_tsvb_table.ts b/test/functional/apps/visualize/group6/_tsvb_table.ts index e7e24885cb406..54fbcc0e6f911 100644 --- a/test/functional/apps/visualize/group6/_tsvb_table.ts +++ b/test/functional/apps/visualize/group6/_tsvb_table.ts @@ -195,7 +195,7 @@ export default function ({ getPageObjects, getService }: FtrProviderContext) { }); }); - it('should display drilldown urls', async () => { + it('should display drilldown urls after field formatting is applied', async () => { const baseURL = 'http://elastic.co/foo/'; await visualBuilder.clickPanelOptions('table'); diff --git a/test/functional/apps/visualize/replaced_vislib_chart_types/_area_chart.ts b/test/functional/apps/visualize/replaced_vislib_chart_types/_area_chart.ts index 50f0988575750..0e11eaa86c6db 100644 --- a/test/functional/apps/visualize/replaced_vislib_chart_types/_area_chart.ts +++ b/test/functional/apps/visualize/replaced_vislib_chart_types/_area_chart.ts @@ -30,38 +30,36 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const vizName = 'Visualization AreaChart Name Test - Charts library'; + const initAreaChart = async () => { + log.debug('navigateToApp visualize'); + await PageObjects.visualize.navigateToNewAggBasedVisualization(); + log.debug('clickAreaChart'); + await PageObjects.visualize.clickAreaChart(); + log.debug('clickNewSearch'); + await PageObjects.visualize.clickNewSearch(); + log.debug('Click X-axis'); + await PageObjects.visEditor.clickBucket('X-axis'); + log.debug('Click Date Histogram'); + await PageObjects.visEditor.selectAggregation('Date Histogram'); + log.debug('Check field value'); + const fieldValues = await PageObjects.visEditor.getField(); + log.debug('fieldValue = ' + fieldValues); + expect(fieldValues[0]).to.be('@timestamp'); + const intervalValue = await PageObjects.visEditor.getInterval(); + log.debug('intervalValue = ' + intervalValue); + expect(intervalValue[0]).to.be('Auto'); + await PageObjects.visEditor.clickGo(true); + }; + describe('area charts', function indexPatternCreation() { before(async () => { await PageObjects.visualize.initTests(); - await PageObjects.timePicker.setDefaultAbsoluteRangeViaUiSettings(); - }); - const initAreaChart = async () => { - log.debug('navigateToApp visualize'); - await PageObjects.visualize.navigateToNewAggBasedVisualization(); - log.debug('clickAreaChart'); - await PageObjects.visualize.clickAreaChart(); - log.debug('clickNewSearch'); - await PageObjects.visualize.clickNewSearch(); - log.debug('Click X-axis'); - await PageObjects.visEditor.clickBucket('X-axis'); - log.debug('Click Date Histogram'); - await PageObjects.visEditor.selectAggregation('Date Histogram'); - log.debug('Check field value'); - const fieldValues = await PageObjects.visEditor.getField(); - log.debug('fieldValue = ' + fieldValues); - expect(fieldValues[0]).to.be('@timestamp'); - const intervalValue = await PageObjects.visEditor.getInterval(); - log.debug('intervalValue = ' + intervalValue); - expect(intervalValue[0]).to.be('Auto'); - await PageObjects.visEditor.clickGo(true); - }; - - before(async function () { await security.testUser.setRoles([ 'kibana_admin', 'long_window_logstash', 'test_logstash_reader', ]); + await PageObjects.timePicker.setDefaultAbsoluteRangeViaUiSettings(); await initAreaChart(); }); diff --git a/test/functional/apps/visualize/replaced_vislib_chart_types/_point_series_options.ts b/test/functional/apps/visualize/replaced_vislib_chart_types/_point_series_options.ts index 6fdaa4d5a0189..c0d6c8adb42f1 100644 --- a/test/functional/apps/visualize/replaced_vislib_chart_types/_point_series_options.ts +++ b/test/functional/apps/visualize/replaced_vislib_chart_types/_point_series_options.ts @@ -230,7 +230,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('timezones', async function () { + describe('timezones', function () { it('should show round labels in default timezone', async function () { const expectedLabels = [ '2015-09-20 00:00', diff --git a/test/functional/apps/visualize/replaced_vislib_chart_types/_vertical_bar_chart.ts b/test/functional/apps/visualize/replaced_vislib_chart_types/_vertical_bar_chart.ts index 6e5d26d52f6e8..a52fd828e07df 100644 --- a/test/functional/apps/visualize/replaced_vislib_chart_types/_vertical_bar_chart.ts +++ b/test/functional/apps/visualize/replaced_vislib_chart_types/_vertical_bar_chart.ts @@ -281,7 +281,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { }); }); - describe('vertical bar in percent mode', async () => { + describe('vertical bar in percent mode', () => { it('should show ticks with percentage values', async function () { const axisId = 'ValueAxis-1'; await PageObjects.visEditor.clickMetricsAndAxes(); diff --git a/test/functional/apps/visualize/replaced_vislib_chart_types/index.ts b/test/functional/apps/visualize/replaced_vislib_chart_types/index.ts index a2118e55ecd52..e58a4d3ea3897 100644 --- a/test/functional/apps/visualize/replaced_vislib_chart_types/index.ts +++ b/test/functional/apps/visualize/replaced_vislib_chart_types/index.ts @@ -23,9 +23,6 @@ export default function ({ getService, loadTestFile }: FtrProviderContext) { await esArchiver.loadIfNeeded('test/functional/fixtures/es_archiver/logstash_functional'); await esArchiver.loadIfNeeded('test/functional/fixtures/es_archiver/long_window_logstash'); - }); - - before(async () => { await kibanaServer.uiSettings.update({ 'histogram:maxBars': 100, }); diff --git a/test/functional/fixtures/kbn_archiver/dashboard/current/kibana.json b/test/functional/fixtures/kbn_archiver/dashboard/current/kibana.json index 500443f11900a..a89dcf714dfc3 100644 --- a/test/functional/fixtures/kbn_archiver/dashboard/current/kibana.json +++ b/test/functional/fixtures/kbn_archiver/dashboard/current/kibana.json @@ -3175,3 +3175,53 @@ "coreMigrationVersion": "8.8.0", "typeMigrationVersion": "8.9.0" } + +{ + "id": "153e3302-1b37-4c45-9b11-91deec40ab47", + "type": "dashboard", + "namespaces": [ + "default" + ], + "updated_at": "2024-08-21T20:48:22.388Z", + "created_at": "2024-08-21T20:46:21.250Z", + "version": "WzQ4MCwxXQ==", + "attributes": { + "version": 2, + "controlGroupInput": { + "controlStyle": "oneLine", + "chainingSystem": "HIERARCHICAL", + "showApplySelections": false, + "panelsJSON": "{\"bcb81550-0843-44ea-9020-6c1ebf3228ac\":{\"type\":\"optionsListControl\",\"order\":0,\"grow\":true,\"width\":\"medium\",\"explicitInput\":{\"id\":\"bcb81550-0843-44ea-9020-6c1ebf3228ac\",\"fieldName\":\"sound.keyword\",\"title\":\"sound.keyword\",\"grow\":true,\"width\":\"medium\",\"searchTechnique\":\"prefix\",\"enhancements\":{}}},\"15925456-9e12-4b08-b2e6-4ae6ac27114d\":{\"type\":\"rangeSliderControl\",\"order\":1,\"grow\":true,\"width\":\"medium\",\"explicitInput\":{\"fieldName\":\"weightLbs\",\"title\":\"weightLbs\",\"searchTechnique\":\"exact\",\"id\":\"15925456-9e12-4b08-b2e6-4ae6ac27114d\",\"enhancements\":{}}}}", + "ignoreParentSettingsJSON": "{\"ignoreFilters\":false,\"ignoreQuery\":false,\"ignoreTimerange\":false,\"ignoreValidations\":false}" + }, + "kibanaSavedObjectMeta": { + "searchSourceJSON": "{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[]}" + }, + "description": "", + "refreshInterval": { + "pause": true, + "value": 60000 + }, + "timeRestore": true, + "optionsJSON": "{\"useMargins\":true,\"syncColors\":false,\"syncCursor\":true,\"syncTooltips\":false,\"hidePanelTitles\":false}", + "panelsJSON": "[]", + "timeFrom": "2018-01-01T00:00:00.000Z", + "title": "control group settings test dashboard", + "timeTo": "2018-04-13T00:00:00.000Z" + }, + "references": [ + { + "name": "controlGroup_bcb81550-0843-44ea-9020-6c1ebf3228ac:optionsListDataView", + "type": "index-pattern", + "id": "a0f483a0-3dc9-11e8-8660-4d65aa086b3c" + }, + { + "name": "controlGroup_15925456-9e12-4b08-b2e6-4ae6ac27114d:rangeSliderDataView", + "type": "index-pattern", + "id": "a0f483a0-3dc9-11e8-8660-4d65aa086b3c" + } + ], + "managed": false, + "coreMigrationVersion": "8.8.0", + "typeMigrationVersion": "10.2.0" +} diff --git a/test/functional/page_objects/console_page.ts b/test/functional/page_objects/console_page.ts index fcc971343cc42..b96d7ba46b253 100644 --- a/test/functional/page_objects/console_page.ts +++ b/test/functional/page_objects/console_page.ts @@ -553,7 +553,7 @@ export class ConsolePageObject extends FtrService { await this.retry.try(async () => { const firstInnerHtml = await line.getAttribute('innerHTML'); // The line number is not updated immediately after the click, so we need to wait for it. - this.common.sleep(500); + await this.common.sleep(500); line = await editor.findByCssSelector('.ace_active-line'); const secondInnerHtml = await line.getAttribute('innerHTML'); // The line number will change as the user types, but we want to wait until it's stable. diff --git a/test/functional/page_objects/dashboard_page.ts b/test/functional/page_objects/dashboard_page.ts index 408054a5c6114..73690a74b0c3d 100644 --- a/test/functional/page_objects/dashboard_page.ts +++ b/test/functional/page_objects/dashboard_page.ts @@ -85,7 +85,7 @@ export class DashboardPageObject extends FtrService { } public async expectAppStateRemovedFromURL() { - this.retry.try(async () => { + await this.retry.try(async () => { const url = await this.browser.getCurrentUrl(); expect(url.indexOf('_a')).to.be(-1); }); @@ -453,7 +453,7 @@ export class DashboardPageObject extends FtrService { const edit = editMode ? `?_a=(viewMode:edit)` : ''; dashboardLocation = `/view/${id}${edit}`; } - this.common.navigateToActualUrl('dashboard', dashboardLocation, args); + await this.common.navigateToActualUrl('dashboard', dashboardLocation, args); } public async gotoDashboardListingURL({ diff --git a/test/functional/page_objects/dashboard_page_controls.ts b/test/functional/page_objects/dashboard_page_controls.ts index c57539ba2079b..a3573438124e5 100644 --- a/test/functional/page_objects/dashboard_page_controls.ts +++ b/test/functional/page_objects/dashboard_page_controls.ts @@ -638,7 +638,7 @@ export class DashboardPageControls extends FtrService { selectedType?: string; }) { this.log.debug(`Verifying that control types match what is expected for the selected field`); - asyncForEach(supportedTypes, async (type) => { + await asyncForEach(supportedTypes, async (type) => { const controlTypeItem = await this.testSubjects.find(`create__${type}`); expect(await controlTypeItem.isEnabled()).to.be(true); if (type === selectedType) { diff --git a/test/functional/page_objects/discover_page.ts b/test/functional/page_objects/discover_page.ts index 3d364d9ff2c3e..066040c9ca727 100644 --- a/test/functional/page_objects/discover_page.ts +++ b/test/functional/page_objects/discover_page.ts @@ -413,7 +413,7 @@ export class DiscoverPageObject extends FtrService { // add the focus to the button to make it appear const skipButton = await this.testSubjects.find('discoverSkipTableButton'); // force focus on it, to make it interactable - skipButton.focus(); + await skipButton.focus(); // now click it! return skipButton.click(); } @@ -521,8 +521,8 @@ export class DiscoverPageObject extends FtrService { return await this.testSubjects.exists('discoverNoResultsTimefilter'); } - public showsErrorCallout() { - this.retry.try(async () => { + public async showsErrorCallout() { + await this.retry.try(async () => { await this.testSubjects.existOrFail('discoverErrorCalloutTitle'); }); } diff --git a/test/functional/page_objects/visual_builder_page.ts b/test/functional/page_objects/visual_builder_page.ts index 3da12ca470fe3..c2bf40b6c9042 100644 --- a/test/functional/page_objects/visual_builder_page.ts +++ b/test/functional/page_objects/visual_builder_page.ts @@ -68,7 +68,7 @@ export class VisualBuilderPageObject extends FtrService { private async toggleYesNoSwitch(testSubj: string, value: boolean) { const option = await this.testSubjects.find(`${testSubj}-${value ? 'yes' : 'no'}`); - (await option.findByCssSelector('label')).click(); + await (await option.findByCssSelector('label')).click(); await this.header.waitUntilLoadingHasFinished(); } @@ -577,7 +577,7 @@ export class VisualBuilderPageObject extends FtrService { if (useKibanaIndices === false) { const el = await this.testSubjects.find(metricsIndexPatternInput); - el.focus(); + await el.focus(); await el.clearValue(); if (value) { await el.type(value, { charByChar: true }); diff --git a/test/functional/page_objects/visualize_chart_page.ts b/test/functional/page_objects/visualize_chart_page.ts index f8c48cb3af437..e943ebda715f6 100644 --- a/test/functional/page_objects/visualize_chart_page.ts +++ b/test/functional/page_objects/visualize_chart_page.ts @@ -287,7 +287,7 @@ export class VisualizeChartPageObject extends FtrService { const legendItemColor = await chart.findByCssSelector( `[data-ech-series-name="${name}"] .echLegendItem__color` ); - legendItemColor.click(); + await legendItemColor.click(); await this.waitForVisualizationRenderingStabilized(); // arbitrary color chosen, any available would do @@ -307,7 +307,7 @@ export class VisualizeChartPageObject extends FtrService { const legendItemColor = await chart.findByCssSelector( `[data-ech-series-name="${name}"] .echLegendItem__color` ); - legendItemColor.click(); + await legendItemColor.click(); } else { // This click has been flaky in opening the legend, hence the this.retry. See // https://github.com/elastic/kibana/issues/17468 @@ -333,7 +333,7 @@ export class VisualizeChartPageObject extends FtrService { cell ); await this.common.sleep(2000); - filterBtn.click(); + await filterBtn.click(); }); } diff --git a/test/functional/page_objects/visualize_editor_page.ts b/test/functional/page_objects/visualize_editor_page.ts index 1d399f4e9c741..ef1f074f82611 100644 --- a/test/functional/page_objects/visualize_editor_page.ts +++ b/test/functional/page_objects/visualize_editor_page.ts @@ -280,7 +280,7 @@ export class VisualizeEditorPageObject extends FtrService { public async setCustomLabel(label: string, index: number | string = 1) { const customLabel = await this.testSubjects.find(`visEditorStringInput${index}customLabel`); - customLabel.type(label); + await customLabel.type(label); } public async selectYAxisAggregation(agg: string, field: string, label: string, index = 1) { diff --git a/test/functional/services/dashboard/expectations.ts b/test/functional/services/dashboard/expectations.ts index 476ffb49f13ee..6e3deae8fae32 100644 --- a/test/functional/services/dashboard/expectations.ts +++ b/test/functional/services/dashboard/expectations.ts @@ -284,11 +284,11 @@ export class DashboardExpectService extends FtrService { } async savedSearchRowsExist() { - this.testSubjects.existOrFail('docTableExpandToggleColumn'); + await this.testSubjects.existOrFail('docTableExpandToggleColumn'); } async savedSearchRowsMissing() { - this.testSubjects.missingOrFail('docTableExpandToggleColumn'); + await this.testSubjects.missingOrFail('docTableExpandToggleColumn'); } async dataTableRowCount(expectedCount: number) { diff --git a/test/functional/services/dashboard/panel_drilldown_actions.ts b/test/functional/services/dashboard/panel_drilldown_actions.ts index f4ff1b3ede975..1374890fe97c4 100644 --- a/test/functional/services/dashboard/panel_drilldown_actions.ts +++ b/test/functional/services/dashboard/panel_drilldown_actions.ts @@ -69,7 +69,7 @@ export function DashboardDrilldownPanelActionsProvider({ getService }: FtrProvid async clickActionByText(text: string) { log.debug(`clickActionByText: "${text}"`); - (await this.getActionWebElementByText(text)).click(); + await (await this.getActionWebElementByText(text)).click(); } async getActionHrefByText(text: string) { @@ -80,7 +80,7 @@ export function DashboardDrilldownPanelActionsProvider({ getService }: FtrProvid async openHrefByText(text: string) { log.debug(`openHref: "${text}"`); - (await this.getActionWebElementByText(text)).openHref(); + await (await this.getActionWebElementByText(text)).openHref(); } async getActionWebElementByText(text: string): Promise { diff --git a/test/functional/services/listing_table.ts b/test/functional/services/listing_table.ts index a3a056358fa24..6368474d4886a 100644 --- a/test/functional/services/listing_table.ts +++ b/test/functional/services/listing_table.ts @@ -53,14 +53,14 @@ export class ListingTableService extends FtrService { */ public async setSearchFilterValue(value: string) { const searchFilter = await this.getSearchFilter(); - searchFilter.type(value); + await searchFilter.type(value); } /** * Clears search input on landing page */ public async clearSearchFilter() { - this.testSubjects.click('clearSearchButton'); + await this.testSubjects.click('clearSearchButton'); } private async getAllItemsNamesOnCurrentPage(): Promise { diff --git a/test/plugin_functional/test_suites/core/route.ts b/test/plugin_functional/test_suites/core/route.ts index 597189dd5faf3..90189fe72c804 100644 --- a/test/plugin_functional/test_suites/core/route.ts +++ b/test/plugin_functional/test_suites/core/route.ts @@ -23,12 +23,12 @@ export default function ({ getService }: PluginFunctionalProviderContext) { request.write(body[i++]); } else { clearInterval(intervalId); - request.end((err, res) => { + void request.end((err, res) => { resolve(res); }); } }, interval); - request.on('error', (err) => { + void request.on('error', (err) => { clearInterval(intervalId); reject(err); }); diff --git a/test/plugin_functional/test_suites/core_plugins/rendering.ts b/test/plugin_functional/test_suites/core_plugins/rendering.ts index a7afb228f5c1f..f4e43bf5fc06d 100644 --- a/test/plugin_functional/test_suites/core_plugins/rendering.ts +++ b/test/plugin_functional/test_suites/core_plugins/rendering.ts @@ -123,6 +123,7 @@ export default function ({ getService }: PluginFunctionalProviderContext) { 'data.search.sessions.management.refreshTimeout (duration?)', 'data.search.sessions.maxUpdateRetries (number?)', 'data.search.sessions.notTouchedTimeout (duration?)', + 'data.query.timefilter.minRefreshInterval (number?)', 'data_views.scriptedFieldsEnabled (boolean?|never)', 'data_visualizer.resultLinks.fileBeat.enabled (boolean)', 'dev_tools.deeplinks.navLinkStatus (string?)', diff --git a/test/plugin_functional/test_suites/telemetry/telemetry.ts b/test/plugin_functional/test_suites/telemetry/telemetry.ts index a998e139eb5c6..2c542d3598f29 100644 --- a/test/plugin_functional/test_suites/telemetry/telemetry.ts +++ b/test/plugin_functional/test_suites/telemetry/telemetry.ts @@ -22,6 +22,7 @@ export default function ({ getService, getPageObjects }: PluginFunctionalProvide const browser = getService('browser'); const find = getService('find'); const supertest = getService('supertest'); + const log = getService('log'); const PageObjects = getPageObjects(['common']); describe('Telemetry service', () => { @@ -30,7 +31,8 @@ export default function ({ getService, getPageObjects }: PluginFunctionalProvide return browser.executeAsync((cb) => { (window as unknown as Record Promise>) ._checkCanSendTelemetry() - .then(cb); + .then(cb) + .catch((err) => log.error(err)); }); }; @@ -39,7 +41,8 @@ export default function ({ getService, getPageObjects }: PluginFunctionalProvide await browser.executeAsync((cb) => { (window as unknown as Record Promise>) ._resetTelemetry() - .then(() => cb()); + .then(() => cb()) + .catch((err) => log.error(err)); }); }); diff --git a/tsconfig.base.json b/tsconfig.base.json index a94e45a8c5f2d..8eb24fb127bb8 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -192,6 +192,10 @@ "@kbn/console-plugin/*": ["src/plugins/console/*"], "@kbn/content-management-content-editor": ["packages/content-management/content_editor"], "@kbn/content-management-content-editor/*": ["packages/content-management/content_editor/*"], + "@kbn/content-management-content-insights-public": ["packages/content-management/content_insights/content_insights_public"], + "@kbn/content-management-content-insights-public/*": ["packages/content-management/content_insights/content_insights_public/*"], + "@kbn/content-management-content-insights-server": ["packages/content-management/content_insights/content_insights_server"], + "@kbn/content-management-content-insights-server/*": ["packages/content-management/content_insights/content_insights_server/*"], "@kbn/content-management-examples-plugin": ["examples/content_management_examples"], "@kbn/content-management-examples-plugin/*": ["examples/content_management_examples/*"], "@kbn/content-management-favorites-public": ["packages/content-management/favorites/favorites_public"], @@ -1454,8 +1458,12 @@ "@kbn/screenshotting-example-plugin/*": ["x-pack/examples/screenshotting_example/*"], "@kbn/screenshotting-plugin": ["x-pack/plugins/screenshotting"], "@kbn/screenshotting-plugin/*": ["x-pack/plugins/screenshotting/*"], + "@kbn/screenshotting-server": ["packages/kbn-screenshotting-server"], + "@kbn/screenshotting-server/*": ["packages/kbn-screenshotting-server/*"], "@kbn/search-api-panels": ["packages/kbn-search-api-panels"], "@kbn/search-api-panels/*": ["packages/kbn-search-api-panels/*"], + "@kbn/search-assistant": ["x-pack/plugins/search_assistant"], + "@kbn/search-assistant/*": ["x-pack/plugins/search_assistant/*"], "@kbn/search-connectors": ["packages/kbn-search-connectors"], "@kbn/search-connectors/*": ["packages/kbn-search-connectors/*"], "@kbn/search-connectors-plugin": ["x-pack/plugins/search_connectors"], @@ -1468,6 +1476,8 @@ "@kbn/search-homepage/*": ["x-pack/plugins/search_homepage/*"], "@kbn/search-index-documents": ["packages/kbn-search-index-documents"], "@kbn/search-index-documents/*": ["packages/kbn-search-index-documents/*"], + "@kbn/search-indices": ["x-pack/plugins/search_indices"], + "@kbn/search-indices/*": ["x-pack/plugins/search_indices/*"], "@kbn/search-inference-endpoints": ["x-pack/plugins/search_inference_endpoints"], "@kbn/search-inference-endpoints/*": ["x-pack/plugins/search_inference_endpoints/*"], "@kbn/search-notebooks": ["x-pack/plugins/search_notebooks"], @@ -1484,6 +1494,8 @@ "@kbn/security-api-integration-helpers/*": ["x-pack/test/security_api_integration/packages/helpers/*"], "@kbn/security-api-key-management": ["x-pack/packages/security/api_key_management"], "@kbn/security-api-key-management/*": ["x-pack/packages/security/api_key_management/*"], + "@kbn/security-authorization-core": ["x-pack/packages/security/authorization_core"], + "@kbn/security-authorization-core/*": ["x-pack/packages/security/authorization_core/*"], "@kbn/security-form-components": ["x-pack/packages/security/form_components"], "@kbn/security-form-components/*": ["x-pack/packages/security/form_components/*"], "@kbn/security-hardening": ["packages/kbn-security-hardening"], @@ -1496,6 +1508,8 @@ "@kbn/security-plugin-types-public/*": ["x-pack/packages/security/plugin_types_public/*"], "@kbn/security-plugin-types-server": ["x-pack/packages/security/plugin_types_server"], "@kbn/security-plugin-types-server/*": ["x-pack/packages/security/plugin_types_server/*"], + "@kbn/security-role-management-model": ["x-pack/packages/security/role_management_model"], + "@kbn/security-role-management-model/*": ["x-pack/packages/security/role_management_model/*"], "@kbn/security-solution-distribution-bar": ["x-pack/packages/security-solution/distribution_bar"], "@kbn/security-solution-distribution-bar/*": ["x-pack/packages/security-solution/distribution_bar/*"], "@kbn/security-solution-ess": ["x-pack/plugins/security_solution_ess"], @@ -1694,6 +1708,8 @@ "@kbn/shared-ux-storybook-mock/*": ["packages/shared-ux/storybook/mock/*"], "@kbn/shared-ux-tabbed-modal": ["packages/shared-ux/modal/tabbed"], "@kbn/shared-ux-tabbed-modal/*": ["packages/shared-ux/modal/tabbed/*"], + "@kbn/shared-ux-table-persist": ["packages/shared-ux/table_persist"], + "@kbn/shared-ux-table-persist/*": ["packages/shared-ux/table_persist/*"], "@kbn/shared-ux-utility": ["packages/kbn-shared-ux-utility"], "@kbn/shared-ux-utility/*": ["packages/kbn-shared-ux-utility/*"], "@kbn/slo-plugin": ["x-pack/plugins/observability_solution/slo"], diff --git a/x-pack/.i18nrc.json b/x-pack/.i18nrc.json index 97a7a92c93b5a..f2ab7a782915e 100644 --- a/x-pack/.i18nrc.json +++ b/x-pack/.i18nrc.json @@ -102,9 +102,11 @@ "xpack.runtimeFields": "plugins/runtime_fields", "xpack.screenshotting": "plugins/screenshotting", "xpack.searchHomepage": "plugins/search_homepage", + "xpack.searchIndices": "plugins/search_indices", "xpack.searchNotebooks": "plugins/search_notebooks", "xpack.searchPlayground": "plugins/search_playground", "xpack.searchInferenceEndpoints": "plugins/search_inference_endpoints", + "xpack.searchAssistant": "plugins/search_assistant", "xpack.searchProfiler": "plugins/searchprofiler", "xpack.security": ["plugins/security", "packages/security"], "xpack.server": "legacy/server", diff --git a/x-pack/packages/kbn-data-forge/src/lib/create_config.ts b/x-pack/packages/kbn-data-forge/src/lib/create_config.ts index 43e51b2c93438..1373f20a5dd1f 100644 --- a/x-pack/packages/kbn-data-forge/src/lib/create_config.ts +++ b/x-pack/packages/kbn-data-forge/src/lib/create_config.ts @@ -14,7 +14,7 @@ import { DEFAULTS } from '../constants'; export async function readConfig(filePath: string): Promise { const data = await promises.readFile(filePath); - const decodedPartialConfig = PartialConfigRT.decode(yaml.load(data.toString())); + const decodedPartialConfig = PartialConfigRT.decode(yaml.safeLoad(data.toString())); if (isLeft(decodedPartialConfig)) { throw new Error( `Could not validate config: ${PathReporter.report(decodedPartialConfig).join('\n')}` diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/actions_connector/post_actions_connector_execute_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/actions_connector/post_actions_connector_execute_route.gen.ts index 52174259eeec5..7a184fa28916f 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/actions_connector/post_actions_connector_execute_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/actions_connector/post_actions_connector_execute_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '../common_attributes.gen'; import { Replacements } from '../conversations/common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/bulk_crud_anonymization_fields_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/bulk_crud_anonymization_fields_route.gen.ts index 4aed90462893c..0e66e1bf4eede 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/bulk_crud_anonymization_fields_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/bulk_crud_anonymization_fields_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/find_anonymization_fields_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/find_anonymization_fields_route.gen.ts index d74f96b9be6ce..1c478cb0b1f5c 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/find_anonymization_fields_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/anonymization_fields/find_anonymization_fields_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ArrayFromString } from '@kbn/zod-helpers'; import { SortOrder } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/cancel_attack_discovery_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/cancel_attack_discovery_route.gen.ts index bc59404e0abff..8c99ca0756eb3 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/cancel_attack_discovery_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/cancel_attack_discovery_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '../common_attributes.gen'; import { AttackDiscoveryResponse } from './common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/common_attributes.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/common_attributes.gen.ts index 57b79b87fe4f9..9599e8596e553 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/common_attributes.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/common_attributes.gen.ts @@ -14,7 +14,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString, User } from '../common_attributes.gen'; import { Replacements, ApiConfig } from '../conversations/common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/get_attack_discovery_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/get_attack_discovery_route.gen.ts index 00eb09809614b..765a24e00ba52 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/get_attack_discovery_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/get_attack_discovery_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '../common_attributes.gen'; import { AttackDiscoveryResponse, AttackDiscoveryStat } from './common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/post_attack_discovery_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/post_attack_discovery_route.gen.ts index d2912c6e09ba2..e080be1138eb3 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/post_attack_discovery_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/attack_discovery/post_attack_discovery_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { AnonymizationFieldResponse } from '../anonymization_fields/bulk_crud_anonymization_fields_route.gen'; import { ApiConfig, Replacements } from '../conversations/common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/capabilities/get_capabilities_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/capabilities/get_capabilities_route.gen.ts index 6341f7296f390..55797f5d97847 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/capabilities/get_capabilities_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/capabilities/get_capabilities_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type GetCapabilitiesResponse = z.infer; export const GetCapabilitiesResponse = z.object({ diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/chat/post_chat_complete_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/chat/post_chat_complete_route.gen.ts index 0b6c3bbe6cbb3..cd43bda23faf4 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/chat/post_chat_complete_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/chat/post_chat_complete_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type RootContext = z.infer; export const RootContext = z.literal('security'); diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common.ts index 5e847aef69fc0..64745bf1c9c28 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common.ts @@ -14,7 +14,7 @@ import type { RouteValidationResultFactory, RouteValidationError, } from '@kbn/core/server'; -import type { TypeOf, ZodType } from 'zod'; +import type { TypeOf, ZodType } from '@kbn/zod'; import { stringifyZodError } from '@kbn/zod-helpers'; type RequestValidationResult = diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common_attributes.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common_attributes.gen.ts index 613d54fa080fb..1697011a08532 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common_attributes.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/common_attributes.gen.ts @@ -14,7 +14,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; /** * A string that is not empty and does not contain only whitespace diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/append_message.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/append_message.gen.ts index 7789a4fbb2983..6a35bd91378de 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/append_message.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/append_message.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString } from '../common_attributes.gen'; import { ConversationMessageCreateProps, ConversationResponse } from './common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/bulk_crud_conversations_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/bulk_crud_conversations_route.gen.ts index 65ea85b3f0190..b26ae9d9d913f 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/bulk_crud_conversations_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/bulk_crud_conversations_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ConversationCreateProps, diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/common_attributes.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/common_attributes.gen.ts index 03f63ec0f2d29..1ba701474b1f8 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/common_attributes.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/common_attributes.gen.ts @@ -14,7 +14,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString, User } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/crud_conversation_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/crud_conversation_route.gen.ts index 4145cb66b2852..8fd92c41f1a51 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/crud_conversation_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/crud_conversation_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ConversationCreateProps, diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/find_conversations_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/find_conversations_route.gen.ts index 95c9f7f53c8a2..244a88fa1daff 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/find_conversations_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/conversations/find_conversations_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ArrayFromString } from '@kbn/zod-helpers'; import { SortOrder } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/get_evaluate_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/get_evaluate_route.gen.ts index 6040e2bf9704d..e7999a8665cda 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/get_evaluate_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/get_evaluate_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; export type GetEvaluateResponse = z.infer; export const GetEvaluateResponse = z.object({ diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/post_evaluate_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/post_evaluate_route.gen.ts index eff5240968ce5..b6d51b9bea3fc 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/post_evaluate_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/evaluation/post_evaluate_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { Replacements } from '../conversations/common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/bulk_crud_knowledge_base_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/bulk_crud_knowledge_base_route.gen.ts index 5c5f7e2faafb9..44759badb7374 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/bulk_crud_knowledge_base_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/bulk_crud_knowledge_base_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { KnowledgeBaseEntryCreateProps, diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/common_attributes.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/common_attributes.gen.ts index d1cc9b57460c2..2736baf8a135d 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/common_attributes.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/common_attributes.gen.ts @@ -14,7 +14,7 @@ * version: not applicable */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString, User } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_kb_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_kb_route.gen.ts index 04b97d826c69e..f18bfb57fa359 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_kb_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_kb_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; /** * AI assistant KnowledgeBase. diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_knowledge_base_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_knowledge_base_route.gen.ts index 669292e955ec9..c73fb3ba7b7cf 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_knowledge_base_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/crud_knowledge_base_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { KnowledgeBaseEntryCreateProps, diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/find_knowledge_base_entries_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/find_knowledge_base_entries_route.gen.ts index 25db35693c3dc..cb5ae50ec81f0 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/find_knowledge_base_entries_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/find_knowledge_base_entries_route.gen.ts @@ -14,7 +14,7 @@ * version: 1 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ArrayFromString } from '@kbn/zod-helpers'; import { SortOrder } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen.ts index 820d27dca30ce..1196de5cecf3d 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { NonEmptyString, User } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/find_prompts_route.gen.ts b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/find_prompts_route.gen.ts index ab40398cddbdb..5c4efb19a44ef 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/find_prompts_route.gen.ts +++ b/x-pack/packages/kbn-elastic-assistant-common/impl/schemas/prompts/find_prompts_route.gen.ts @@ -14,7 +14,7 @@ * version: 2023-10-31 */ -import { z } from 'zod'; +import { z } from '@kbn/zod'; import { ArrayFromString } from '@kbn/zod-helpers'; import { SortOrder } from '../common_attributes.gen'; diff --git a/x-pack/packages/kbn-elastic-assistant-common/tsconfig.json b/x-pack/packages/kbn-elastic-assistant-common/tsconfig.json index 02f5f7b3babd5..b9f4da3d1f1dc 100644 --- a/x-pack/packages/kbn-elastic-assistant-common/tsconfig.json +++ b/x-pack/packages/kbn-elastic-assistant-common/tsconfig.json @@ -20,5 +20,6 @@ "@kbn/securitysolution-io-ts-utils", "@kbn/core", "@kbn/logging", + "@kbn/zod", ] } diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/empty_convo.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/empty_convo.tsx new file mode 100644 index 0000000000000..9ec703093d44f --- /dev/null +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/empty_convo.tsx @@ -0,0 +1,79 @@ +/* + * 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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React, { Dispatch, SetStateAction } from 'react'; +import { EuiFlexGroup, EuiFlexItem, EuiPanel, EuiText } from '@elastic/eui'; +import { css } from '@emotion/react'; +import { PromptResponse } from '@kbn/elastic-assistant-common'; +import { QueryObserverResult } from '@tanstack/react-query'; +import { Conversation } from '../../..'; +import { AssistantAnimatedIcon } from '../assistant_animated_icon'; +import { SystemPrompt } from '../prompt_editor/system_prompt'; +import { SetupKnowledgeBaseButton } from '../../knowledge_base/setup_knowledge_base_button'; +import * as i18n from '../translations'; + +interface Props { + currentConversation: Conversation | undefined; + currentSystemPromptId: string | undefined; + isSettingsModalVisible: boolean; + refetchCurrentUserConversations: () => Promise< + QueryObserverResult, unknown> + >; + setIsSettingsModalVisible: Dispatch>; + setCurrentSystemPromptId: Dispatch>; + allSystemPrompts: PromptResponse[]; +} + +export const EmptyConvo: React.FC = ({ + allSystemPrompts, + currentConversation, + currentSystemPromptId, + isSettingsModalVisible, + refetchCurrentUserConversations, + setCurrentSystemPromptId, + setIsSettingsModalVisible, +}) => { + return ( + + + + + + + + + +

{i18n.EMPTY_SCREEN_TITLE}

+

{i18n.EMPTY_SCREEN_DESCRIPTION}

+
+
+ + + + + + +
+
+
+
+ ); +}; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/index.tsx new file mode 100644 index 0000000000000..362ab6e3e41ef --- /dev/null +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/index.tsx @@ -0,0 +1,140 @@ +/* + * 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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React, { + Dispatch, + FunctionComponent, + SetStateAction, + useEffect, + useMemo, + useRef, +} from 'react'; +import { EuiEmptyPrompt, EuiFlexGroup, EuiFlexItem, EuiPanel, EuiText } from '@elastic/eui'; +import { HttpSetup } from '@kbn/core-http-browser'; +import { euiThemeVars } from '@kbn/ui-theme'; +import { css } from '@emotion/react'; +import { PromptResponse } from '@kbn/elastic-assistant-common'; +import { QueryObserverResult } from '@tanstack/react-query'; +import { AssistantAnimatedIcon } from '../assistant_animated_icon'; +import { EmptyConvo } from './empty_convo'; +import { WelcomeSetup } from './welcome_setup'; +import { Conversation } from '../../..'; +import { UpgradeLicenseCallToAction } from '../upgrade_license_cta'; +import * as i18n from '../translations'; +interface Props { + allSystemPrompts: PromptResponse[]; + comments: JSX.Element; + currentConversation: Conversation | undefined; + currentSystemPromptId: string | undefined; + handleOnConversationSelected: ({ cId, cTitle }: { cId: string; cTitle: string }) => Promise; + isAssistantEnabled: boolean; + isSettingsModalVisible: boolean; + isWelcomeSetup: boolean; + isLoading: boolean; + refetchCurrentUserConversations: () => Promise< + QueryObserverResult, unknown> + >; + http: HttpSetup; + setCurrentSystemPromptId: Dispatch>; + setIsSettingsModalVisible: Dispatch>; +} + +export const AssistantBody: FunctionComponent = ({ + allSystemPrompts, + comments, + currentConversation, + currentSystemPromptId, + handleOnConversationSelected, + setCurrentSystemPromptId, + http, + isAssistantEnabled, + isLoading, + isSettingsModalVisible, + isWelcomeSetup, + refetchCurrentUserConversations, + setIsSettingsModalVisible, +}) => { + const isNewConversation = useMemo( + () => currentConversation?.messages.length === 0, + [currentConversation?.messages.length] + ); + + const disclaimer = useMemo( + () => + isNewConversation && ( + + {i18n.DISCLAIMER} + + ), + [isNewConversation] + ); + + // Start Scrolling + const commentsContainerRef = useRef(null); + + useEffect(() => { + const parent = commentsContainerRef.current?.parentElement; + + if (!parent) { + return; + } + // when scrollHeight changes, parent is scrolled to bottom + parent.scrollTop = parent.scrollHeight; + + ( + commentsContainerRef.current?.childNodes[0].childNodes[0] as HTMLElement + ).lastElementChild?.scrollIntoView(); + }); + // End Scrolling + + if (!isAssistantEnabled) { + return ; + } + + return ( + + + {isLoading ? ( + } /> + ) : isWelcomeSetup ? ( + + ) : currentConversation?.messages.length === 0 ? ( + + ) : ( + { + commentsContainerRef.current = (element?.parentElement as HTMLDivElement) || null; + }} + > + {comments} + + )} + + {disclaimer} + + ); +}; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/welcome_setup.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/welcome_setup.tsx new file mode 100644 index 0000000000000..93d4b0e960569 --- /dev/null +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_body/welcome_setup.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React from 'react'; +import { EuiFlexGroup, EuiFlexItem, EuiPanel, EuiText } from '@elastic/eui'; +import { css } from '@emotion/react'; +import { Conversation } from '../../..'; +import { AssistantAnimatedIcon } from '../assistant_animated_icon'; +import { ConnectorSetup } from '../../connectorland/connector_setup'; +import * as i18n from '../translations'; + +interface Props { + currentConversation: Conversation | undefined; + handleOnConversationSelected: ({ cId, cTitle }: { cId: string; cTitle: string }) => Promise; +} + +export const WelcomeSetup: React.FC = ({ + handleOnConversationSelected, + currentConversation, +}) => { + return ( + + + + + + + + + +

{i18n.WELCOME_SCREEN_TITLE}

+
+
+ + +

{i18n.WELCOME_SCREEN_DESCRIPTION}

+
+
+ + + +
+
+
+
+ ); +}; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.test.tsx index b4f4bd2c25384..fa358b26c2c3a 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.test.tsx @@ -26,6 +26,7 @@ const testProps = { ELASTIC_WEBSITE_URL: 'https://www.elastic.co/', DOC_LINK_VERSION: 'master', }, + isLoading: false, isDisabled: false, isSettingsModalVisible: false, onConversationSelected, @@ -35,7 +36,7 @@ const testProps = { onChatCleared: jest.fn(), showAnonymizedValues: false, conversations: mockConversations, - refetchConversationsState: jest.fn(), + refetchCurrentUserConversations: jest.fn(), isAssistantEnabled: true, anonymizationFields: { total: 0, page: 1, perPage: 1000, data: [] }, refetchAnonymizationFieldsResults: jest.fn(), diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.tsx index 30e620ea38873..7c63c59ee58b9 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_header/index.tsx @@ -16,10 +16,12 @@ import { EuiPanel, EuiConfirmModal, EuiToolTip, + EuiSkeletonTitle, } from '@elastic/eui'; import { css } from '@emotion/react'; import { euiThemeVars } from '@kbn/ui-theme'; import { isEmpty } from 'lodash'; +import { DataStreamApis } from '../use_data_stream_apis'; import { Conversation } from '../../..'; import { AssistantTitle } from '../assistant_title'; import { ConnectorSelectorInline } from '../../connectorland/connector_selector_inline/connector_selector_inline'; @@ -32,6 +34,7 @@ interface OwnProps { selectedConversation: Conversation | undefined; defaultConnector?: AIConnector; isDisabled: boolean; + isLoading: boolean; isSettingsModalVisible: boolean; onToggleShowAnonymizedValues: () => void; setIsSettingsModalVisible: React.Dispatch>; @@ -43,7 +46,7 @@ interface OwnProps { onConversationSelected: ({ cId, cTitle }: { cId: string; cTitle: string }) => void; conversations: Record; conversationsLoaded: boolean; - refetchConversationsState: () => Promise; + refetchCurrentUserConversations: DataStreamApis['refetchCurrentUserConversations']; onConversationCreate: () => Promise; isAssistantEnabled: boolean; refetchPrompts?: ( @@ -61,6 +64,7 @@ export const AssistantHeader: React.FC = ({ selectedConversation, defaultConnector, isDisabled, + isLoading, isSettingsModalVisible, onToggleShowAnonymizedValues, setIsSettingsModalVisible, @@ -72,7 +76,7 @@ export const AssistantHeader: React.FC = ({ onConversationSelected, conversations, conversationsLoaded, - refetchConversationsState, + refetchCurrentUserConversations, onConversationCreate, isAssistantEnabled, refetchPrompts, @@ -144,6 +148,7 @@ export const AssistantHeader: React.FC = ({ return ( <> = ({ onConversationSelected={onConversationSelected} conversations={conversations} conversationsLoaded={conversationsLoaded} - refetchConversationsState={refetchConversationsState} + refetchCurrentUserConversations={refetchCurrentUserConversations} refetchPrompts={refetchPrompts} /> @@ -196,11 +201,16 @@ export const AssistantHeader: React.FC = ({ overflow: hidden; `} > - + {isLoading ? ( + + ) : ( + + )} @@ -240,6 +250,7 @@ export const AssistantHeader: React.FC = ({ button={ void; children: React.ReactNode; onConversationCreate?: () => Promise; @@ -35,7 +36,14 @@ const VerticalSeparator = styled.div` */ export const FlyoutNavigation = memo( - ({ isExpanded, setIsExpanded, children, onConversationCreate, isAssistantEnabled }) => { + ({ + isLoading, + isExpanded, + setIsExpanded, + children, + onConversationCreate, + isAssistantEnabled, + }) => { const onToggle = useCallback( () => setIsExpanded && setIsExpanded(!isExpanded), [isExpanded, setIsExpanded] @@ -44,7 +52,7 @@ export const FlyoutNavigation = memo( const toggleButton = useMemo( () => ( ( } /> ), - [isAssistantEnabled, isExpanded, onToggle] + [isAssistantEnabled, isExpanded, isLoading, onToggle] ); return ( @@ -99,7 +107,7 @@ export const FlyoutNavigation = memo( color="primary" iconType="newChat" onClick={onConversationCreate} - disabled={!isAssistantEnabled} + disabled={isLoading || !isAssistantEnabled} > {NEW_CHAT} diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_overlay/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_overlay/index.tsx index 689f60f0a52d9..1e43dcb889e9b 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_overlay/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_overlay/index.tsx @@ -18,7 +18,6 @@ import { UserAvatar, } from '../../assistant_context'; import { Assistant, CONVERSATION_SIDE_PANEL_WIDTH } from '..'; -import { WELCOME_CONVERSATION_TITLE } from '../use_conversation/translations'; const isMac = navigator.platform.toLowerCase().indexOf('mac') >= 0; @@ -38,9 +37,8 @@ export const UnifiedTimelineGlobalStyles = createGlobalStyle` export const AssistantOverlay = React.memo(({ currentUserAvatar }) => { const [isModalVisible, setIsModalVisible] = useState(false); - const [conversationTitle, setConversationTitle] = useState( - WELCOME_CONVERSATION_TITLE - ); + // Why is this named Title and not Id? + const [conversationTitle, setConversationTitle] = useState(undefined); const [promptContextId, setPromptContextId] = useState(); const { assistantTelemetry, setShowAssistantOverlay, getLastConversationId } = useAssistantContext(); @@ -55,16 +53,12 @@ export const AssistantOverlay = React.memo(({ currentUserAvatar }) => { promptContextId: pid, conversationTitle: cTitle, }: ShowAssistantOverlayProps) => { - const newConversationTitle = getLastConversationId(cTitle); - if (so) - assistantTelemetry?.reportAssistantInvoked({ - conversationId: newConversationTitle, - invokedBy: 'click', - }); + const conversationId = getLastConversationId(cTitle); + if (so) assistantTelemetry?.reportAssistantInvoked({ conversationId, invokedBy: 'click' }); setIsModalVisible(so); setPromptContextId(pid); - setConversationTitle(newConversationTitle); + setConversationTitle(conversationId); }, [assistantTelemetry, getLastConversationId] ); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.test.tsx index d9dd84cb0b51d..16d42145ad372 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.test.tsx @@ -15,7 +15,7 @@ const testProps = { docLinks: { ELASTIC_WEBSITE_URL: 'https://www.elastic.co/', DOC_LINK_VERSION: '7.15' }, selectedConversation: undefined, onChange: jest.fn(), - refetchConversationsState: jest.fn(), + refetchCurrentUserConversations: jest.fn(), }; describe('AssistantTitle', () => { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.tsx index 2090a92645c65..9b75c2e9e7c53 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/assistant_title/index.tsx @@ -8,6 +8,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import { EuiFlexGroup, EuiFlexItem, EuiInlineEditTitle } from '@elastic/eui'; import { css } from '@emotion/react'; +import { DataStreamApis } from '../use_data_stream_apis'; import type { Conversation } from '../../..'; import { AssistantAvatar } from '../assistant_avatar/assistant_avatar'; import { useConversation } from '../use_conversation'; @@ -18,10 +19,11 @@ import { NEW_CHAT } from '../conversations/conversation_sidepanel/translations'; * information about the assistant feature and access to documentation. */ export const AssistantTitle: React.FC<{ + isDisabled?: boolean; title?: string; selectedConversation: Conversation | undefined; - refetchConversationsState: () => Promise; -}> = ({ title, selectedConversation, refetchConversationsState }) => { + refetchCurrentUserConversations: DataStreamApis['refetchCurrentUserConversations']; +}> = ({ title, selectedConversation, refetchCurrentUserConversations, isDisabled = false }) => { const [newTitle, setNewTitle] = useState(title); const [newTitleError, setNewTitleError] = useState(false); const { updateConversationTitle } = useConversation(); @@ -35,10 +37,10 @@ export const AssistantTitle: React.FC<{ conversationId: selectedConversation.id, updatedTitle, }); - await refetchConversationsState(); + await refetchCurrentUserConversations(); } }, - [refetchConversationsState, selectedConversation, updateConversationTitle] + [refetchCurrentUserConversations, selectedConversation, updateConversationTitle] ); useEffect(() => { @@ -62,7 +64,7 @@ export const AssistantTitle: React.FC<{ value={newTitle ?? NEW_CHAT} size="xs" isInvalid={!!newTitleError} - isReadOnly={selectedConversation?.isDefault} + isReadOnly={isDisabled || selectedConversation?.isDefault} onChange={(e) => setNewTitle(e.currentTarget.nodeValue || '')} onCancel={() => setNewTitle(title)} onSave={handleUpdateTitle} diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/block_bot/cta.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/block_bot/cta.test.tsx deleted file mode 100644 index 72881ac0bdc9c..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/block_bot/cta.test.tsx +++ /dev/null @@ -1,48 +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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ -import React from 'react'; -import { render } from '@testing-library/react'; -import { BlockBotCallToAction } from './cta'; -import { HttpSetup } from '@kbn/core-http-browser'; - -const testProps = { - connectorPrompt:
{'Connector Prompt'}
, - http: { basePath: { get: jest.fn(() => 'http://localhost:5601') } } as unknown as HttpSetup, - isAssistantEnabled: false, - isWelcomeSetup: false, -}; - -describe('BlockBotCallToAction', () => { - it('UpgradeButtons is rendered when isAssistantEnabled is false and isWelcomeSetup is false', () => { - const { getByTestId, queryByTestId } = render(); - expect(getByTestId('upgrade-buttons')).toBeInTheDocument(); - expect(queryByTestId('connector-prompt')).not.toBeInTheDocument(); - }); - - it('connectorPrompt is rendered when isAssistantEnabled is true and isWelcomeSetup is true', () => { - const props = { - ...testProps, - isAssistantEnabled: true, - isWelcomeSetup: true, - }; - const { getByTestId, queryByTestId } = render(); - expect(getByTestId('connector-prompt')).toBeInTheDocument(); - expect(queryByTestId('upgrade-buttons')).not.toBeInTheDocument(); - }); - - it('null is returned when isAssistantEnabled is true and isWelcomeSetup is false', () => { - const props = { - ...testProps, - isAssistantEnabled: true, - isWelcomeSetup: false, - }; - const { container, queryByTestId } = render(); - expect(container.firstChild).toBeNull(); - expect(queryByTestId('connector-prompt')).not.toBeInTheDocument(); - expect(queryByTestId('upgrade-buttons')).not.toBeInTheDocument(); - }); -}); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.test.tsx index 99f30cde68a82..48e2424d2259d 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.test.tsx @@ -12,12 +12,12 @@ import { TestProviders } from '../../mock/test_providers/test_providers'; jest.mock('./use_chat_send'); -const handlePromptChange = jest.fn(); -const handleSendMessage = jest.fn(); +const setUserPrompt = jest.fn(); +const handleChatSend = jest.fn(); const handleRegenerateResponse = jest.fn(); const testProps: Props = { - handlePromptChange, - handleSendMessage, + setUserPrompt, + handleChatSend, handleRegenerateResponse, isLoading: false, isDisabled: false, @@ -35,7 +35,7 @@ describe('ChatSend', () => { const promptTextArea = getByTestId('prompt-textarea'); const promptText = 'valid prompt text'; fireEvent.change(promptTextArea, { target: { value: promptText } }); - expect(handlePromptChange).toHaveBeenCalledWith(promptText); + expect(setUserPrompt).toHaveBeenCalledWith(promptText); }); it('a message is sent when send button is clicked', async () => { @@ -46,7 +46,7 @@ describe('ChatSend', () => { expect(getByTestId('prompt-textarea')).toHaveTextContent(promptText); fireEvent.click(getByTestId('submit-chat')); await waitFor(() => { - expect(handleSendMessage).toHaveBeenCalledWith(promptText); + expect(handleChatSend).toHaveBeenCalledWith(promptText); }); }); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.tsx index c292a70252a03..cdfa12e3507f0 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/index.tsx @@ -25,8 +25,8 @@ export interface Props extends Omit = ({ - handlePromptChange, - handleSendMessage, + setUserPrompt, + handleChatSend, isDisabled, isLoading, shouldRefocusPrompt, @@ -42,15 +42,15 @@ export const ChatSend: React.FC = ({ const promptValue = useMemo(() => (isDisabled ? '' : userPrompt ?? ''), [isDisabled, userPrompt]); const onSendMessage = useCallback(() => { - handleSendMessage(promptTextAreaRef.current?.value?.trim() ?? ''); - handlePromptChange(''); - }, [handleSendMessage, promptTextAreaRef, handlePromptChange]); + handleChatSend(promptTextAreaRef.current?.value?.trim() ?? ''); + setUserPrompt(''); + }, [handleChatSend, promptTextAreaRef, setUserPrompt]); useAutosizeTextArea(promptTextAreaRef?.current, promptValue); useEffect(() => { - handlePromptChange(promptValue); - }, [handlePromptChange, promptValue]); + setUserPrompt(promptValue); + }, [setUserPrompt, promptValue]); return ( = ({ `} > diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.test.tsx index 77045b9572841..b2479b33fdb99 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.test.tsx @@ -11,7 +11,7 @@ import { useConversation } from '../use_conversation'; import { emptyWelcomeConvo, welcomeConvo } from '../../mock/conversation'; import { defaultSystemPrompt, mockSystemPrompt } from '../../mock/system_prompt'; import { useChatSend, UseChatSendProps } from './use_chat_send'; -import { renderHook } from '@testing-library/react-hooks'; +import { act, renderHook } from '@testing-library/react-hooks'; import { waitFor } from '@testing-library/react'; import { TestProviders } from '../../mock/test_providers/test_providers'; import { useAssistantContext } from '../../..'; @@ -20,9 +20,7 @@ jest.mock('../use_send_message'); jest.mock('../use_conversation'); jest.mock('../../..'); -const setEditingSystemPromptId = jest.fn(); const setSelectedPromptContexts = jest.fn(); -const setUserPrompt = jest.fn(); const sendMessage = jest.fn(); const removeLastMessage = jest.fn(); const clearConversation = jest.fn(); @@ -40,11 +38,10 @@ export const testProps: UseChatSendProps = { anonymousPaths: {}, externalUrl: {}, } as unknown as HttpSetup, - editingSystemPromptId: defaultSystemPrompt.id, - setEditingSystemPromptId, + currentSystemPromptId: defaultSystemPrompt.id, setSelectedPromptContexts, - setUserPrompt, setCurrentConversation, + refetchCurrentUserConversations: jest.fn(), }; const robotMessage = { response: 'Response message from the robot', isError: false }; const reportAssistantMessageSent = jest.fn(); @@ -70,29 +67,23 @@ describe('use chat send', () => { const { result } = renderHook(() => useChatSend(testProps), { wrapper: TestProviders, }); - result.current.handleOnChatCleared(); + await act(async () => { + result.current.handleOnChatCleared(); + }); expect(clearConversation).toHaveBeenCalled(); - expect(setUserPrompt).toHaveBeenCalledWith(''); + expect(result.current.userPrompt).toEqual(''); expect(setSelectedPromptContexts).toHaveBeenCalledWith({}); await waitFor(() => { expect(clearConversation).toHaveBeenCalledWith(testProps.currentConversation); expect(setCurrentConversation).toHaveBeenCalled(); }); - expect(setEditingSystemPromptId).toHaveBeenCalledWith(defaultSystemPrompt.id); - }); - it('handlePromptChange updates prompt successfully', () => { - const { result } = renderHook(() => useChatSend(testProps), { - wrapper: TestProviders, - }); - result.current.handlePromptChange('new prompt'); - expect(setUserPrompt).toHaveBeenCalledWith('new prompt'); }); - it('handleSendMessage sends message with context prompt when a valid prompt text is provided', async () => { + it('handleChatSend sends message with context prompt when a valid prompt text is provided', async () => { const promptText = 'prompt text'; const { result } = renderHook(() => useChatSend(testProps), { wrapper: TestProviders, }); - result.current.handleSendMessage(promptText); + result.current.handleChatSend(promptText); await waitFor(() => { expect(sendMessage).toHaveBeenCalled(); @@ -102,7 +93,7 @@ describe('use chat send', () => { ); }); }); - it('handleSendMessage sends message with only provided prompt text and context already exists in convo history', async () => { + it('handleChatSend sends message with only provided prompt text and context already exists in convo history', async () => { const promptText = 'prompt text'; const { result } = renderHook( () => @@ -112,7 +103,7 @@ describe('use chat send', () => { } ); - result.current.handleSendMessage(promptText); + result.current.handleChatSend(promptText); await waitFor(() => { expect(sendMessage).toHaveBeenCalled(); @@ -143,7 +134,7 @@ describe('use chat send', () => { const { result } = renderHook(() => useChatSend(testProps), { wrapper: TestProviders, }); - result.current.handleSendMessage(promptText); + result.current.handleChatSend(promptText); await waitFor(() => { expect(reportAssistantMessageSent).toHaveBeenNthCalledWith(1, { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.tsx index c571912310905..905a4513a250f 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/chat_send/use_chat_send.tsx @@ -5,10 +5,12 @@ * 2.0. */ -import React, { useCallback } from 'react'; +import React, { useCallback, useState } from 'react'; import { HttpSetup } from '@kbn/core-http-browser'; import { i18n } from '@kbn/i18n'; import { PromptResponse, Replacements } from '@kbn/elastic-assistant-common'; +import { DataStreamApis } from '../use_data_stream_apis'; +import { NEW_CHAT } from '../conversations/conversation_sidepanel/translations'; import type { ClientMessage } from '../../assistant_context/types'; import { SelectedPromptContext } from '../prompt_context/types'; import { useSendMessage } from '../use_send_message'; @@ -16,56 +18,49 @@ import { useConversation } from '../use_conversation'; import { getCombinedMessage } from '../prompt/helpers'; import { Conversation, useAssistantContext } from '../../..'; import { getMessageFromRawResponse } from '../helpers'; -import { getDefaultSystemPrompt, getDefaultNewSystemPrompt } from '../use_conversation/helpers'; export interface UseChatSendProps { allSystemPrompts: PromptResponse[]; currentConversation?: Conversation; - editingSystemPromptId: string | undefined; + currentSystemPromptId: string | undefined; http: HttpSetup; + refetchCurrentUserConversations: DataStreamApis['refetchCurrentUserConversations']; selectedPromptContexts: Record; - setEditingSystemPromptId: React.Dispatch>; setSelectedPromptContexts: React.Dispatch< React.SetStateAction> >; - setUserPrompt: React.Dispatch>; setCurrentConversation: React.Dispatch>; } export interface UseChatSend { abortStream: () => void; handleOnChatCleared: () => Promise; - handlePromptChange: (prompt: string) => void; - handleSendMessage: (promptText: string) => void; handleRegenerateResponse: () => void; + handleChatSend: (promptText: string) => Promise; + setUserPrompt: React.Dispatch>; isLoading: boolean; + userPrompt: string | null; } /** - * handles sending messages to an API and updating the conversation state. - * Provides a set of functions that can be used to handle user input, send messages to an API, - * and update the conversation state based on the API response. + * Handles sending user messages to the API and updating the conversation state. */ export const useChatSend = ({ allSystemPrompts, currentConversation, - editingSystemPromptId, + currentSystemPromptId, http, + refetchCurrentUserConversations, selectedPromptContexts, - setEditingSystemPromptId, setSelectedPromptContexts, - setUserPrompt, setCurrentConversation, }: UseChatSendProps): UseChatSend => { const { assistantTelemetry, toasts } = useAssistantContext(); + const [userPrompt, setUserPrompt] = useState(null); const { isLoading, sendMessage, abortStream } = useSendMessage(); const { clearConversation, removeLastMessage } = useConversation(); - const handlePromptChange = (prompt: string) => { - setUserPrompt(prompt); - }; - // Handles sending latest user prompt to API const handleSendMessage = useCallback( async (promptText: string) => { @@ -80,7 +75,7 @@ export const useChatSend = ({ ); return; } - const systemPrompt = allSystemPrompts.find((prompt) => prompt.id === editingSystemPromptId); + const systemPrompt = allSystemPrompts.find((prompt) => prompt.id === currentSystemPromptId); const userMessage = getCombinedMessage({ isNewChat: currentConversation.messages.length === 0, @@ -149,7 +144,7 @@ export const useChatSend = ({ allSystemPrompts, assistantTelemetry, currentConversation, - editingSystemPromptId, + currentSystemPromptId, http, selectedPromptContexts, sendMessage, @@ -193,13 +188,7 @@ export const useChatSend = ({ }); }, [currentConversation, http, removeLastMessage, sendMessage, setCurrentConversation, toasts]); - const handleOnChatCleared = useCallback(async () => { - const defaultSystemPromptId = - getDefaultSystemPrompt({ - allSystemPrompts, - conversation: currentConversation, - })?.id ?? getDefaultNewSystemPrompt(allSystemPrompts)?.id; - + const onChatCleared = useCallback(async () => { setUserPrompt(''); setSelectedPromptContexts({}); if (currentConversation) { @@ -208,23 +197,36 @@ export const useChatSend = ({ setCurrentConversation(updatedConversation); } } - setEditingSystemPromptId(defaultSystemPromptId); }, [ - allSystemPrompts, clearConversation, currentConversation, setCurrentConversation, - setEditingSystemPromptId, setSelectedPromptContexts, setUserPrompt, ]); + const handleOnChatCleared = useCallback(async () => { + await onChatCleared(); + await refetchCurrentUserConversations(); + }, [onChatCleared, refetchCurrentUserConversations]); + + const handleChatSend = useCallback( + async (promptText: string) => { + await handleSendMessage(promptText); + if (currentConversation?.title === NEW_CHAT) { + await refetchCurrentUserConversations(); + } + }, + [currentConversation, handleSendMessage, refetchCurrentUserConversations] + ); + return { - abortStream, handleOnChatCleared, - handlePromptChange, - handleSendMessage, + handleChatSend, + abortStream, handleRegenerateResponse, isLoading, + userPrompt, + setUserPrompt, }; }; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/index.test.tsx deleted file mode 100644 index 613163db196ae..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/index.test.tsx +++ /dev/null @@ -1,209 +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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import React from 'react'; -import { ConversationSelector } from '.'; -import { render, fireEvent, within } from '@testing-library/react'; -import { TestProviders } from '../../../mock/test_providers/test_providers'; -import { alertConvo, customConvo, welcomeConvo } from '../../../mock/conversation'; -import { CONVERSATION_SELECTOR_PLACE_HOLDER } from './translations'; -import { OpenAiProviderType } from '@kbn/stack-connectors-plugin/common/openai/constants'; - -const setConversation = jest.fn(); -const deleteConversation = jest.fn(); -const mockConversation = { - appendMessage: jest.fn(), - appendReplacements: jest.fn(), - clearConversation: jest.fn(), - createConversation: jest.fn(), - deleteConversation, - setApiConfig: jest.fn(), - setConversation, -}; - -const mockConversations = { - [alertConvo.title]: alertConvo, - [welcomeConvo.title]: welcomeConvo, -}; - -const mockConversationsWithCustom = { - [alertConvo.title]: alertConvo, - [welcomeConvo.title]: welcomeConvo, - [customConvo.title]: customConvo, -}; - -jest.mock('../../use_conversation', () => ({ - useConversation: () => mockConversation, -})); - -const onConversationSelected = jest.fn(); -const onConversationDeleted = jest.fn(); -const defaultProps = { - isDisabled: false, - onConversationSelected, - selectedConversationId: 'Welcome', - defaultConnectorId: '123', - defaultProvider: OpenAiProviderType.OpenAi, - conversations: mockConversations, - onConversationDeleted, - allPrompts: [], -}; -describe('Conversation selector', () => { - beforeAll(() => { - jest.useFakeTimers(); - }); - beforeEach(() => { - jest.clearAllMocks(); - }); - it('renders with correct selected conversation', () => { - const { getByTestId } = render( - - - - ); - expect(getByTestId('conversation-selector')).toBeInTheDocument(); - expect(getByTestId('comboBoxSearchInput')).toHaveValue(welcomeConvo.title); - }); - it('On change, selects new item', () => { - const { getByTestId } = render( - - - - ); - fireEvent.click(getByTestId('comboBoxSearchInput')); - fireEvent.click(getByTestId(`convo-option-${alertConvo.title}`)); - expect(onConversationSelected).toHaveBeenCalledWith({ - cId: '', - cTitle: alertConvo.title, - }); - }); - it('On clear input, clears selected options', () => { - const { getByPlaceholderText, queryByPlaceholderText, getByTestId, queryByTestId } = render( - - - - ); - expect(getByTestId('comboBoxSearchInput')).toBeInTheDocument(); - expect(queryByPlaceholderText(CONVERSATION_SELECTOR_PLACE_HOLDER)).not.toBeInTheDocument(); - fireEvent.click(getByTestId('comboBoxClearButton')); - expect(getByPlaceholderText(CONVERSATION_SELECTOR_PLACE_HOLDER)).toBeInTheDocument(); - expect(queryByTestId('euiComboBoxPill')).not.toBeInTheDocument(); - }); - - it('We can add a custom option', () => { - const { getByTestId } = render( - - - - ); - const customOption = 'Custom option'; - fireEvent.change(getByTestId('comboBoxSearchInput'), { target: { value: customOption } }); - fireEvent.keyDown(getByTestId('comboBoxSearchInput'), { - key: 'Enter', - code: 'Enter', - charCode: 13, - }); - expect(onConversationSelected).toHaveBeenCalledWith({ - cId: '', - cTitle: customOption, - }); - }); - - it('Only custom options can be deleted', () => { - const { getByTestId } = render( - - - - ); - - fireEvent.click(getByTestId('comboBoxSearchInput')); - expect( - within(getByTestId(`convo-option-${customConvo.title}`)).getByTestId('delete-option') - ).toBeInTheDocument(); - expect( - within(getByTestId(`convo-option-${alertConvo.title}`)).queryByTestId('delete-option') - ).not.toBeInTheDocument(); - }); - - it('Custom options can be deleted', () => { - const { getByTestId } = render( - - - - ); - - fireEvent.click(getByTestId('comboBoxSearchInput')); - fireEvent.click( - within(getByTestId(`convo-option-${customConvo.title}`)).getByTestId('delete-option') - ); - jest.runAllTimers(); - expect(onConversationSelected).not.toHaveBeenCalled(); - - expect(onConversationDeleted).toHaveBeenCalledWith(customConvo.title); - }); - - it('Previous conversation is set to active when selected conversation is deleted', () => { - const { getByTestId } = render( - - - - ); - - fireEvent.click(getByTestId('comboBoxSearchInput')); - fireEvent.click( - within(getByTestId(`convo-option-${customConvo.title}`)).getByTestId('delete-option') - ); - expect(onConversationSelected).toHaveBeenCalledWith({ - cId: '', - cTitle: welcomeConvo.title, - }); - }); - - it('Right arrow does nothing when ctrlKey is false', () => { - const { getByTestId } = render( - - - - ); - - fireEvent.keyDown(getByTestId('comboBoxSearchInput'), { - key: 'ArrowRight', - ctrlKey: false, - code: 'ArrowRight', - charCode: 26, - }); - expect(onConversationSelected).not.toHaveBeenCalled(); - }); - - it('Right arrow does nothing when conversation lenth is 1', () => { - const { getByTestId } = render( - - - - ); - - fireEvent.keyDown(getByTestId('comboBoxSearchInput'), { - key: 'ArrowRight', - ctrlKey: true, - code: 'ArrowRight', - charCode: 26, - }); - expect(onConversationSelected).not.toHaveBeenCalled(); - }); -}); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/index.tsx deleted file mode 100644 index 4ee8076c42a9d..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/index.tsx +++ /dev/null @@ -1,302 +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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { - EuiButtonIcon, - EuiComboBox, - EuiComboBoxOptionOption, - EuiFlexGroup, - EuiFlexItem, - EuiFormRow, - EuiHighlight, - EuiToolTip, -} from '@elastic/eui'; -import React, { useCallback, useEffect, useMemo, useState } from 'react'; -import { css } from '@emotion/react'; - -import { - PromptResponse, - PromptTypeEnum, -} from '@kbn/elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen'; -import { getGenAiConfig } from '../../../connectorland/helpers'; -import { AIConnector } from '../../../connectorland/connector_selector'; -import { Conversation } from '../../../..'; -import * as i18n from './translations'; -import { DEFAULT_CONVERSATION_TITLE } from '../../use_conversation/translations'; -import { useConversation } from '../../use_conversation'; -import { SystemPromptSelectorOption } from '../../prompt_editor/system_prompt/system_prompt_modal/system_prompt_selector/system_prompt_selector'; - -interface Props { - defaultConnector?: AIConnector; - selectedConversationId: string | undefined; - onConversationSelected: ({ cId, cTitle }: { cId: string; cTitle: string }) => void; - onConversationDeleted: (conversationId: string) => void; - isDisabled?: boolean; - conversations: Record; - allPrompts: PromptResponse[]; -} - -const getPreviousConversationId = (conversationIds: string[], selectedConversationId: string) => { - return conversationIds.indexOf(selectedConversationId) === 0 - ? conversationIds[conversationIds.length - 1] - : conversationIds[conversationIds.indexOf(selectedConversationId) - 1]; -}; - -const getNextConversationId = (conversationIds: string[], selectedConversationId: string) => { - return conversationIds.indexOf(selectedConversationId) + 1 >= conversationIds.length - ? conversationIds[0] - : conversationIds[conversationIds.indexOf(selectedConversationId) + 1]; -}; - -const getConvoId = (cId: string, cTitle: string): string => (cId === cTitle ? '' : cId); - -export type ConversationSelectorOption = EuiComboBoxOptionOption<{ - isDefault: boolean; -}>; - -export const ConversationSelector: React.FC = React.memo( - ({ - selectedConversationId = DEFAULT_CONVERSATION_TITLE, - defaultConnector, - onConversationSelected, - onConversationDeleted, - isDisabled = false, - conversations, - allPrompts, - }) => { - const { createConversation } = useConversation(); - const allSystemPrompts = useMemo( - () => allPrompts.filter((p) => p.promptType === PromptTypeEnum.system), - [allPrompts] - ); - const conversationIds = useMemo(() => Object.keys(conversations), [conversations]); - const conversationOptions = useMemo(() => { - return Object.values(conversations).map((conversation) => ({ - value: { isDefault: conversation.isDefault ?? false }, - id: conversation.id !== '' ? conversation.id : conversation.title, - label: conversation.title, - })); - }, [conversations]); - - const [selectedOptions, setSelectedOptions] = useState(() => { - return conversationOptions.filter((c) => c.id === selectedConversationId) ?? []; - }); - - // Callback for when user types to create a new system prompt - const onCreateOption = useCallback( - async (searchValue, flattenedOptions = []) => { - if (!searchValue || !searchValue.trim().toLowerCase()) { - return; - } - - const normalizedSearchValue = searchValue.trim().toLowerCase(); - const defaultSystemPrompt = allSystemPrompts.find( - (systemPrompt) => systemPrompt.isNewConversationDefault - ); - const optionExists = - flattenedOptions.findIndex( - (option: SystemPromptSelectorOption) => - option.label.trim().toLowerCase() === normalizedSearchValue - ) !== -1; - - let createdConversation; - if (!optionExists) { - const config = getGenAiConfig(defaultConnector); - const newConversation: Conversation = { - id: '', - title: searchValue, - category: 'assistant', - messages: [], - replacements: {}, - ...(defaultConnector - ? { - apiConfig: { - connectorId: defaultConnector.id, - actionTypeId: defaultConnector.actionTypeId, - provider: defaultConnector.apiProvider, - defaultSystemPromptId: defaultSystemPrompt?.id, - model: config?.defaultModel, - }, - } - : {}), - }; - createdConversation = await createConversation(newConversation); - } - - onConversationSelected( - createdConversation - ? { cId: createdConversation.id, cTitle: createdConversation.title } - : { cId: '', cTitle: DEFAULT_CONVERSATION_TITLE } - ); - }, - [allSystemPrompts, onConversationSelected, defaultConnector, createConversation] - ); - - // Callback for when user deletes a conversation - const onDelete = useCallback( - (conversationId: string) => { - onConversationDeleted(conversationId); - if (selectedConversationId === conversationId) { - const prevConversationId = getPreviousConversationId( - conversationIds, - selectedConversationId - ); - - onConversationSelected({ - cId: getConvoId(conversations[prevConversationId].id, prevConversationId), - cTitle: prevConversationId, - }); - } - }, - [ - selectedConversationId, - onConversationDeleted, - onConversationSelected, - conversationIds, - conversations, - ] - ); - - const onChange = useCallback( - async (newOptions: ConversationSelectorOption[]) => { - if (newOptions.length === 0 || !newOptions?.[0].id) { - setSelectedOptions([]); - } else if (conversationOptions.findIndex((o) => o.id === newOptions?.[0].id) !== -1) { - const { id, label } = newOptions?.[0]; - - await onConversationSelected({ cId: getConvoId(id, label), cTitle: label }); - } - }, - [conversationOptions, onConversationSelected] - ); - - const onLeftArrowClick = useCallback(() => { - const prevId = getPreviousConversationId(conversationIds, selectedConversationId); - - onConversationSelected({ - cId: getConvoId(prevId, conversations[prevId]?.title), - cTitle: conversations[prevId]?.title, - }); - }, [conversationIds, selectedConversationId, onConversationSelected, conversations]); - const onRightArrowClick = useCallback(() => { - const nextId = getNextConversationId(conversationIds, selectedConversationId); - - onConversationSelected({ - cId: getConvoId(nextId, conversations[nextId]?.title), - cTitle: conversations[nextId]?.title, - }); - }, [conversationIds, selectedConversationId, onConversationSelected, conversations]); - - useEffect(() => { - setSelectedOptions(conversationOptions.filter((c) => c.id === selectedConversationId)); - }, [conversationOptions, selectedConversationId]); - - const renderOption: ( - option: ConversationSelectorOption, - searchValue: string - ) => React.ReactNode = (option, searchValue) => { - const { label, id, value } = option; - - return ( - - - - {label} - - - {!value?.isDefault && id && ( - - - { - e.stopPropagation(); - onDelete(id); - }} - data-test-subj="delete-option" - css={css` - visibility: hidden; - .parentFlexGroup:hover & { - visibility: visible; - } - `} - /> - - - )} - - ); - }; - - return ( - - void} - renderOption={renderOption} - compressed={true} - isDisabled={isDisabled} - prepend={ - - - - } - append={ - - - - } - /> - - ); - } -); - -ConversationSelector.displayName = 'ConversationSelector'; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector_settings/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector_settings/index.tsx index 9e7e3ae362d84..dabba11805eae 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector_settings/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector_settings/index.tsx @@ -18,7 +18,7 @@ import React, { useCallback, useMemo, useState } from 'react'; import { css } from '@emotion/react'; import { Conversation } from '../../../..'; -import * as i18n from '../conversation_selector/translations'; +import * as i18n from './translations'; import { SystemPromptSelectorOption } from '../../prompt_editor/system_prompt/system_prompt_modal/system_prompt_selector/system_prompt_selector'; import { ConversationSelectorSettingsOption } from './types'; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector_settings/translations.ts similarity index 100% rename from x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector/translations.ts rename to x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_selector_settings/translations.ts diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_settings_management/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_settings_management/translations.ts index 260f095f9a128..2b68b1c9eebdb 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_settings_management/translations.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_settings_management/translations.ts @@ -56,13 +56,6 @@ export const CONVERSATIONS_TABLE_COLUMN_UPDATED_AT = i18n.translate( } ); -export const CONVERSATIONS_TABLE_COLUMN_ACTIONS = i18n.translate( - 'xpack.elasticAssistant.assistant.conversationSettings.column.actions', - { - defaultMessage: 'Actions', - } -); - export const CONVERSATIONS_FLYOUT_DEFAULT_TITLE = i18n.translate( 'xpack.elasticAssistant.assistant.conversationSettings.flyout.defaultTitle', { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/index.tsx index 2af44aa21acb6..ae31aa6f8ba65 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/index.tsx @@ -6,7 +6,6 @@ */ import { - EuiComboBoxOptionOption, EuiFlexGroup, EuiFlexItem, EuiButton, @@ -20,6 +19,7 @@ import useEvent from 'react-use/lib/useEvent'; import { css } from '@emotion/react'; import { isEmpty, findIndex, orderBy } from 'lodash'; +import { DataStreamApis } from '../../use_data_stream_apis'; import { Conversation } from '../../../..'; import * as i18n from './translations'; @@ -33,7 +33,7 @@ interface Props { conversations: Record; onConversationDeleted: (conversationId: string) => void; onConversationCreate: () => void; - refetchConversationsState: () => Promise; + refetchCurrentUserConversations: DataStreamApis['refetchCurrentUserConversations']; } const getCurrentConversationIndex = ( @@ -69,11 +69,6 @@ const getNextConversation = ( ? conversationList[0] : conversationList[conversationIndex + 1]; }; - -export type ConversationSelectorOption = EuiComboBoxOptionOption<{ - isDefault: boolean; -}>; - export const ConversationSidePanel = React.memo( ({ currentConversation, diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/title_field.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/title_field.tsx deleted file mode 100644 index 373c052ede6e1..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/title_field.tsx +++ /dev/null @@ -1,72 +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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ -import React, { useMemo } from 'react'; -import { useController } from 'react-hook-form'; -import { EuiFieldText, EuiFormRow } from '@elastic/eui'; -import { i18n } from '@kbn/i18n'; -import deepEqual from 'fast-deep-equal'; - -interface TitleFieldProps { - conversationIds?: string[]; - euiFieldProps?: Record; -} - -const TitleFieldComponent = ({ conversationIds, euiFieldProps }: TitleFieldProps) => { - const { - field: { onChange, value, name: fieldName }, - fieldState: { error }, - } = useController({ - name: 'title', - defaultValue: '', - rules: { - required: { - message: i18n.translate( - 'xpack.elasticAssistant.conversationSidepanel.titleField.titleIsRequired', - { - defaultMessage: 'Title is required', - } - ), - value: true, - }, - validate: () => { - if (conversationIds?.includes(value)) { - return i18n.translate( - 'xpack.elasticAssistant.conversationSidepanel.titleField.uniqueTitle', - { - defaultMessage: 'Title must be unique', - } - ); - } - }, - }, - }); - - const hasError = useMemo(() => !!error?.message, [error?.message]); - - return ( - - - - ); -}; - -export const TitleField = React.memo(TitleFieldComponent, deepEqual); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/translations.ts index d99c5d1ce4fcf..20a7075c8a727 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/translations.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/conversations/conversation_sidepanel/translations.ts @@ -7,20 +7,6 @@ import { i18n } from '@kbn/i18n'; -export const SELECTED_CONVERSATION_LABEL = i18n.translate( - 'xpack.elasticAssistant.assistant.conversationSelector.defaultConversationTitle', - { - defaultMessage: 'Conversations', - } -); - -export const NEXT_CONVERSATION_TITLE = i18n.translate( - 'xpack.elasticAssistant.assistant.conversationSelector.nextConversationTitle', - { - defaultMessage: 'Next conversation', - } -); - export const DELETE_CONVERSATION_ARIA_LABEL = i18n.translate( 'xpack.elasticAssistant.assistant.sidePanel.deleteConversationAriaLabel', { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.test.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.test.ts index e12fe556f5ba4..5559e273f06b5 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.test.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.test.ts @@ -6,107 +6,13 @@ */ import { - getBlockBotConversation, getDefaultConnector, getOptionalRequestParams, mergeBaseWithPersistedConversations, } from './helpers'; -import { enterpriseMessaging } from './use_conversation/sample_conversations'; import { AIConnector } from '../connectorland/connector_selector'; -const defaultConversation = { - id: 'conversation_id', - category: 'assistant', - theme: {}, - messages: [], - apiConfig: { actionTypeId: '.gen-ai', connectorId: '123' }, - replacements: {}, - title: 'conversation_id', -}; -describe('helpers', () => { - describe('isAssistantEnabled = false', () => { - const isAssistantEnabled = false; - it('When no conversation history, return only enterprise messaging', () => { - const result = getBlockBotConversation(defaultConversation, isAssistantEnabled); - expect(result.messages).toEqual(enterpriseMessaging); - expect(result.messages.length).toEqual(1); - }); - - it('When conversation history and the last message is not enterprise messaging, appends enterprise messaging to conversation', () => { - const conversation = { - ...defaultConversation, - messages: [ - { - role: 'user' as const, - content: 'Hello', - timestamp: '', - presentation: { - delay: 0, - stream: false, - }, - }, - ], - }; - const result = getBlockBotConversation(conversation, isAssistantEnabled); - expect(result.messages.length).toEqual(2); - }); - - it('returns the conversation without changes when the last message is enterprise messaging', () => { - const conversation = { - ...defaultConversation, - messages: enterpriseMessaging, - }; - const result = getBlockBotConversation(conversation, isAssistantEnabled); - expect(result.messages.length).toEqual(1); - expect(result.messages).toEqual(enterpriseMessaging); - }); - - it('returns the conversation with new enterprise message when conversation has enterprise messaging, but not as the last message', () => { - const conversation = { - ...defaultConversation, - messages: [ - ...enterpriseMessaging, - { - role: 'user' as const, - content: 'Hello', - timestamp: '', - presentation: { - delay: 0, - stream: false, - }, - }, - ], - }; - const result = getBlockBotConversation(conversation, isAssistantEnabled); - expect(result.messages.length).toEqual(3); - }); - }); - - describe('isAssistantEnabled = true', () => { - const isAssistantEnabled = true; - it('when no conversation history, returns the welcome conversation', () => { - const result = getBlockBotConversation(defaultConversation, isAssistantEnabled); - expect(result.messages.length).toEqual(0); - }); - it('returns a conversation history with the welcome conversation appended', () => { - const conversation = { - ...defaultConversation, - messages: [ - { - role: 'user' as const, - content: 'Hello', - timestamp: '', - presentation: { - delay: 0, - stream: false, - }, - }, - ], - }; - const result = getBlockBotConversation(conversation, isAssistantEnabled); - expect(result.messages.length).toEqual(1); - }); - }); +describe('helpers', () => { describe('getDefaultConnector', () => { const defaultConnector: AIConnector = { actionTypeId: '.gen-ai', diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.ts index 54ca317a6fe5b..9265cdd9d57ec 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/helpers.ts @@ -10,7 +10,6 @@ import { AIConnector } from '../connectorland/connector_selector'; import { FetchConnectorExecuteResponse, FetchConversationsResponse } from './api'; import { Conversation } from '../..'; import type { ClientMessage } from '../assistant_context/types'; -import { enterpriseMessaging } from './use_conversation/sample_conversations'; export const getMessageFromRawResponse = ( rawResponse: FetchConnectorExecuteResponse @@ -54,31 +53,6 @@ export const mergeBaseWithPersistedConversations = ( return transformed; }, {}); }; - -export const getBlockBotConversation = ( - conversation: Conversation, - isAssistantEnabled: boolean -): Conversation => { - if (!isAssistantEnabled) { - if ( - conversation.messages.length === 0 || - conversation.messages[conversation.messages.length - 1].content !== - enterpriseMessaging[0].content - ) { - return { - ...conversation, - messages: [...conversation.messages, ...enterpriseMessaging], - }; - } - return conversation; - } - - return { - ...conversation, - messages: conversation.messages, - }; -}; - /** * Returns a default connector if there is only one connector * @param connectors diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.test.tsx index cd0d53bd460c3..4b1851834cdba 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.test.tsx @@ -16,7 +16,6 @@ import { useLoadConnectors } from '../connectorland/use_load_connectors'; import { DefinedUseQueryResult, UseQueryResult } from '@tanstack/react-query'; import { useLocalStorage, useSessionStorage } from 'react-use'; -import { PromptEditor } from './prompt_editor'; import { QuickPrompts } from './quick_prompts/quick_prompts'; import { mockAssistantAvailability, TestProviders } from '../mock/test_providers/test_providers'; import { useFetchCurrentUserConversations } from './api'; @@ -30,19 +29,11 @@ jest.mock('../connectorland/use_load_connectors'); jest.mock('../connectorland/connector_setup'); jest.mock('react-use'); -jest.mock('./prompt_editor', () => ({ PromptEditor: jest.fn() })); jest.mock('./quick_prompts/quick_prompts', () => ({ QuickPrompts: jest.fn() })); jest.mock('./api/conversations/use_fetch_current_user_conversations'); jest.mock('./use_conversation'); -const renderAssistant = (extraProps = {}, providerProps = {}) => - render( - - - - ); - const mockData = { welcome_id: { id: 'welcome_id', @@ -61,6 +52,29 @@ const mockData = { replacements: {}, }, }; + +const renderAssistant = async (extraProps = {}, providerProps = {}) => { + const chatSendSpy = jest.spyOn(all, 'useChatSend'); + const assistant = render( + + + + ); + await waitFor(() => { + // wait for conversation to mount before performing any tests + expect(chatSendSpy).toHaveBeenLastCalledWith( + expect.objectContaining({ + currentConversation: mockData.welcome_id, + }) + ); + }); + return assistant; +}; const mockDeleteConvo = jest.fn(); const mockGetDefaultConversation = jest.fn().mockReturnValue(mockData.welcome_id); const clearConversation = jest.fn(); @@ -84,7 +98,6 @@ describe('Assistant', () => { persistToSessionStorage = jest.fn(); (useConversation as jest.Mock).mockReturnValue(mockUseConversation); - jest.mocked(PromptEditor).mockReturnValue(null); jest.mocked(QuickPrompts).mockReturnValue(null); const connectors: unknown[] = [ { @@ -127,17 +140,9 @@ describe('Assistant', () => { }); describe('persistent storage', () => { - it('should refetchConversationsState after settings save button click', async () => { + it('should refetchCurrentUserConversations after settings save button click', async () => { const chatSendSpy = jest.spyOn(all, 'useChatSend'); - const setConversationTitle = jest.fn(); - - renderAssistant({ setConversationTitle }); - - expect(chatSendSpy).toHaveBeenLastCalledWith( - expect.objectContaining({ - currentConversation: mockData.welcome_id, - }) - ); + await renderAssistant(); fireEvent.click(screen.getByTestId('settings')); @@ -181,7 +186,7 @@ describe('Assistant', () => { ); }); - it('should refetchConversationsState after settings save button click, but do not update convos when refetch returns bad results', async () => { + it('should refetchCurrentUserConversations after settings save button click, but do not update convos when refetch returns bad results', async () => { jest.mocked(useFetchCurrentUserConversations).mockReturnValue({ data: mockData, isLoading: false, @@ -192,9 +197,7 @@ describe('Assistant', () => { isFetched: true, } as unknown as DefinedUseQueryResult, unknown>); const chatSendSpy = jest.spyOn(all, 'useChatSend'); - const setConversationTitle = jest.fn(); - - renderAssistant({ setConversationTitle }); + await renderAssistant(); fireEvent.click(screen.getByTestId('settings')); await act(async () => { @@ -216,7 +219,7 @@ describe('Assistant', () => { }); it('should delete conversation when delete button is clicked', async () => { - renderAssistant(); + await renderAssistant(); const deleteButton = screen.getAllByTestId('delete-option')[0]; await act(async () => { fireEvent.click(deleteButton); @@ -230,8 +233,8 @@ describe('Assistant', () => { expect(mockDeleteConvo).toHaveBeenCalledWith(mockData.electric_sheep_id.id); }); }); - it('should refetchConversationsState after clear chat history button click', async () => { - renderAssistant(); + it('should refetchCurrentUserConversations after clear chat history button click', async () => { + await renderAssistant(); fireEvent.click(screen.getByTestId('chat-context-menu')); fireEvent.click(screen.getByTestId('clear-chat')); fireEvent.click(screen.getByTestId('confirmModalConfirmButton')); @@ -248,14 +251,13 @@ describe('Assistant', () => { ...mockUseConversation, getConversation, }); - renderAssistant(); + await renderAssistant(); expect(persistToLocalStorage).toHaveBeenCalled(); expect(persistToLocalStorage).toHaveBeenLastCalledWith(mockData.welcome_id.id); const previousConversationButton = await screen.findByText(mockData.electric_sheep_id.title); - expect(previousConversationButton).toBeInTheDocument(); await act(async () => { fireEvent.click(previousConversationButton); @@ -290,7 +292,7 @@ describe('Assistant', () => { isFetched: true, } as unknown as DefinedUseQueryResult, unknown>); - const { findByText } = renderAssistant(); + const { findByText } = await renderAssistant(); expect(persistToLocalStorage).toHaveBeenCalled(); @@ -305,37 +307,16 @@ describe('Assistant', () => { }); expect(persistToLocalStorage).toHaveBeenLastCalledWith(mockData.welcome_id.id); }); - it('should call the setConversationTitle callback if it is defined and the conversation id changes', async () => { - const getConversation = jest.fn().mockResolvedValue(mockData.electric_sheep_id); - (useConversation as jest.Mock).mockReturnValue({ - ...mockUseConversation, - getConversation, - }); - const setConversationTitle = jest.fn(); - - renderAssistant({ setConversationTitle }); - - await act(async () => { - fireEvent.click(await screen.findByText(mockData.electric_sheep_id.title)); - }); - expect(setConversationTitle).toHaveBeenLastCalledWith('electric sheep'); - }); it('should fetch current conversation when id has value', async () => { - const getConversation = jest - .fn() - .mockResolvedValue({ ...mockData.electric_sheep_id, title: 'updated title' }); - (useConversation as jest.Mock).mockReturnValue({ - ...mockUseConversation, - getConversation, - }); + const refetch = jest.fn(); jest.mocked(useFetchCurrentUserConversations).mockReturnValue({ data: { ...mockData, electric_sheep_id: { ...mockData.electric_sheep_id, title: 'updated title' }, }, isLoading: false, - refetch: jest.fn().mockResolvedValue({ + refetch: refetch.mockResolvedValue({ isLoading: false, data: { ...mockData, @@ -344,14 +325,14 @@ describe('Assistant', () => { }), isFetched: true, } as unknown as DefinedUseQueryResult, unknown>); - renderAssistant(); + await renderAssistant(); const previousConversationButton = await screen.findByText('updated title'); await act(async () => { fireEvent.click(previousConversationButton); }); - expect(getConversation).toHaveBeenCalledWith('electric_sheep_id'); + expect(refetch).toHaveBeenCalled(); expect(persistToLocalStorage).toHaveBeenLastCalledWith('electric_sheep_id'); }); @@ -376,7 +357,7 @@ describe('Assistant', () => { }), isFetched: true, } as unknown as DefinedUseQueryResult, unknown>); - renderAssistant(); + await renderAssistant(); const previousConversationButton = screen.getByLabelText('Previous conversation'); await act(async () => { @@ -396,7 +377,7 @@ describe('Assistant', () => { describe('when no connectors are loaded', () => { it('should set welcome conversation id in local storage', async () => { - renderAssistant(); + await renderAssistant(); expect(persistToLocalStorage).toHaveBeenCalled(); expect(persistToLocalStorage).toHaveBeenLastCalledWith(mockData.welcome_id.id); @@ -405,7 +386,7 @@ describe('Assistant', () => { describe('when not authorized', () => { it('should be disabled', async () => { - const { queryByTestId } = renderAssistant( + const { queryByTestId } = await renderAssistant( {}, { assistantAvailability: { ...mockAssistantAvailability, isAssistantEnabled: false }, diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.tsx index ff2ead2aeb386..f4e0e7aa76528 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/index.tsx @@ -12,7 +12,6 @@ import React, { useEffect, useLayoutEffect, useMemo, - useRef, useState, } from 'react'; import { @@ -24,44 +23,32 @@ import { EuiFlyoutFooter, EuiFlyoutHeader, EuiFlyoutBody, - EuiText, } from '@elastic/eui'; import { euiThemeVars } from '@kbn/ui-theme'; import { createPortal } from 'react-dom'; import { css } from '@emotion/react'; import styled from '@emotion/styled'; -import deepEqual from 'fast-deep-equal'; -import { find, isEmpty, uniqBy } from 'lodash'; -import { useMutation, useQueryClient } from '@tanstack/react-query'; -import { PromptTypeEnum } from '@kbn/elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen'; +import { isEmpty } from 'lodash'; +import { AssistantBody } from './assistant_body'; +import { useCurrentConversation } from './use_current_conversation'; +import { useDataStreamApis } from './use_data_stream_apis'; import { useChatSend } from './chat_send/use_chat_send'; import { ChatSend } from './chat_send'; -import { BlockBotCallToAction } from './block_bot/cta'; import { WELCOME_CONVERSATION_TITLE } from './use_conversation/translations'; -import { - getDefaultConnector, - getBlockBotConversation, - mergeBaseWithPersistedConversations, - sleep, -} from './helpers'; +import { getDefaultConnector } from './helpers'; import { useAssistantContext, UserAvatar } from '../assistant_context'; import { ContextPills } from './context_pills'; import { getNewSelectedPromptContext } from '../data_anonymization/get_new_selected_prompt_context'; import type { PromptContext, SelectedPromptContext } from './prompt_context/types'; -import { useConversation } from './use_conversation'; -import { CodeBlockDetails, getDefaultSystemPrompt } from './use_conversation/helpers'; +import { CodeBlockDetails } from './use_conversation/helpers'; import { QuickPrompts } from './quick_prompts/quick_prompts'; import { useLoadConnectors } from '../connectorland/use_load_connectors'; -import { ConnectorSetup } from '../connectorland/connector_setup'; import { ConnectorMissingCallout } from '../connectorland/connector_missing_callout'; import { ConversationSidePanel } from './conversations/conversation_sidepanel'; -import { NEW_CHAT } from './conversations/conversation_sidepanel/translations'; -import { SystemPrompt } from './prompt_editor/system_prompt'; import { SelectedPromptContexts } from './prompt_editor/selected_prompt_contexts'; import { AssistantHeader } from './assistant_header'; -import * as i18n from './translations'; export const CONVERSATION_SIDE_PANEL_WIDTH = 220; @@ -71,29 +58,14 @@ const CommentContainer = styled('span')` overflow: hidden; `; -import { - FetchConversationsResponse, - useFetchCurrentUserConversations, - CONVERSATIONS_QUERY_KEYS, -} from './api/conversations/use_fetch_current_user_conversations'; -import { Conversation } from '../assistant_context/types'; -import { getGenAiConfig } from '../connectorland/helpers'; -import { AssistantAnimatedIcon } from './assistant_animated_icon'; -import { useFetchAnonymizationFields } from './api/anonymization_fields/use_fetch_anonymization_fields'; -import { SetupKnowledgeBaseButton } from '../knowledge_base/setup_knowledge_base_button'; -import { useFetchPrompts } from './api/prompts/use_fetch_prompts'; - export interface Props { + chatHistoryVisible?: boolean; conversationTitle?: string; - embeddedLayout?: boolean; - promptContextId?: string; - shouldRefocusPrompt?: boolean; - showTitle?: boolean; - setConversationTitle?: Dispatch>; + currentUserAvatar?: UserAvatar; onCloseFlyout?: () => void; - chatHistoryVisible?: boolean; + promptContextId?: string; setChatHistoryVisible?: Dispatch>; - currentUserAvatar?: UserAvatar; + shouldRefocusPrompt?: boolean; } /** @@ -101,37 +73,26 @@ export interface Props { * quick prompts for common actions, settings, and prompt context providers. */ const AssistantComponent: React.FC = ({ + chatHistoryVisible, conversationTitle, - embeddedLayout = false, - promptContextId = '', - shouldRefocusPrompt = false, - showTitle = true, - setConversationTitle, + currentUserAvatar, onCloseFlyout, - chatHistoryVisible, + promptContextId = '', setChatHistoryVisible, - currentUserAvatar, + shouldRefocusPrompt = false, }) => { const { + assistantAvailability: { isAssistantEnabled }, assistantTelemetry, augmentMessageCodeBlocks, - assistantAvailability: { isAssistantEnabled }, + baseConversations, getComments, + getLastConversationId, http, promptContexts, setLastConversationId, - getLastConversationId, - baseConversations, } = useAssistantContext(); - const { - getDefaultConversation, - getConversation, - deleteConversation, - setApiConfig, - createConversation, - } = useConversation(); - const [selectedPromptContexts, setSelectedPromptContexts] = useState< Record >({}); @@ -141,172 +102,81 @@ const AssistantComponent: React.FC = ({ [selectedPromptContexts] ); - const onFetchedConversations = useCallback( - (conversationsData: FetchConversationsResponse): Record => - mergeBaseWithPersistedConversations(baseConversations, conversationsData), - [baseConversations] - ); - const [isStreaming, setIsStreaming] = useState(false); - - const { - data: conversations, - isLoading, - refetch: refetchResults, - isFetched: conversationsLoaded, - } = useFetchCurrentUserConversations({ - http, - onFetch: onFetchedConversations, - refetchOnWindowFocus: !isStreaming, - isAssistantEnabled, - }); - const { - data: anonymizationFields, - isLoading: isLoadingAnonymizationFields, - isError: isErrorAnonymizationFields, - isFetched: isFetchedAnonymizationFields, - } = useFetchAnonymizationFields(); - - const { - data: { data: allPrompts }, - refetch: refetchPrompts, - isLoading: isLoadingPrompts, - } = useFetchPrompts(); - - const allSystemPrompts = useMemo(() => { - if (!isLoadingPrompts) { - return allPrompts.filter((p) => p.promptType === PromptTypeEnum.system); - } - return []; - }, [allPrompts, isLoadingPrompts]); + allPrompts, + allSystemPrompts, + anonymizationFields, + conversations, + isErrorAnonymizationFields, + isFetchedAnonymizationFields, + isFetchedCurrentUserConversations, + isFetchedPrompts, + isLoadingAnonymizationFields, + isLoadingCurrentUserConversations, + refetchPrompts, + refetchCurrentUserConversations, + setIsStreaming, + } = useDataStreamApis({ http, baseConversations, isAssistantEnabled }); // Connector details - const { data: connectors, isFetchedAfterMount: areConnectorsFetched } = useLoadConnectors({ + const { data: connectors, isFetchedAfterMount: isFetchedConnectors } = useLoadConnectors({ http, }); const defaultConnector = useMemo(() => getDefaultConnector(connectors), [connectors]); + const { + currentConversation, + currentSystemPromptId, + handleCreateConversation, + handleOnConversationDeleted, + handleOnConversationSelected, + refetchCurrentConversation, + setCurrentConversation, + setCurrentSystemPromptId, + } = useCurrentConversation({ + allSystemPrompts, + conversations, + defaultConnector, + refetchCurrentUserConversations, + conversationId: getLastConversationId(conversationTitle), + mayUpdateConversations: + isFetchedConnectors && + isFetchedCurrentUserConversations && + isFetchedPrompts && + Object.keys(conversations).length > 0, + }); - const [currentConversationId, setCurrentConversationId] = useState(); - - const [currentConversation, setCurrentConversation] = useState(); - - useEffect(() => { - if (setConversationTitle && currentConversation?.title) { - setConversationTitle(currentConversation?.title); - } - }, [currentConversation?.title, setConversationTitle]); - - const refetchCurrentConversation = useCallback( - async ({ - cId, - cTitle, - isStreamRefetch = false, - }: { cId?: string; cTitle?: string; isStreamRefetch?: boolean } = {}) => { - if (cId === '' || (cTitle && !conversations[cTitle])) { - return; - } - - const conversationId = cId ?? (cTitle && conversations[cTitle].id) ?? currentConversation?.id; - - if (conversationId) { - let updatedConversation = await getConversation(conversationId); - let retries = 0; - const maxRetries = 5; - - // this retry is a workaround for the stream not YET being persisted to the stored conversation - while ( - isStreamRefetch && - updatedConversation && - updatedConversation.messages[updatedConversation.messages.length - 1].role !== - 'assistant' && - retries < maxRetries - ) { - retries++; - await sleep(2000); - updatedConversation = await getConversation(conversationId); - } - - if (updatedConversation) { - setCurrentConversation(updatedConversation); - } - - return updatedConversation; - } - }, - [conversations, currentConversation?.id, getConversation] - ); - - useEffect(() => { - if (areConnectorsFetched && conversationsLoaded && Object.keys(conversations).length > 0) { - setCurrentConversation((prev) => { - const nextConversation = - (currentConversationId && conversations[currentConversationId]) || - (isAssistantEnabled && - (conversations[getLastConversationId(conversationTitle)] || - find(conversations, ['title', getLastConversationId(conversationTitle)]))) || - find(conversations, ['title', getLastConversationId(WELCOME_CONVERSATION_TITLE)]); - - if (deepEqual(prev, nextConversation)) return prev; - - const conversationToReturn = - (nextConversation && - conversations[ - nextConversation?.id !== '' ? nextConversation?.id : nextConversation?.title - ]) ?? - conversations[WELCOME_CONVERSATION_TITLE] ?? - getDefaultConversation({ cTitle: WELCOME_CONVERSATION_TITLE }); - - // updated selected system prompt - setEditingSystemPromptId( - getDefaultSystemPrompt({ - allSystemPrompts, - conversation: conversationToReturn, - })?.id - ); - if ( - prev && - prev.id === conversationToReturn.id && - // if the conversation id has not changed and the previous conversation has more messages - // it is because the local conversation has a readable stream running - // and it has not yet been persisted to the stored conversation - prev.messages.length > conversationToReturn.messages.length - ) { - return { - ...conversationToReturn, - messages: prev.messages, - }; - } - return conversationToReturn; - }); + const isInitialLoad = useMemo(() => { + if (!isAssistantEnabled) { + return false; } + return ( + (!isFetchedAnonymizationFields && !isFetchedCurrentUserConversations && !isFetchedPrompts) || + !(currentConversation && currentConversation?.id !== '') + ); }, [ - allSystemPrompts, - areConnectorsFetched, - conversationTitle, - conversations, - conversationsLoaded, - currentConversationId, - getDefaultConversation, - getLastConversationId, + currentConversation, isAssistantEnabled, + isFetchedAnonymizationFields, + isFetchedCurrentUserConversations, + isFetchedPrompts, ]); // Welcome setup state - const isWelcomeSetup = useMemo(() => { - // if any conversation has a connector id, we're not in welcome set up - return Object.keys(conversations).some( - (conversation) => conversations[conversation]?.apiConfig?.connectorId != null - ) - ? false - : (connectors?.length ?? 0) === 0; - }, [connectors?.length, conversations]); - const isDisabled = isWelcomeSetup || !isAssistantEnabled; - - // Welcome conversation is a special 'setup' case when no connector exists, mostly extracted to `ConnectorSetup` component, - // but currently a bit of state is littered throughout the assistant component. TODO: clean up/isolate this state - const blockBotConversation = useMemo( - () => currentConversation && getBlockBotConversation(currentConversation, isAssistantEnabled), - [currentConversation, isAssistantEnabled] + const isWelcomeSetup = useMemo( + () => + Object.keys(conversations).some( + (conversation) => + // if any conversation has a non-empty connector id, we're not in welcome set up + conversations[conversation]?.apiConfig?.connectorId != null && + conversations[conversation]?.apiConfig?.connectorId !== '' + ) + ? false + : (connectors?.length ?? 0) === 0, + [connectors?.length, conversations] + ); + const isDisabled = useMemo( + () => isWelcomeSetup || !isAssistantEnabled || isInitialLoad, + [isWelcomeSetup, isAssistantEnabled, isInitialLoad] ); // Settings modal state (so it isn't shared between assistant instances like Timeline) @@ -315,7 +185,7 @@ const AssistantComponent: React.FC = ({ // Remember last selection for reuse after keyboard shortcut is pressed. // Clear it if there is no connectors useEffect(() => { - if (areConnectorsFetched && !connectors?.length) { + if (isFetchedConnectors && !connectors?.length) { return setLastConversationId(WELCOME_CONVERSATION_TITLE); } @@ -325,17 +195,15 @@ const AssistantComponent: React.FC = ({ ); } }, [ - areConnectorsFetched, + isFetchedConnectors, connectors?.length, conversations, currentConversation, - isLoading, + isLoadingCurrentUserConversations, setLastConversationId, ]); const [autoPopulatedOnce, setAutoPopulatedOnce] = useState(false); - const [userPrompt, setUserPrompt] = useState(null); - const [showAnonymizedValues, setShowAnonymizedValues] = useState(false); const [messageCodeBlocks, setMessageCodeBlocks] = useState(); @@ -352,7 +220,12 @@ const AssistantComponent: React.FC = ({ // Show missing connector callout if no connectors are configured const showMissingConnectorCallout = useMemo(() => { - if (!isLoading && areConnectorsFetched && currentConversation?.id !== '') { + if ( + !isLoadingCurrentUserConversations && + isFetchedConnectors && + currentConversation && + currentConversation.id !== '' + ) { if (!currentConversation?.apiConfig?.connectorId) { return true; } @@ -363,13 +236,7 @@ const AssistantComponent: React.FC = ({ } return false; - }, [ - areConnectorsFetched, - connectors, - currentConversation?.apiConfig?.connectorId, - currentConversation?.id, - isLoading, - ]); + }, [isFetchedConnectors, connectors, currentConversation, isLoadingCurrentUserConversations]); const isSendingDisabled = useMemo(() => { return isDisabled || showMissingConnectorCallout; @@ -393,72 +260,6 @@ const AssistantComponent: React.FC = ({ }, []); // End drill in `Add To Timeline` action - // Start Scrolling - const commentsContainerRef = useRef(null); - - useEffect(() => { - const parent = commentsContainerRef.current?.parentElement; - - if (!parent) { - return; - } - // when scrollHeight changes, parent is scrolled to bottom - parent.scrollTop = parent.scrollHeight; - - ( - commentsContainerRef.current?.childNodes[0].childNodes[0] as HTMLElement - ).lastElementChild?.scrollIntoView(); - }); - // End Scrolling - - const selectedSystemPrompt = useMemo( - () => - getDefaultSystemPrompt({ - allSystemPrompts, - conversation: currentConversation, - }), - [allSystemPrompts, currentConversation] - ); - - const [editingSystemPromptId, setEditingSystemPromptId] = useState( - selectedSystemPrompt?.id - ); - - const handleOnConversationSelected = useCallback( - async ({ cId, cTitle }: { cId: string; cTitle: string }) => { - const updatedConv = await refetchResults(); - - let selectedConversation; - if (cId === '') { - setCurrentConversationId(cTitle); - selectedConversation = updatedConv?.data?.[cTitle]; - setCurrentConversationId(cTitle); - } else { - selectedConversation = await refetchCurrentConversation({ cId }); - setCurrentConversationId(cId); - } - setEditingSystemPromptId( - getDefaultSystemPrompt({ - allSystemPrompts, - conversation: selectedConversation, - })?.id - ); - }, - [allSystemPrompts, refetchCurrentConversation, refetchResults] - ); - - const handleOnConversationDeleted = useCallback( - async (cTitle: string) => { - await deleteConversation(conversations[cTitle].id); - await refetchResults(); - }, - [conversations, deleteConversation, refetchResults] - ); - - const handleOnSystemPromptSelectionChange = useCallback((systemPromptId?: string) => { - setEditingSystemPromptId(systemPromptId); - }, []); - // Add min-height to all codeblocks so timeline icon doesn't overflow const codeBlockContainers = [...document.getElementsByClassName('euiCodeBlock')]; // @ts-ignore-expect-error @@ -469,10 +270,36 @@ const AssistantComponent: React.FC = ({ setShowAnonymizedValues((prevValue) => !prevValue); }, [setShowAnonymizedValues]); - const isNewConversation = useMemo( - () => currentConversation?.messages.length === 0, - [currentConversation?.messages.length] - ); + const { + abortStream, + handleOnChatCleared: onChatCleared, + handleChatSend, + handleRegenerateResponse, + isLoading: isLoadingChatSend, + setUserPrompt, + userPrompt, + } = useChatSend({ + allSystemPrompts, + currentConversation, + currentSystemPromptId, + http, + refetchCurrentUserConversations, + selectedPromptContexts, + setSelectedPromptContexts, + setCurrentConversation, + }); + + const handleOnChatCleared = useCallback(() => { + onChatCleared(); + if (!currentSystemPromptId) { + setCurrentSystemPromptId(currentConversation?.apiConfig?.defaultSystemPromptId); + } + }, [ + currentConversation?.apiConfig?.defaultSystemPromptId, + currentSystemPromptId, + onChatCleared, + setCurrentSystemPromptId, + ]); useEffect(() => { // Adding `conversationTitle !== selectedConversationTitle` to prevent auto-run still executing after changing selected conversation @@ -526,6 +353,7 @@ const AssistantComponent: React.FC = ({ isErrorAnonymizationFields, anonymizationFields, isFetchedAnonymizationFields, + setUserPrompt, ]); const createCodeBlockPortals = useCallback( @@ -548,40 +376,6 @@ const AssistantComponent: React.FC = ({ [messageCodeBlocks] ); - const { - abortStream, - handleOnChatCleared: onChatCleared, - handlePromptChange, - handleSendMessage, - handleRegenerateResponse, - isLoading: isLoadingChatSend, - } = useChatSend({ - allSystemPrompts, - currentConversation, - setUserPrompt, - editingSystemPromptId, - http, - setEditingSystemPromptId, - selectedPromptContexts, - setSelectedPromptContexts, - setCurrentConversation, - }); - - const handleOnChatCleared = useCallback(async () => { - await onChatCleared(); - await refetchResults(); - }, [onChatCleared, refetchResults]); - - const handleChatSend = useCallback( - async (promptText: string) => { - await handleSendMessage(promptText); - if (currentConversation?.title === NEW_CHAT) { - await refetchResults(); - } - }, - [currentConversation, handleSendMessage, refetchResults] - ); - const comments = useMemo( () => ( <> @@ -619,6 +413,7 @@ const AssistantComponent: React.FC = ({ refetchCurrentConversation, handleRegenerateResponse, isLoadingChatSend, + setIsStreaming, currentUserAvatar, selectedPromptContextsCount, ] @@ -636,206 +431,6 @@ const AssistantComponent: React.FC = ({ [assistantTelemetry, currentConversation?.title] ); - const refetchConversationsState = useCallback(async () => { - await refetchResults(); - }, [refetchResults]); - - const queryClient = useQueryClient(); - - const { mutateAsync } = useMutation( - ['SET_DEFAULT_CONNECTOR'], - { - mutationFn: async (payload) => { - const apiConfig = getGenAiConfig(defaultConnector); - return setApiConfig({ - conversation: payload, - apiConfig: { - ...payload?.apiConfig, - connectorId: (defaultConnector?.id as string) ?? '', - actionTypeId: (defaultConnector?.actionTypeId as string) ?? '.gen-ai', - provider: apiConfig?.apiProvider, - model: apiConfig?.defaultModel, - defaultSystemPromptId: allSystemPrompts.find((sp) => sp.isNewConversationDefault)?.id, - }, - }); - }, - onSuccess: async (data) => { - await queryClient.cancelQueries({ queryKey: CONVERSATIONS_QUERY_KEYS }); - if (data) { - queryClient.setQueryData<{ data: Conversation[] }>(CONVERSATIONS_QUERY_KEYS, (prev) => ({ - ...(prev ?? {}), - data: uniqBy([data, ...(prev?.data ?? [])], 'id'), - })); - } - return data; - }, - } - ); - - useEffect(() => { - (async () => { - if (areConnectorsFetched && currentConversation?.id === '' && !isLoadingPrompts) { - const conversation = await mutateAsync(currentConversation); - if (currentConversation.id === '' && conversation) { - setCurrentConversationId(conversation.id); - } - } - })(); - }, [areConnectorsFetched, currentConversation, isLoadingPrompts, mutateAsync]); - - const handleCreateConversation = useCallback(async () => { - const newChatExists = find(conversations, ['title', NEW_CHAT]); - if (newChatExists && !newChatExists.messages.length) { - handleOnConversationSelected({ - cId: newChatExists.id, - cTitle: newChatExists.title, - }); - return; - } - - const newConversation = await createConversation({ - title: NEW_CHAT, - apiConfig: currentConversation?.apiConfig, - }); - - await refetchConversationsState(); - - if (newConversation) { - handleOnConversationSelected({ - cId: newConversation.id, - cTitle: newConversation.title, - }); - } - }, [ - conversations, - createConversation, - currentConversation?.apiConfig, - handleOnConversationSelected, - refetchConversationsState, - ]); - - const disclaimer = useMemo( - () => - isNewConversation && ( - - {i18n.DISCLAIMER} - - ), - [isNewConversation] - ); - - const flyoutBodyContent = useMemo(() => { - if (isWelcomeSetup) { - return ( - - - - - - - - - -

{i18n.WELCOME_SCREEN_TITLE}

-
-
- - -

{i18n.WELCOME_SCREEN_DESCRIPTION}

-
-
- - - -
-
-
-
- ); - } - - if (currentConversation?.messages.length === 0) { - return ( - - - - - - - - - -

{i18n.EMPTY_SCREEN_TITLE}

-

{i18n.EMPTY_SCREEN_DESCRIPTION}

-
-
- - - - - - -
-
-
-
- ); - } - - return ( - { - commentsContainerRef.current = (element?.parentElement as HTMLDivElement) || null; - }} - > - {comments} - - ); - }, [ - allSystemPrompts, - blockBotConversation, - comments, - currentConversation, - editingSystemPromptId, - handleOnConversationSelected, - handleOnSystemPromptSelectionChange, - isSettingsModalVisible, - isWelcomeSetup, - refetchResults, - ]); - return ( {chatHistoryVisible && ( @@ -852,7 +447,7 @@ const AssistantComponent: React.FC = ({ conversations={conversations} onConversationDeleted={handleOnConversationDeleted} onConversationCreate={handleCreateConversation} - refetchConversationsState={refetchConversationsState} + refetchCurrentUserConversations={refetchCurrentUserConversations} />
)} @@ -874,6 +469,7 @@ const AssistantComponent: React.FC = ({ > = ({ setChatHistoryVisible={setChatHistoryVisible} onConversationSelected={handleOnConversationSelected} conversations={conversations} - conversationsLoaded={conversationsLoaded} - refetchConversationsState={refetchConversationsState} + conversationsLoaded={isFetchedCurrentUserConversations} + refetchCurrentUserConversations={refetchCurrentUserConversations} onConversationCreate={handleCreateConversation} isAssistantEnabled={isAssistantEnabled} refetchPrompts={refetchPrompts} @@ -921,7 +517,7 @@ const AssistantComponent: React.FC = ({ banner={ !isDisabled && showMissingConnectorCallout && - areConnectorsFetched && ( + isFetchedConnectors && ( 0} isSettingsModalVisible={isSettingsModalVisible} @@ -930,24 +526,21 @@ const AssistantComponent: React.FC = ({ ) } > - {!isAssistantEnabled ? ( - - } - http={http} - isAssistantEnabled={isAssistantEnabled} - isWelcomeSetup={isWelcomeSetup} - /> - ) : ( - - {flyoutBodyContent} - {disclaimer} - - )} + = ({ diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/helpers.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/helpers.test.tsx deleted file mode 100644 index 2171b13273a28..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/helpers.test.tsx +++ /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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { getPromptById } from './helpers'; -import { mockSystemPrompt, mockSuperheroSystemPrompt } from '../../mock/system_prompt'; -import { PromptResponse } from '@kbn/elastic-assistant-common'; - -describe('helpers', () => { - describe('getPromptById', () => { - const prompts: PromptResponse[] = [mockSystemPrompt, mockSuperheroSystemPrompt]; - - it('returns the correct prompt by id', () => { - const result = getPromptById({ prompts, id: mockSuperheroSystemPrompt.id }); - - expect(result).toEqual(prompts[1]); - }); - - it('returns undefined if the prompt is not found', () => { - const result = getPromptById({ prompts, id: 'does-not-exist' }); - - expect(result).toBeUndefined(); - }); - }); -}); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/index.test.tsx deleted file mode 100644 index e2f55ee89202e..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/index.test.tsx +++ /dev/null @@ -1,126 +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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import React from 'react'; -import { render, screen, waitFor } from '@testing-library/react'; - -import { mockAlertPromptContext, mockEventPromptContext } from '../../mock/prompt_context'; -import { TestProviders } from '../../mock/test_providers/test_providers'; -import { SelectedPromptContext } from '../prompt_context/types'; -import { PromptEditor, Props } from '.'; - -const mockSelectedAlertPromptContext: SelectedPromptContext = { - contextAnonymizationFields: { total: 0, page: 1, perPage: 1000, data: [] }, - promptContextId: mockAlertPromptContext.id, - rawData: 'alert data', -}; - -const mockSelectedEventPromptContext: SelectedPromptContext = { - contextAnonymizationFields: { total: 0, page: 1, perPage: 1000, data: [] }, - promptContextId: mockEventPromptContext.id, - rawData: 'event data', -}; - -const defaultProps: Props = { - conversation: undefined, - editingSystemPromptId: undefined, - isNewConversation: true, - isSettingsModalVisible: false, - onSystemPromptSelectionChange: jest.fn(), - promptContexts: { - [mockAlertPromptContext.id]: mockAlertPromptContext, - [mockEventPromptContext.id]: mockEventPromptContext, - }, - promptTextPreview: 'Preview text', - selectedPromptContexts: {}, - setIsSettingsModalVisible: jest.fn(), - setSelectedPromptContexts: jest.fn(), - allSystemPrompts: [], -}; - -describe('PromptEditorComponent', () => { - beforeEach(() => jest.clearAllMocks()); - - it('renders the system prompt selector when isNewConversation is true', async () => { - render( - - - - ); - - await waitFor(() => { - expect(screen.getByTestId('selectSystemPrompt')).toBeInTheDocument(); - }); - }); - - it('does NOT render the system prompt selector when isNewConversation is false', async () => { - render( - - - - ); - - await waitFor(() => { - expect(screen.queryByTestId('selectSystemPrompt')).not.toBeInTheDocument(); - }); - }); - - it('renders the selected prompt contexts', async () => { - const selectedPromptContexts = { - [mockAlertPromptContext.id]: mockSelectedAlertPromptContext, - [mockEventPromptContext.id]: mockSelectedEventPromptContext, - }; - - render( - - - - ); - - await waitFor(() => { - Object.keys(selectedPromptContexts).forEach((id) => - expect(screen.queryByTestId(`selectedPromptContext-${id}`)).toBeInTheDocument() - ); - }); - }); - - it('renders the expected preview text', async () => { - render( - - - - ); - - await waitFor(() => { - expect(screen.getByTestId('previewText')).toHaveTextContent('Preview text'); - }); - }); - - it('renders an "editing prompt" `EuiComment` event', async () => { - render( - - - - ); - - await waitFor(() => { - expect(screen.getByTestId('eventText')).toHaveTextContent('editing prompt'); - }); - }); - - it('renders the user avatar', async () => { - render( - - - - ); - - await waitFor(() => { - expect(screen.getByTestId('userAvatar')).toBeInTheDocument(); - }); - }); -}); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/index.tsx deleted file mode 100644 index adf9b7d4aa658..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/index.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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { EuiAvatar, EuiCommentList, EuiText } from '@elastic/eui'; -import React, { useMemo } from 'react'; -// eslint-disable-next-line @kbn/eslint/module_migration -import styled from 'styled-components'; - -import { PromptResponse } from '@kbn/elastic-assistant-common'; -import { Conversation } from '../../..'; -import type { PromptContext, SelectedPromptContext } from '../prompt_context/types'; -import { SystemPrompt } from './system_prompt'; - -import * as i18n from './translations'; -import { SelectedPromptContexts } from './selected_prompt_contexts'; - -export interface Props { - conversation: Conversation | undefined; - editingSystemPromptId: string | undefined; - isNewConversation: boolean; - isSettingsModalVisible: boolean; - promptContexts: Record; - promptTextPreview: string; - onSystemPromptSelectionChange: (systemPromptId: string | undefined) => void; - selectedPromptContexts: Record; - setIsSettingsModalVisible: React.Dispatch>; - setSelectedPromptContexts: React.Dispatch< - React.SetStateAction> - >; - allSystemPrompts: PromptResponse[]; -} - -const PreviewText = styled(EuiText)` - white-space: pre-line; -`; - -const PromptEditorComponent: React.FC = ({ - conversation, - editingSystemPromptId, - isNewConversation, - isSettingsModalVisible, - promptContexts, - promptTextPreview, - onSystemPromptSelectionChange, - selectedPromptContexts, - setIsSettingsModalVisible, - setSelectedPromptContexts, - allSystemPrompts, -}) => { - const commentBody = useMemo( - () => ( - <> - {isNewConversation && ( - - )} - - - - - {promptTextPreview} - - - ), - [ - isNewConversation, - allSystemPrompts, - conversation, - editingSystemPromptId, - onSystemPromptSelectionChange, - isSettingsModalVisible, - setIsSettingsModalVisible, - promptContexts, - selectedPromptContexts, - setSelectedPromptContexts, - promptTextPreview, - ] - ); - - const comments = useMemo( - () => [ - { - children: commentBody, - event: ( - - {i18n.EDITING_PROMPT} - - ), - timelineAvatar: ( - - ), - timelineAvatarAriaLabel: i18n.YOU, - username: i18n.YOU, - }, - ], - [commentBody] - ); - - return ; -}; - -PromptEditorComponent.displayName = 'PromptEditorComponent'; - -export const PromptEditor = React.memo(PromptEditorComponent); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/selected_prompt_contexts/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/selected_prompt_contexts/index.tsx index 3a0e6f3ce87d2..d8cc1f8ef123b 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/selected_prompt_contexts/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/selected_prompt_contexts/index.tsx @@ -8,7 +8,6 @@ import { EuiAccordion, EuiButtonIcon, EuiFlexGroup, EuiFlexItem, EuiToolTip } from '@elastic/eui'; import { isEmpty, omit } from 'lodash/fp'; import React, { useCallback } from 'react'; -import styled from '@emotion/styled'; import { css } from '@emotion/react'; import { euiThemeVars } from '@kbn/ui-theme'; import { Conversation } from '../../../assistant_context/types'; @@ -25,14 +24,6 @@ export interface Props { currentReplacements: Conversation['replacements'] | undefined; } -export const EditorContainer = styled.div<{ - $accordionState: 'closed' | 'open'; -}>` - ${({ $accordionState }) => ($accordionState === 'closed' ? 'height: 0px;' : '')} - ${({ $accordionState }) => ($accordionState === 'closed' ? 'overflow: hidden;' : '')} - ${({ $accordionState }) => ($accordionState === 'closed' ? 'position: absolute;' : '')} -`; - const SelectedPromptContextsComponent: React.FC = ({ promptContexts, selectedPromptContexts, diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/index.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/index.test.tsx index 3b82b1fd0fbe5..d733979f4cf97 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/index.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/index.test.tsx @@ -62,7 +62,7 @@ jest.mock('../../use_conversation', () => { }); describe('SystemPrompt', () => { - const editingSystemPromptId = undefined; + const currentSystemPromptId = undefined; const isSettingsModalVisible = false; const onSystemPromptSelectionChange = jest.fn(); const setIsSettingsModalVisible = jest.fn(); @@ -86,7 +86,7 @@ describe('SystemPrompt', () => { render( { render( { { { { { { void; setIsSettingsModalVisible: React.Dispatch>; @@ -23,7 +23,7 @@ interface Props { const SystemPromptComponent: React.FC = ({ conversation, - editingSystemPromptId, + currentSystemPromptId, isSettingsModalVisible, onSystemPromptSelectionChange, setIsSettingsModalVisible, @@ -32,16 +32,16 @@ const SystemPromptComponent: React.FC = ({ }) => { const [isCleared, setIsCleared] = useState(false); const selectedPrompt = useMemo(() => { - if (editingSystemPromptId !== undefined) { + if (currentSystemPromptId !== undefined) { setIsCleared(false); - return allSystemPrompts.find((p) => p.id === editingSystemPromptId); + return allSystemPrompts.find((p) => p.id === currentSystemPromptId); } else { return allSystemPrompts.find((p) => p.id === conversation?.apiConfig?.defaultSystemPromptId); } - }, [allSystemPrompts, conversation?.apiConfig?.defaultSystemPromptId, editingSystemPromptId]); + }, [allSystemPrompts, conversation?.apiConfig?.defaultSystemPromptId, currentSystemPromptId]); const handleClearSystemPrompt = useCallback(() => { - if (editingSystemPromptId === undefined) { + if (currentSystemPromptId === undefined) { setIsCleared(false); onSystemPromptSelectionChange( allSystemPrompts.find((p) => p.id === conversation?.apiConfig?.defaultSystemPromptId)?.id @@ -53,7 +53,7 @@ const SystemPromptComponent: React.FC = ({ }, [ allSystemPrompts, conversation?.apiConfig?.defaultSystemPromptId, - editingSystemPromptId, + currentSystemPromptId, onSystemPromptSelectionChange, ]); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_modal/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_modal/translations.ts index 92837d970864c..4fe1d6b6d144e 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_modal/translations.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_modal/translations.ts @@ -20,13 +20,6 @@ export const SETTINGS_DESCRIPTION = i18n.translate( 'Create and manage System Prompts. System Prompts are configurable chunks of context that are always sent for a given conversation.', } ); -export const ADD_SYSTEM_PROMPT_MODAL_TITLE = i18n.translate( - 'xpack.elasticAssistant.assistant.promptEditor.systemPrompt.settings.modalTitle', - { - defaultMessage: 'System Prompts', - } -); - export const SYSTEM_PROMPT_NAME = i18n.translate( 'xpack.elasticAssistant.assistant.promptEditor.systemPrompt.settings.nameLabel', { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_settings_management/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_settings_management/translations.ts index 0217632716193..bc55f308aad25 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_settings_management/translations.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/system_prompt_settings_management/translations.ts @@ -27,13 +27,6 @@ export const SYSTEM_PROMPTS_TABLE_COLUMN_DATE_UPDATED = i18n.translate( } ); -export const SYSTEM_PROMPTS_TABLE_COLUMN_ACTIONS = i18n.translate( - 'xpack.elasticAssistant.assistant.promptsTable.systemPromptsTableColumnActions', - { - defaultMessage: 'Actions', - } -); - export const SYSTEM_PROMPTS_TABLE_SETTINGS_DESCRIPTION = i18n.translate( 'xpack.elasticAssistant.assistant.promptsTable.settingsDescription', { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/translations.ts index 91f31bb7ebd22..a55ddd6ade779 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/translations.ts +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/system_prompt/translations.ts @@ -7,13 +7,6 @@ import { i18n } from '@kbn/i18n'; -export const ADD_SYSTEM_PROMPT_TOOLTIP = i18n.translate( - 'xpack.elasticAssistant.assistant.firstPromptEditor.addSystemPromptTooltip', - { - defaultMessage: 'Add system prompt', - } -); - export const CLEAR_SYSTEM_PROMPT = i18n.translate( 'xpack.elasticAssistant.assistant.firstPromptEditor.clearSystemPrompt', { diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/translations.ts b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/translations.ts deleted file mode 100644 index 567754482bfb3..0000000000000 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_editor/translations.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; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { i18n } from '@kbn/i18n'; - -export const COMMENTS_LIST_ARIA_LABEL = i18n.translate( - 'xpack.elasticAssistant.assistant.firstPromptEditor.commentsListAriaLabel', - { - defaultMessage: 'List of comments', - } -); - -export const EDITING_PROMPT = i18n.translate( - 'xpack.elasticAssistant.assistant.firstPromptEditor.editingPromptLabel', - { - defaultMessage: 'editing prompt', - } -); - -export const YOU = i18n.translate('xpack.elasticAssistant.assistant.firstPromptEditor.youLabel', { - defaultMessage: 'You', -}); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_textarea/index.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_textarea/index.tsx index e3962e7408dd4..72cf691837d04 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_textarea/index.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/prompt_textarea/index.tsx @@ -12,19 +12,19 @@ import { css } from '@emotion/react'; import * as i18n from './translations'; export interface Props extends React.TextareaHTMLAttributes { - handlePromptChange: (value: string) => void; + setUserPrompt: (value: string) => void; isDisabled?: boolean; onPromptSubmit: (value: string) => void; value: string; } export const PromptTextArea = forwardRef( - ({ isDisabled = false, value, onPromptSubmit, handlePromptChange }, ref) => { + ({ isDisabled = false, value, onPromptSubmit, setUserPrompt }, ref) => { const onChangeCallback = useCallback( (event: React.ChangeEvent) => { - handlePromptChange(event.target.value); + setUserPrompt(event.target.value); }, - [handlePromptChange] + [setUserPrompt] ); const onKeyDown = useCallback( @@ -35,13 +35,13 @@ export const PromptTextArea = forwardRef( if (value.trim().length) { onPromptSubmit(event.target.value?.trim()); - handlePromptChange(''); + setUserPrompt(''); } else { event.stopPropagation(); } } }, - [value, onPromptSubmit, handlePromptChange] + [value, onPromptSubmit, setUserPrompt] ); return ( diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.test.tsx index 941b442ce4d48..a558c345f547a 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.test.tsx @@ -17,6 +17,7 @@ const testProps = { selectedQuickPrompt: MOCK_QUICK_PROMPTS[0], onQuickPromptDeleted, onQuickPromptSelectionChange, + selectedColor: '#D36086', }; describe('QuickPromptSelector', () => { @@ -28,7 +29,10 @@ describe('QuickPromptSelector', () => { expect(getByTestId('euiComboBoxPill')).toHaveTextContent(MOCK_QUICK_PROMPTS[0].name); fireEvent.click(getByTestId('comboBoxToggleListButton')); fireEvent.click(getByTestId(MOCK_QUICK_PROMPTS[1].name)); - expect(onQuickPromptSelectionChange).toHaveBeenCalledWith(MOCK_QUICK_PROMPTS[1]); + expect(onQuickPromptSelectionChange).toHaveBeenCalledWith( + MOCK_QUICK_PROMPTS[1], + testProps.selectedColor + ); }); it('Only custom option can be deleted', () => { const { getByTestId } = render(); @@ -46,14 +50,17 @@ describe('QuickPromptSelector', () => { code: 'Enter', charCode: 13, }); - expect(onQuickPromptSelectionChange).toHaveBeenCalledWith({ - categories: [], - color: '#D36086', - content: 'quickly prompt please', - id: 'A_CUSTOM_OPTION', - name: 'A_CUSTOM_OPTION', - promptType: 'quick', - }); + expect(onQuickPromptSelectionChange).toHaveBeenCalledWith( + { + categories: [], + color: '#D36086', + content: 'quickly prompt please', + id: 'A_CUSTOM_OPTION', + name: 'A_CUSTOM_OPTION', + promptType: 'quick', + }, + testProps.selectedColor + ); }); it('Reset settings every time before selecting an system prompt from the input if resetSettings is provided', () => { const mockResetSettings = jest.fn(); @@ -80,6 +87,9 @@ describe('QuickPromptSelector', () => { code: 'Enter', charCode: 13, }); - expect(onQuickPromptSelectionChange).toHaveBeenCalledWith(customOption); + expect(onQuickPromptSelectionChange).toHaveBeenCalledWith( + customOption, + testProps.selectedColor + ); }); }); diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.tsx index 759c6e49e446e..f0adee73ddb25 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_selector/quick_prompt_selector.tsx @@ -24,8 +24,12 @@ import * as i18n from './translations'; interface Props { isDisabled?: boolean; onQuickPromptDeleted: (quickPromptTitle: string) => void; - onQuickPromptSelectionChange: (quickPrompt?: PromptResponse | string) => void; + onQuickPromptSelectionChange: ( + quickPrompt: PromptResponse | string, + selectedColor: string + ) => void; quickPrompts: PromptResponse[]; + selectedColor: string; selectedQuickPrompt?: PromptResponse; resetSettings?: () => void; } @@ -42,6 +46,7 @@ export const QuickPromptSelector: React.FC = React.memo( onQuickPromptDeleted, onQuickPromptSelectionChange, resetSettings, + selectedColor, selectedQuickPrompt, }) => { // Form options @@ -80,9 +85,11 @@ export const QuickPromptSelector: React.FC = React.memo( ? undefined : quickPrompts.find((qp) => qp.name === quickPromptSelectorOption[0]?.label) ?? quickPromptSelectorOption[0]?.label; - onQuickPromptSelectionChange(newQuickPrompt); + if (newQuickPrompt) { + onQuickPromptSelectionChange(newQuickPrompt, selectedColor); + } }, - [onQuickPromptSelectionChange, resetSettings, quickPrompts] + [onQuickPromptSelectionChange, resetSettings, quickPrompts, selectedColor] ); // Callback for when user types to create a new quick prompt diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/helpers.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/helpers.tsx new file mode 100644 index 0000000000000..185fc629a1d4e --- /dev/null +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/helpers.tsx @@ -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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { euiPaletteColorBlind } from '@elastic/eui'; + +const euiVisPalette = euiPaletteColorBlind(); +export const getRandomEuiColor = () => { + const randomIndex = Math.floor(Math.random() * euiVisPalette.length); + return euiVisPalette[randomIndex]; +}; diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_editor.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_editor.tsx index 9a4010e32d09d..d4d9a9bd82c9f 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_editor.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_editor.tsx @@ -14,6 +14,7 @@ import { PromptResponse, PerformPromptsBulkActionRequestBody as PromptsPerformBulkActionRequestBody, } from '@kbn/elastic-assistant-common/impl/schemas/prompts/bulk_crud_prompts_route.gen'; +import { getRandomEuiColor } from './helpers'; import { PromptContextTemplate } from '../../../..'; import * as i18n from './translations'; import { QuickPromptSelector } from '../quick_prompt_selector/quick_prompt_selector'; @@ -21,8 +22,6 @@ import { PromptContextSelector } from '../prompt_context_selector/prompt_context import { useAssistantContext } from '../../../assistant_context'; import { useQuickPromptEditor } from './use_quick_prompt_editor'; -const DEFAULT_COLOR = '#D36086'; - interface Props { onSelectedQuickPromptChange: (quickPrompt?: PromptResponse) => void; quickPromptSettings: PromptResponse[]; @@ -112,12 +111,6 @@ const QuickPromptSettingsEditorComponent = ({ ] ); - // Color - const selectedColor = useMemo( - () => selectedQuickPrompt?.color ?? DEFAULT_COLOR, - [selectedQuickPrompt?.color] - ); - const handleColorChange = useCallback( (color, { hex, isValid }) => { if (selectedQuickPrompt != null) { @@ -177,6 +170,17 @@ const QuickPromptSettingsEditorComponent = ({ ] ); + const setDefaultPromptColor = useCallback((): string => { + const randomColor = getRandomEuiColor(); + handleColorChange(randomColor, { hex: randomColor, isValid: true }); + return randomColor; + }, [handleColorChange]); + + // Color + const selectedColor = useMemo( + () => selectedQuickPrompt?.color ?? setDefaultPromptColor(), + [selectedQuickPrompt?.color, setDefaultPromptColor] + ); // Prompt Contexts const selectedPromptContexts = useMemo( () => @@ -263,6 +267,7 @@ const QuickPromptSettingsEditorComponent = ({ quickPrompts={quickPromptSettings} resetSettings={resetSettings} selectedQuickPrompt={selectedQuickPrompt} + selectedColor={selectedColor} /> diff --git a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_settings.test.tsx b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_settings.test.tsx index eb8cc2cb2569c..73712fefa3504 100644 --- a/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_settings.test.tsx +++ b/x-pack/packages/kbn-elastic-assistant/impl/assistant/quick_prompts/quick_prompt_settings/quick_prompt_settings.test.tsx @@ -42,17 +42,17 @@ jest.mock('../quick_prompt_selector/quick_prompt_selector', () => ({