diff --git a/.github/workflows/create-deploy-tag.yml b/.github/workflows/create-deploy-tag.yml new file mode 100644 index 0000000000000..e173784ecc3fb --- /dev/null +++ b/.github/workflows/create-deploy-tag.yml @@ -0,0 +1,60 @@ +--- +# - This workflow creates a tag with the format "deploy@" on the main branch. +# - It is triggered manually from the GitHub Actions UI. +# - It is only allowed to run on the main branch and ensures that the tag is created +# on the main branch only in a verification step. +# This is only to prevent accidental creation of the tag on other branches and cannot be used to prevent malicious creation of the tag. + +name: create-deploy-tag + +on: + workflow_dispatch: + inputs: + commit: + description: "The commit to tag (default: latest commit on main)" + +concurrency: + group: ${{ github.workflow }} + +jobs: + create-deploy-tag: + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + - name: Select commit to be tagged + run: | + commit="${{ github.event.inputs.commit || github.sha }}" + echo "COMMIT=${commit}" >> "${GITHUB_ENV}" + - name: Verify selected commit isn't already tagged + run: | + git tag --contains ${COMMIT} | grep -P "^deploy@\d+$" && { + echo "Tag already exists on selected commit" + exit 1 + } || true + - name: Verify branch + run: | + if [[ "${GITHUB_REF}" != "refs/heads/main" ]]; then + echo "This workflow can only be run on the main branch" + exit 1 + fi + - name: Prepare tag + run: | + tag_name="deploy@$(date +%s)" + echo "TAG_NAME=${tag_name}" >> "${GITHUB_ENV}" + - name: Create tag + run: | + git tag ${TAG_NAME} ${COMMIT} + git push origin "refs/tags/${TAG_NAME}" + - if: always() + uses: elastic/apm-pipeline-library/.github/actions/notify-build-status@current + with: + message: ${{ job.status == 'success' && format('Created tag `{0}` for commit `{1}`', env.TAG_NAME, env.COMMIT) || 'Creating a deploy tag failed' }} + vaultUrl: ${{ secrets.VAULT_ADDR }} + vaultRoleId: ${{ secrets.VAULT_ROLE_ID }} + vaultSecretId: ${{ secrets.VAULT_SECRET_ID }} + slackChannel: "#kibana-mission-control" \ No newline at end of file diff --git a/api_docs/actions.mdx b/api_docs/actions.mdx index e377ceae177bc..29ee4bc117d7c 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: 2023-08-29 +date: 2023-08-30 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 a3c2ae0b512d6..463f779f0e3a1 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'advancedSettings'] --- import advancedSettingsObj from './advanced_settings.devdocs.json'; diff --git a/api_docs/aiops.mdx b/api_docs/aiops.mdx index a8df73deaa4e4..3d115dcec0d8f 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: 2023-08-29 +date: 2023-08-30 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 9fd1a0f9641b4..ad42ed5f036f6 100644 --- a/api_docs/alerting.devdocs.json +++ b/api_docs/alerting.devdocs.json @@ -1894,7 +1894,7 @@ "section": "def-common.RuleTypeState", "text": "RuleTypeState" }, - ", InstanceState extends { [x: string]: unknown; } = { [x: string]: unknown; }, InstanceContext extends { [x: string]: unknown; } = { [x: string]: unknown; }, ActionGroupIds extends string = never, RecoveryActionGroupId extends string = never, AlertData extends ", + ", InstanceState extends Record = Record, InstanceContext extends { [x: string]: unknown; } = { [x: string]: unknown; }, ActionGroupIds extends string = never, RecoveryActionGroupId extends string = never, AlertData extends ", { "pluginId": "alerting", "scope": "common", @@ -2101,7 +2101,7 @@ "section": "def-common.RuleTypeState", "text": "RuleTypeState" }, - ", InstanceState extends { [x: string]: unknown; } = { [x: string]: unknown; }, InstanceContext extends { [x: string]: unknown; } = { [x: string]: unknown; }, ActionGroupIds extends string = string, RecoveryActionGroupId extends string = string, AlertData extends ", + ", InstanceState extends Record = Record, InstanceContext extends { [x: string]: unknown; } = { [x: string]: unknown; }, ActionGroupIds extends string = string, RecoveryActionGroupId extends string = string, AlertData extends ", { "pluginId": "alerting", "scope": "common", @@ -4197,21 +4197,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-server.AlertInstanceState", - "type": "Type", - "tags": [], - "label": "AlertInstanceState", - "description": [], - "signature": [ - "{ [x: string]: unknown; }" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-server.BulkEditOperation", @@ -4333,6 +4318,21 @@ ], "initialIsOpen": false }, + { + "parentPluginId": "alerting", + "id": "def-server.LatestAlertInstanceStateSchema", + "type": "Type", + "tags": [], + "label": "LatestAlertInstanceStateSchema", + "description": [], + "signature": [ + "{ [x: string]: any; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "alerting", "id": "def-server.PartialRule", @@ -4554,7 +4554,7 @@ }, ">; getAlertState: (params: ", "GetAlertStateParams", - ") => Promise; getAlertSummary: (params: ", + ") => 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; } & {}> | 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; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; previousStartedAt?: string | null | undefined; summaryActions?: Record> | undefined; } & {}>>; getAlertSummary: (params: ", "GetAlertSummaryParams", ") => Promise<", { @@ -5529,67 +5529,6 @@ ], "returnComment": [], "initialIsOpen": false - }, - { - "parentPluginId": "alerting", - "id": "def-common.wrappedStateRt", - "type": "Function", - "tags": [], - "label": "wrappedStateRt", - "description": [], - "signature": [ - "() => ", - "TypeC", - "<{ wrapped: ", - "Type", - "; trackedAlerts: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ alertId: ", - "StringC", - "; alertUuid: ", - "StringC", - "; started: ", - "StringC", - "; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; pendingRecoveredCount: ", - "NumberC", - "; }>>; trackedAlertsRecovered: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ alertId: ", - "StringC", - "; alertUuid: ", - "StringC", - "; started: ", - "StringC", - "; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; pendingRecoveredCount: ", - "NumberC", - "; }>>; }>" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/lifecycle_state.ts", - "deprecated": false, - "trackAdoption": false, - "children": [], - "returnComment": [], - "initialIsOpen": false } ], "interfaces": [ @@ -9389,18 +9328,6 @@ } ], "enums": [ - { - "parentPluginId": "alerting", - "id": "def-common.ActionsCompletion", - "type": "Enum", - "tags": [], - "label": "ActionsCompletion", - "description": [], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.HealthStatus", @@ -9539,36 +9466,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-common.AlertInstanceMeta", - "type": "Type", - "tags": [], - "label": "AlertInstanceMeta", - "description": [], - "signature": [ - "{ lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; }" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "alerting", - "id": "def-common.AlertInstanceState", - "type": "Type", - "tags": [], - "label": "AlertInstanceState", - "description": [], - "signature": [ - "{ [x: string]: unknown; }" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.ALERTS_FEATURE_ID", @@ -9848,15 +9745,90 @@ }, { "parentPluginId": "alerting", - "id": "def-common.LastScheduledActions", + "id": "def-common.LatestAlertInstanceMetaSchema", "type": "Type", "tags": [], - "label": "LastScheduledActions", + "label": "LatestAlertInstanceMetaSchema", "description": [], "signature": [ - "{ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }" + "{ 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; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.LatestAlertInstanceStateSchema", + "type": "Type", + "tags": [], + "label": "LatestAlertInstanceStateSchema", + "description": [], + "signature": [ + "{ [x: string]: any; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.LatestLastScheduledActionsSchema", + "type": "Type", + "tags": [], + "label": "LatestLastScheduledActionsSchema", + "description": [], + "signature": [ + "{ readonly actions?: Record> | undefined; readonly subgroup?: string | undefined; readonly date: string; readonly group: string; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.LatestRawAlertInstanceSchema", + "type": "Type", + "tags": [], + "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; } & {}> | undefined; readonly state?: Record | undefined; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.LatestTaskStateSchema", + "type": "Type", + "tags": [], + "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; } & {}> | 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; } & {}> | 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, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "alerting", + "id": "def-common.LatestThrottledActionSchema", + "type": "Type", + "tags": [], + "label": "LatestThrottledActionSchema", + "description": [], + "signature": [ + "{ [x: string]: Readonly<{} & { date: string; }>; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -10160,21 +10132,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-common.RawAlertInstance", - "type": "Type", - "tags": [], - "label": "RawAlertInstance", - "description": [], - "signature": [ - "{ state?: { [x: string]: unknown; } | undefined; meta?: { lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; } | undefined; }" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.READ_FLAPPING_SETTINGS_SUB_FEATURE_ID", @@ -10622,21 +10579,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-common.RuleTaskState", - "type": "Type", - "tags": [], - "label": "RuleTaskState", - "description": [], - "signature": [ - "{ alertTypeState?: { [x: string]: unknown; } | undefined; alertInstances?: { [x: string]: { state?: { [x: string]: unknown; } | undefined; meta?: { lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; } | undefined; }; } | undefined; alertRecoveredInstances?: { [x: string]: { state?: { [x: string]: unknown; } | undefined; meta?: { lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; } | undefined; }; } | undefined; previousStartedAt?: Date | null | undefined; summaryActions?: { [x: string]: { date: Date; }; } | undefined; }" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.RuleTypeParams", @@ -10752,21 +10694,6 @@ "trackAdoption": false, "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-common.ThrottledActions", - "type": "Type", - "tags": [], - "label": "ThrottledActions", - "description": [], - "signature": [ - "{ [x: string]: { date: Date; }; }" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.TrackedLifecycleAlertState", @@ -12796,22 +12723,6 @@ ], "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-common.DateFromString", - "type": "Object", - "tags": [], - "label": "DateFromString", - "description": [], - "signature": [ - "Type", - "" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/date_from_string.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.DEFAULT_FLAPPING_SETTINGS", @@ -13190,66 +13101,6 @@ ], "initialIsOpen": false }, - { - "parentPluginId": "alerting", - "id": "def-common.rawAlertInstance", - "type": "Object", - "tags": [], - "label": "rawAlertInstance", - "description": [], - "signature": [ - "PartialC", - "<{ state: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; meta: ", - "PartialC", - "<{ lastScheduledActions: ", - "IntersectionC", - "<[", - "PartialC", - "<{ subgroup: ", - "StringC", - "; }>, ", - "TypeC", - "<{ group: ", - "StringC", - "; date: ", - "Type", - "; }>, ", - "PartialC", - "<{ actions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>]>; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; maintenanceWindowIds: ", - "ArrayC", - "<", - "StringC", - ">; pendingRecoveredCount: ", - "NumberC", - "; uuid: ", - "StringC", - "; }>; }>" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, { "parentPluginId": "alerting", "id": "def-common.RecoveredActionGroup", @@ -13356,166 +13207,6 @@ "deprecated": false, "trackAdoption": false, "initialIsOpen": false - }, - { - "parentPluginId": "alerting", - "id": "def-common.ruleParamsSchema", - "type": "Object", - "tags": [], - "label": "ruleParamsSchema", - "description": [], - "signature": [ - "IntersectionC", - "<[", - "TypeC", - "<{ alertId: ", - "StringC", - "; }>, ", - "PartialC", - "<{ spaceId: ", - "StringC", - "; }>]>" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "alerting", - "id": "def-common.ruleStateSchema", - "type": "Object", - "tags": [], - "label": "ruleStateSchema", - "description": [], - "signature": [ - "PartialC", - "<{ alertTypeState: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; alertInstances: ", - "RecordC", - "<", - "StringC", - ", ", - "PartialC", - "<{ state: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; meta: ", - "PartialC", - "<{ lastScheduledActions: ", - "IntersectionC", - "<[", - "PartialC", - "<{ subgroup: ", - "StringC", - "; }>, ", - "TypeC", - "<{ group: ", - "StringC", - "; date: ", - "Type", - "; }>, ", - "PartialC", - "<{ actions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>]>; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; maintenanceWindowIds: ", - "ArrayC", - "<", - "StringC", - ">; pendingRecoveredCount: ", - "NumberC", - "; uuid: ", - "StringC", - "; }>; }>>; alertRecoveredInstances: ", - "RecordC", - "<", - "StringC", - ", ", - "PartialC", - "<{ state: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; meta: ", - "PartialC", - "<{ lastScheduledActions: ", - "IntersectionC", - "<[", - "PartialC", - "<{ subgroup: ", - "StringC", - "; }>, ", - "TypeC", - "<{ group: ", - "StringC", - "; date: ", - "Type", - "; }>, ", - "PartialC", - "<{ actions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>]>; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; maintenanceWindowIds: ", - "ArrayC", - "<", - "StringC", - ">; pendingRecoveredCount: ", - "NumberC", - "; uuid: ", - "StringC", - "; }>; }>>; previousStartedAt: ", - "UnionC", - "<[", - "NullC", - ", ", - "Type", - "]>; summaryActions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", - "deprecated": false, - "trackAdoption": false, - "initialIsOpen": false } ] } diff --git a/api_docs/alerting.mdx b/api_docs/alerting.mdx index dc0e5a6b0c78d..57d055b007fcf 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: 2023-08-29 +date: 2023-08-30 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 | |-------------------|-----------|------------------------|-----------------| -| 786 | 1 | 755 | 46 | +| 780 | 1 | 749 | 46 | ## Client diff --git a/api_docs/apm.mdx b/api_docs/apm.mdx index b2bff86331a71..d40556ebc9d4d 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: 2023-08-29 +date: 2023-08-30 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 7f9d6eb4d6979..a25880dfdac02 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'apmDataAccess'] --- import apmDataAccessObj from './apm_data_access.devdocs.json'; diff --git a/api_docs/asset_manager.mdx b/api_docs/asset_manager.mdx index b3aea5514a082..6a55284b88fab 100644 --- a/api_docs/asset_manager.mdx +++ b/api_docs/asset_manager.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/assetManager title: "assetManager" image: https://source.unsplash.com/400x175/?github description: API docs for the assetManager plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'assetManager'] --- import assetManagerObj from './asset_manager.devdocs.json'; diff --git a/api_docs/banners.mdx b/api_docs/banners.mdx index 1e40fdd64b159..f2c475f94bcd2 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: 2023-08-29 +date: 2023-08-30 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 83a8cc40306b6..412ffebbdd584 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: 2023-08-29 +date: 2023-08-30 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 4f65b84fa40f2..732da96bbf303 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: 2023-08-29 +date: 2023-08-30 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 cfaf4b7b3056d..e2e1cd29b7090 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: 2023-08-29 +date: 2023-08-30 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 613b1af2ac128..ec41804f915aa 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: 2023-08-29 +date: 2023-08-30 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 c65150369cd92..ace698dc38d65 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloud'] --- import cloudObj from './cloud.devdocs.json'; diff --git a/api_docs/cloud_chat.mdx b/api_docs/cloud_chat.mdx index 89d22b4cadf85..7db01f8f898f0 100644 --- a/api_docs/cloud_chat.mdx +++ b/api_docs/cloud_chat.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloudChat title: "cloudChat" image: https://source.unsplash.com/400x175/?github description: API docs for the cloudChat plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloudChat'] --- import cloudChatObj from './cloud_chat.devdocs.json'; diff --git a/api_docs/cloud_chat_provider.mdx b/api_docs/cloud_chat_provider.mdx index 497715c6452dc..dc1f68a332496 100644 --- a/api_docs/cloud_chat_provider.mdx +++ b/api_docs/cloud_chat_provider.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/cloudChatProvider title: "cloudChatProvider" image: https://source.unsplash.com/400x175/?github description: API docs for the cloudChatProvider plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'cloudChatProvider'] --- import cloudChatProviderObj from './cloud_chat_provider.devdocs.json'; diff --git a/api_docs/cloud_data_migration.mdx b/api_docs/cloud_data_migration.mdx index 0220ebe6fce30..d5d689e8a38a5 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: 2023-08-29 +date: 2023-08-30 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 5daa2dc23ed19..bf94629012064 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: 2023-08-29 +date: 2023-08-30 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 73671acb55813..ff107f32ba1ab 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: 2023-08-29 +date: 2023-08-30 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 5f74e4dd1dccb..97502704669c6 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: 2023-08-29 +date: 2023-08-30 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 e03f7d1496f1a..505b00e981eb2 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: 2023-08-29 +date: 2023-08-30 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 a9b98bbe50122..549517be1edaf 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'contentManagement'] --- import contentManagementObj from './content_management.devdocs.json'; diff --git a/api_docs/controls.mdx b/api_docs/controls.mdx index 180b52069b3cd..a073075963683 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'controls'] --- import controlsObj from './controls.devdocs.json'; diff --git a/api_docs/custom_integrations.mdx b/api_docs/custom_integrations.mdx index 883d17498c404..760de07e28bd5 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: 2023-08-29 +date: 2023-08-30 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 bdd762edacbc5..7ac3a2c627010 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: 2023-08-29 +date: 2023-08-30 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 7eae636681801..c79711007cd59 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dashboardEnhanced'] --- import dashboardEnhancedObj from './dashboard_enhanced.devdocs.json'; diff --git a/api_docs/data.devdocs.json b/api_docs/data.devdocs.json index 17cf390695f9e..a637553e5a090 100644 --- a/api_docs/data.devdocs.json +++ b/api_docs/data.devdocs.json @@ -7620,6 +7620,77 @@ "trackAdoption": false } ] + }, + { + "parentPluginId": "data", + "id": "def-public.DataPublicPluginStartActions.createFiltersFromMultiValueClickAction", + "type": "Function", + "tags": [], + "label": "createFiltersFromMultiValueClickAction", + "description": [], + "signature": [ + "({ data, negate, }: { data: { cells: { column: number; row: number; }[]; table: Pick<", + { + "pluginId": "expressions", + "scope": "common", + "docId": "kibExpressionsPluginApi", + "section": "def-common.Datatable", + "text": "Datatable" + }, + ", \"meta\" | \"rows\" | \"columns\">; relation?: ", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.BooleanRelation", + "text": "BooleanRelation" + }, + " | undefined; }[]; timeFieldName?: string | undefined; negate?: boolean | undefined; }) => Promise<", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.Filter", + "text": "Filter" + }, + "[] | undefined>" + ], + "path": "src/plugins/data/public/types.ts", + "deprecated": false, + "trackAdoption": false, + "returnComment": [], + "children": [ + { + "parentPluginId": "data", + "id": "def-public.DataPublicPluginStartActions.createFiltersFromMultiValueClickAction.$1", + "type": "Object", + "tags": [], + "label": "__0", + "description": [], + "signature": [ + "{ data: { cells: { column: number; row: number; }[]; table: Pick<", + { + "pluginId": "expressions", + "scope": "common", + "docId": "kibExpressionsPluginApi", + "section": "def-common.Datatable", + "text": "Datatable" + }, + ", \"meta\" | \"rows\" | \"columns\">; relation?: ", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.BooleanRelation", + "text": "BooleanRelation" + }, + " | undefined; }[]; timeFieldName?: string | undefined; negate?: boolean | undefined; }" + ], + "path": "src/plugins/data/public/actions/filters/create_filters_from_multi_value_click.ts", + "deprecated": false, + "trackAdoption": false + } + ] } ], "initialIsOpen": false diff --git a/api_docs/data.mdx b/api_docs/data.mdx index 3173f22684c86..e00a3b1defcfe 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'data'] --- import dataObj from './data.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 | |-------------------|-----------|------------------------|-----------------| -| 3308 | 33 | 2581 | 26 | +| 3310 | 33 | 2583 | 26 | ## Client diff --git a/api_docs/data_query.mdx b/api_docs/data_query.mdx index 4610c901d482c..376ac76d421a9 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'data.query'] --- import dataQueryObj from './data_query.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 | |-------------------|-----------|------------------------|-----------------| -| 3308 | 33 | 2581 | 26 | +| 3310 | 33 | 2583 | 26 | ## Client diff --git a/api_docs/data_search.mdx b/api_docs/data_search.mdx index da269e2ad8258..6b2810efa5d3b 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'data.search'] --- import dataSearchObj from './data_search.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 | |-------------------|-----------|------------------------|-----------------| -| 3308 | 33 | 2581 | 26 | +| 3310 | 33 | 2583 | 26 | ## Client diff --git a/api_docs/data_view_editor.mdx b/api_docs/data_view_editor.mdx index 0eadf9e93ada3..2bd47faba45f7 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: 2023-08-29 +date: 2023-08-30 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 0f3fd5fc08760..65306f00e2297 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: 2023-08-29 +date: 2023-08-30 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 15c25492cdafa..cd3b662436955 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: 2023-08-29 +date: 2023-08-30 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 96bf7eb84fd99..de5079595b9d8 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: 2023-08-29 +date: 2023-08-30 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 b67f64a5f94a1..b2005ef3058f0 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'dataVisualizer'] --- import dataVisualizerObj from './data_visualizer.devdocs.json'; diff --git a/api_docs/deprecations_by_api.mdx b/api_docs/deprecations_by_api.mdx index e5c6f8f7f98bb..230508c30c6c7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- diff --git a/api_docs/deprecations_by_plugin.mdx b/api_docs/deprecations_by_plugin.mdx index d6a24b5788ad9..d4c491efbb05e 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -1493,16 +1493,16 @@ migrates to using the Kibana Privilege model: https://github.com/elastic/kibana/ | | [legacy_types.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_types.ts#:~:text=SavedObjectAttributes), [legacy_types.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_types.ts#:~:text=SavedObjectAttributes), [legacy_migrations.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_migrations.ts#:~:text=SavedObjectAttributes), [legacy_migrations.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_migrations.ts#:~:text=SavedObjectAttributes), [legacy_types.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_types.ts#:~:text=SavedObjectAttributes), [legacy_types.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_types.ts#:~:text=SavedObjectAttributes), [legacy_migrations.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_migrations.ts#:~:text=SavedObjectAttributes), [legacy_migrations.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_migrations.ts#:~:text=SavedObjectAttributes) | - | | | [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=SavedObject), [host_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/host_risk_score_dashboards.ts#:~:text=SavedObject), [user_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/user_risk_score_dashboards.ts#:~:text=SavedObject), [user_risk_score_dashboards.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_saved_objects/saved_object/user_risk_score_dashboards.ts#:~:text=SavedObject) | - | | | [timelines.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/timeline/saved_object_mappings/timelines.ts#:~:text=convertToMultiNamespaceTypeVersion), [notes.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/timeline/saved_object_mappings/notes.ts#:~:text=convertToMultiNamespaceTypeVersion), [pinned_events.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/timeline/saved_object_mappings/pinned_events.ts#:~:text=convertToMultiNamespaceTypeVersion), [legacy_saved_object_mappings.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/detection_engine/rule_actions_legacy/logic/rule_actions/legacy_saved_object_mappings.ts#:~:text=convertToMultiNamespaceTypeVersion) | - | -| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [trusted_app_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/trusted_app_validator.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [trusted_app_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/trusted_app_validator.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [receiver.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/telemetry/receiver.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [receiver.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/telemetry/receiver.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID)+ 36 more | - | +| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [trusted_app_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/trusted_app_validator.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [trusted_app_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/trusted_app_validator.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [receiver.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/telemetry/receiver.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [receiver.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/telemetry/receiver.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_ID)+ 37 more | - | | | [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/trusted_apps/constants.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_NAME), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/trusted_apps/constants.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/trusted_apps/index.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/trusted_apps/index.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_NAME) | - | | | [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/trusted_apps/constants.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_DESCRIPTION), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/trusted_apps/constants.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/trusted_apps/index.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/trusted_apps/index.ts#:~:text=ENDPOINT_TRUSTED_APPS_LIST_DESCRIPTION) | - | -| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [event_filter_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/event_filter_validator.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [event_filter_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/event_filter_validator.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [security_lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/telemetry/tasks/security_lists.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID)+ 34 more | - | +| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [event_filter_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/event_filter_validator.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [event_filter_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/event_filter_validator.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID), [security_lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lib/telemetry/tasks/security_lists.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_ID)+ 35 more | - | | | [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_NAME), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_NAME), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/event_filters/constants.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_NAME), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/event_filters/constants.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/event_filters/index.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/event_filters/index.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_NAME) | - | | | [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION), [create_event_filters.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/fleet_integration/handlers/create_event_filters.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/event_filters/constants.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/event_filters/constants.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/event_filters/index.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/event_filters/index.ts#:~:text=ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION) | - | -| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [host_isolation_exceptions_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/host_isolation_exceptions_validator.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [host_isolation_exceptions_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/host_isolation_exceptions_validator.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID)+ 18 more | - | +| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [host_isolation_exceptions_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/host_isolation_exceptions_validator.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [host_isolation_exceptions_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/host_isolation_exceptions_validator.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID)+ 19 more | - | | | [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_NAME), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/host_isolation_exceptions/index.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/host_isolation_exceptions/index.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_NAME) | - | | | [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_DESCRIPTION), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/host_isolation_exceptions/constants.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/host_isolation_exceptions/index.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/host_isolation_exceptions/index.ts#:~:text=ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_DESCRIPTION) | - | -| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [blocklist_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/blocklist_validator.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [blocklist_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/blocklist_validator.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID)+ 16 more | - | +| | [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [lists.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/lib/artifacts/lists.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [manifest_manager.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [blocklist_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/blocklist_validator.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [blocklist_validator.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/server/lists_integration/endpoint/validators/blocklist_validator.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [policy_hooks.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_hooks.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_ID)+ 17 more | - | | | [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_NAME), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/blocklists/index.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_NAME), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/blocklists/index.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_NAME) | - | | | [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_DESCRIPTION), [constants.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/public/management/pages/blocklist/constants.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/blocklists/index.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_DESCRIPTION), [index.ts](https://github.com/elastic/kibana/tree/main/x-pack/plugins/security_solution/scripts/endpoint/blocklists/index.ts#:~:text=ENDPOINT_BLOCKLISTS_LIST_DESCRIPTION) | - | diff --git a/api_docs/deprecations_by_team.mdx b/api_docs/deprecations_by_team.mdx index 4d9206678e728..12743a0315f72 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- diff --git a/api_docs/dev_tools.mdx b/api_docs/dev_tools.mdx index df3eec5b6c75f..c0a0e7eaea17a 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'devTools'] --- import devToolsObj from './dev_tools.devdocs.json'; diff --git a/api_docs/discover.devdocs.json b/api_docs/discover.devdocs.json index fbe23a8c3fc4a..65c3fb0bef8a3 100644 --- a/api_docs/discover.devdocs.json +++ b/api_docs/discover.devdocs.json @@ -24,6 +24,188 @@ } ], "interfaces": [ + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService", + "type": "Interface", + "tags": [], + "label": "DiscoverCustomizationService", + "description": [], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.set", + "type": "Function", + "tags": [], + "label": "set", + "description": [], + "signature": [ + "(customization: ", + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.DiscoverCustomization", + "text": "DiscoverCustomization" + }, + ") => void" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.set.$1", + "type": "CompoundType", + "tags": [], + "label": "customization", + "description": [], + "signature": [ + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.DiscoverCustomization", + "text": "DiscoverCustomization" + } + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.get$", + "type": "Function", + "tags": [], + "label": "get$", + "description": [], + "signature": [ + "(id: TCustomizationId) => ", + "Observable", + " | Extract<", + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.TopNavCustomization", + "text": "TopNavCustomization" + }, + ", { id: TCustomizationId; }> | Extract<", + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.UnifiedHistogramCustomization", + "text": "UnifiedHistogramCustomization" + }, + ", { id: TCustomizationId; }> | undefined>" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.get$.$1", + "type": "Uncategorized", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "TCustomizationId" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.enable", + "type": "Function", + "tags": [], + "label": "enable", + "description": [], + "signature": [ + "(id: \"search_bar\" | \"top_nav\" | \"unified_histogram\") => void" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.enable.$1", + "type": "CompoundType", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "\"search_bar\" | \"top_nav\" | \"unified_histogram\"" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + }, + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.disable", + "type": "Function", + "tags": [], + "label": "disable", + "description": [], + "signature": [ + "(id: \"search_bar\" | \"top_nav\" | \"unified_histogram\") => void" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomizationService.disable.$1", + "type": "CompoundType", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "\"search_bar\" | \"top_nav\" | \"unified_histogram\"" + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [] + } + ], + "initialIsOpen": false + }, { "parentPluginId": "discover", "id": "def-public.DiscoverProfileOptions", @@ -387,6 +569,153 @@ } ], "initialIsOpen": false + }, + { + "parentPluginId": "discover", + "id": "def-public.SearchBarCustomization", + "type": "Interface", + "tags": [], + "label": "SearchBarCustomization", + "description": [], + "path": "src/plugins/discover/public/customizations/customization_types/search_bar_customization.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.SearchBarCustomization.id", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "\"search_bar\"" + ], + "path": "src/plugins/discover/public/customizations/customization_types/search_bar_customization.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "discover", + "id": "def-public.SearchBarCustomization.CustomDataViewPicker", + "type": "CompoundType", + "tags": [], + "label": "CustomDataViewPicker", + "description": [], + "signature": [ + "React.ComponentType<{}> | undefined" + ], + "path": "src/plugins/discover/public/customizations/customization_types/search_bar_customization.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "discover", + "id": "def-public.SearchBarCustomization.PrependFilterBar", + "type": "CompoundType", + "tags": [], + "label": "PrependFilterBar", + "description": [], + "signature": [ + "React.ComponentType<{}> | undefined" + ], + "path": "src/plugins/discover/public/customizations/customization_types/search_bar_customization.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "discover", + "id": "def-public.SearchBarCustomization.CustomSearchBar", + "type": "CompoundType", + "tags": [], + "label": "CustomSearchBar", + "description": [], + "signature": [ + "React.ComponentType<", + { + "pluginId": "navigation", + "scope": "public", + "docId": "kibNavigationPluginApi", + "section": "def-public.TopNavMenuProps", + "text": "TopNavMenuProps" + }, + "<", + { + "pluginId": "@kbn/es-query", + "scope": "common", + "docId": "kibKbnEsQueryPluginApi", + "section": "def-common.AggregateQuery", + "text": "AggregateQuery" + }, + ">> | undefined" + ], + "path": "src/plugins/discover/public/customizations/customization_types/search_bar_customization.ts", + "deprecated": false, + "trackAdoption": false + } + ], + "initialIsOpen": false + }, + { + "parentPluginId": "discover", + "id": "def-public.TopNavCustomization", + "type": "Interface", + "tags": [], + "label": "TopNavCustomization", + "description": [], + "path": "src/plugins/discover/public/customizations/customization_types/top_nav_customization.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "discover", + "id": "def-public.TopNavCustomization.id", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "\"top_nav\"" + ], + "path": "src/plugins/discover/public/customizations/customization_types/top_nav_customization.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "discover", + "id": "def-public.TopNavCustomization.defaultMenu", + "type": "Object", + "tags": [], + "label": "defaultMenu", + "description": [], + "signature": [ + "TopNavDefaultMenu", + " | undefined" + ], + "path": "src/plugins/discover/public/customizations/customization_types/top_nav_customization.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "discover", + "id": "def-public.TopNavCustomization.getMenuItems", + "type": "Function", + "tags": [], + "label": "getMenuItems", + "description": [], + "signature": [ + "(() => ", + "TopNavMenuItem", + "[]) | undefined" + ], + "path": "src/plugins/discover/public/customizations/customization_types/top_nav_customization.ts", + "deprecated": false, + "trackAdoption": false, + "children": [], + "returnComment": [] + } + ], + "initialIsOpen": false } ], "enums": [], @@ -433,7 +762,7 @@ "label": "DiscoverContainerProps", "description": [], "signature": [ - "{ overrideServices: Partial<", + "{ isLoading?: boolean | undefined; overrideServices: Partial<", "DiscoverServices", ">; scopedHistory: ", { @@ -443,7 +772,7 @@ "section": "def-common.ScopedHistory", "text": "ScopedHistory" }, - "; customize: ", + "; customizationCallbacks: ", { "pluginId": "discover", "scope": "public", @@ -451,13 +780,50 @@ "section": "def-public.CustomizationCallback", "text": "CustomizationCallback" }, - "; }" + "[]; }" ], "path": "src/plugins/discover/public/components/discover_container/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "discover", + "id": "def-public.DiscoverCustomization", + "type": "Type", + "tags": [], + "label": "DiscoverCustomization", + "description": [], + "signature": [ + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.SearchBarCustomization", + "text": "SearchBarCustomization" + }, + " | ", + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.TopNavCustomization", + "text": "TopNavCustomization" + }, + " | ", + { + "pluginId": "discover", + "scope": "public", + "docId": "kibDiscoverPluginApi", + "section": "def-public.UnifiedHistogramCustomization", + "text": "UnifiedHistogramCustomization" + } + ], + "path": "src/plugins/discover/public/customizations/customization_service.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "discover", "id": "def-public.DiscoverProfileId", @@ -588,6 +954,29 @@ "deprecated": false, "trackAdoption": false, "initialIsOpen": false + }, + { + "parentPluginId": "discover", + "id": "def-public.UnifiedHistogramCustomization", + "type": "Type", + "tags": [], + "label": "UnifiedHistogramCustomization", + "description": [], + "signature": [ + "UnifiedHistogramCustomizationId & Pick<", + { + "pluginId": "unifiedHistogram", + "scope": "public", + "docId": "kibUnifiedHistogramPluginApi", + "section": "def-public.UnifiedHistogramContainerProps", + "text": "UnifiedHistogramContainerProps" + }, + ", \"onBrushEnd\" | \"disabledActions\" | \"onFilter\" | \"withDefaultActions\">" + ], + "path": "src/plugins/discover/public/customizations/customization_types/histogram_customization.tsx", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false } ], "objects": [], diff --git a/api_docs/discover.mdx b/api_docs/discover.mdx index 9251bed21f4e0..0b3ec474f9dc2 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'discover'] --- import discoverObj from './discover.devdocs.json'; @@ -21,7 +21,7 @@ Contact [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/k | Public API count | Any count | Items lacking comments | Missing exports | |-------------------|-----------|------------------------|-----------------| -| 79 | 0 | 52 | 15 | +| 99 | 0 | 72 | 17 | ## Client diff --git a/api_docs/discover_enhanced.mdx b/api_docs/discover_enhanced.mdx index f7f82769628b9..e7963062f3d34 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'discoverEnhanced'] --- import discoverEnhancedObj from './discover_enhanced.devdocs.json'; diff --git a/api_docs/ecs_data_quality_dashboard.mdx b/api_docs/ecs_data_quality_dashboard.mdx index f7dae10eb09b4..be2f5c5bdad2d 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: 2023-08-29 +date: 2023-08-30 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 b54c2cf5e5cac..a708cdabf58cd 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: 2023-08-29 +date: 2023-08-30 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 3833618281f9c..695f088e3b89c 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: 2023-08-29 +date: 2023-08-30 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 a35dd8b2a6f39..222603e604d64 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: 2023-08-29 +date: 2023-08-30 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 4f5b0901138fc..519315f932bde 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: 2023-08-29 +date: 2023-08-30 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 666593267385b..92599810db9b1 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'enterpriseSearch'] --- import enterpriseSearchObj from './enterprise_search.devdocs.json'; diff --git a/api_docs/es_ui_shared.mdx b/api_docs/es_ui_shared.mdx index a623814d2d906..f2833a17f5a32 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'esUiShared'] --- import esUiSharedObj from './es_ui_shared.devdocs.json'; diff --git a/api_docs/event_annotation.mdx b/api_docs/event_annotation.mdx index e48a46cfcb57a..342e706b074c7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'eventAnnotation'] --- import eventAnnotationObj from './event_annotation.devdocs.json'; diff --git a/api_docs/event_log.mdx b/api_docs/event_log.mdx index 09c8d934dfea1..653ba700bcfb5 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: 2023-08-29 +date: 2023-08-30 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 2fc551f75db51..49abea2faa4ff 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: 2023-08-29 +date: 2023-08-30 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 ffadc334f7246..42c37bd7e6eaf 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: 2023-08-29 +date: 2023-08-30 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 099b5e151ad5b..41991272768ba 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: 2023-08-29 +date: 2023-08-30 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 50567fb3c9bd4..22fbf9a05f4b5 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: 2023-08-29 +date: 2023-08-30 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 511647d6a7650..d59b551d25d5a 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: 2023-08-29 +date: 2023-08-30 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 5a8071726a871..f309343bb2e54 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: 2023-08-29 +date: 2023-08-30 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 84d8834f2e1a9..4fb622263b5b6 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: 2023-08-29 +date: 2023-08-30 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 bd596eef5f64b..aa7b673923028 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: 2023-08-29 +date: 2023-08-30 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 012b3c8283002..d735aadd698b6 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: 2023-08-29 +date: 2023-08-30 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 5e5fa0092ce64..755b73db7d6f4 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: 2023-08-29 +date: 2023-08-30 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 5a3567bbaa35b..edcae8ed6775c 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: 2023-08-29 +date: 2023-08-30 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 d75699a0bc67b..b8897117c6f5c 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: 2023-08-29 +date: 2023-08-30 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 3a2af466166ea..a96fe480703b2 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: 2023-08-29 +date: 2023-08-30 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 0b67bdbb64966..7544995f12b1c 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressionXY'] --- import expressionXYObj from './expression_x_y.devdocs.json'; diff --git a/api_docs/expressions.devdocs.json b/api_docs/expressions.devdocs.json index 8396810919408..bb622685ac10c 100644 --- a/api_docs/expressions.devdocs.json +++ b/api_docs/expressions.devdocs.json @@ -7499,7 +7499,7 @@ "\nTracks state of execution.\n\n- `not-started` - before .start() method was called.\n- `pending` - immediately after .start() method is called.\n- `result` - when expression execution completed.\n- `error` - when execution failed with error." ], "signature": [ - "\"error\" | \"pending\" | \"not-started\" | \"result\"" + "\"error\" | \"pending\" | \"result\" | \"not-started\"" ], "path": "src/plugins/expressions/common/execution/container.ts", "deprecated": false, @@ -11686,7 +11686,7 @@ "label": "padding", "description": [], "signature": [ - "\"m\" | \"s\" | \"xs\" | \"l\" | \"xl\" | undefined" + "\"m\" | \"s\" | \"l\" | \"xs\" | \"xl\" | undefined" ], "path": "src/plugins/expressions/public/react_expression_renderer/react_expression_renderer.tsx", "deprecated": false, @@ -18892,7 +18892,7 @@ "\nTracks state of execution.\n\n- `not-started` - before .start() method was called.\n- `pending` - immediately after .start() method is called.\n- `result` - when expression execution completed.\n- `error` - when execution failed with error." ], "signature": [ - "\"error\" | \"pending\" | \"not-started\" | \"result\"" + "\"error\" | \"pending\" | \"result\" | \"not-started\"" ], "path": "src/plugins/expressions/common/execution/container.ts", "deprecated": false, @@ -31189,7 +31189,7 @@ "\nTracks state of execution.\n\n- `not-started` - before .start() method was called.\n- `pending` - immediately after .start() method is called.\n- `result` - when expression execution completed.\n- `error` - when execution failed with error." ], "signature": [ - "\"error\" | \"pending\" | \"not-started\" | \"result\"" + "\"error\" | \"pending\" | \"result\" | \"not-started\"" ], "path": "src/plugins/expressions/common/execution/container.ts", "deprecated": false, diff --git a/api_docs/expressions.mdx b/api_docs/expressions.mdx index 06f029f56890d..2f11bccab9226 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'expressions'] --- import expressionsObj from './expressions.devdocs.json'; diff --git a/api_docs/features.mdx b/api_docs/features.mdx index 4cfb788a38eaa..333bba1185598 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: 2023-08-29 +date: 2023-08-30 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 a236ab0be0474..29229154c3a5f 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fieldFormats'] --- import fieldFormatsObj from './field_formats.devdocs.json'; diff --git a/api_docs/file_upload.mdx b/api_docs/file_upload.mdx index 23c3684b63bef..007d705b213e2 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'fileUpload'] --- import fileUploadObj from './file_upload.devdocs.json'; diff --git a/api_docs/files.mdx b/api_docs/files.mdx index 9c5b048df424c..b7ef632a99b00 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: 2023-08-29 +date: 2023-08-30 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 74a3b30e990d2..4645031cc657e 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'filesManagement'] --- import filesManagementObj from './files_management.devdocs.json'; diff --git a/api_docs/fleet.mdx b/api_docs/fleet.mdx index d4770a5393235..6315c6ee11e2c 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: 2023-08-29 +date: 2023-08-30 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 c8dc6be2ffc7a..9aa1188b12326 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: 2023-08-29 +date: 2023-08-30 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 9cf887d5ed9c9..64869cef8edbe 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: 2023-08-29 +date: 2023-08-30 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 2384ea3a83b81..29085137b7abb 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: 2023-08-29 +date: 2023-08-30 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 3a4b6ea650395..ad11080256fe0 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: 2023-08-29 +date: 2023-08-30 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 f35561697892e..4b52084977433 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'indexLifecycleManagement'] --- import indexLifecycleManagementObj from './index_lifecycle_management.devdocs.json'; diff --git a/api_docs/index_management.mdx b/api_docs/index_management.mdx index 61ea64ac08109..9d4df43889de7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'indexManagement'] --- import indexManagementObj from './index_management.devdocs.json'; diff --git a/api_docs/infra.mdx b/api_docs/infra.mdx index e9596cddc338c..651f08ca622ab 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'infra'] --- import infraObj from './infra.devdocs.json'; diff --git a/api_docs/inspector.mdx b/api_docs/inspector.mdx index e0a6543f30b6f..282639d17b2d1 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'inspector'] --- import inspectorObj from './inspector.devdocs.json'; diff --git a/api_docs/interactive_setup.mdx b/api_docs/interactive_setup.mdx index 72cc862872291..37f8356cb0a00 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'interactiveSetup'] --- import interactiveSetupObj from './interactive_setup.devdocs.json'; diff --git a/api_docs/kbn_ace.mdx b/api_docs/kbn_ace.mdx index 3c5907d8de45c..24187a93ab5c3 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ace'] --- import kbnAceObj from './kbn_ace.devdocs.json'; diff --git a/api_docs/kbn_aiops_components.mdx b/api_docs/kbn_aiops_components.mdx index 53fecfd5a7ddd..bd5bd98944962 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/aiops-components'] --- import kbnAiopsComponentsObj from './kbn_aiops_components.devdocs.json'; diff --git a/api_docs/kbn_aiops_utils.mdx b/api_docs/kbn_aiops_utils.mdx index c8974ddedaf08..0f0e7ac684c2c 100644 --- a/api_docs/kbn_aiops_utils.mdx +++ b/api_docs/kbn_aiops_utils.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-aiops-utils title: "@kbn/aiops-utils" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/aiops-utils plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/aiops-utils'] --- import kbnAiopsUtilsObj from './kbn_aiops_utils.devdocs.json'; diff --git a/api_docs/kbn_alerting_api_integration_helpers.mdx b/api_docs/kbn_alerting_api_integration_helpers.mdx index d37c1916e8378..f73f75f068279 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: 2023-08-29 +date: 2023-08-30 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_state_types.devdocs.json b/api_docs/kbn_alerting_state_types.devdocs.json index ada44596c7d8f..df8c83dfdc58a 100644 --- a/api_docs/kbn_alerting_state_types.devdocs.json +++ b/api_docs/kbn_alerting_state_types.devdocs.json @@ -114,105 +114,135 @@ }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.AlertInstanceMeta", + "id": "def-common.LatestAlertInstanceMetaSchema", "type": "Type", "tags": [], - "label": "AlertInstanceMeta", + "label": "LatestAlertInstanceMetaSchema", "description": [], "signature": [ - "{ lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; }" + "{ 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; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.AlertInstanceState", + "id": "def-common.LatestAlertInstanceStateSchema", "type": "Type", "tags": [], - "label": "AlertInstanceState", + "label": "LatestAlertInstanceStateSchema", "description": [], "signature": [ - "{ [x: string]: unknown; }" + "{ [x: string]: any; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.LastScheduledActions", + "id": "def-common.LatestLastScheduledActionsSchema", "type": "Type", "tags": [], - "label": "LastScheduledActions", + "label": "LatestLastScheduledActionsSchema", "description": [], "signature": [ - "{ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }" + "{ readonly actions?: Record> | undefined; readonly subgroup?: string | undefined; readonly date: string; readonly group: string; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.RawAlertInstance", + "id": "def-common.LatestRawAlertInstanceSchema", "type": "Type", "tags": [], - "label": "RawAlertInstance", + "label": "LatestRawAlertInstanceSchema", "description": [], "signature": [ - "{ state?: { [x: string]: unknown; } | undefined; meta?: { lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; } | undefined; }" + "{ 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; } & {}> | undefined; readonly state?: Record | undefined; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.RuleTaskParams", + "id": "def-common.LatestTaskStateSchema", "type": "Type", "tags": [], - "label": "RuleTaskParams", + "label": "LatestTaskStateSchema", "description": [], "signature": [ - "{ alertId: string; } & { spaceId?: string | undefined; }" + "{ 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; } & {}> | 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; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; readonly previousStartedAt?: string | null | undefined; readonly summaryActions?: Record> | undefined; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.RuleTaskState", + "id": "def-common.LatestThrottledActionSchema", "type": "Type", "tags": [], - "label": "RuleTaskState", + "label": "LatestThrottledActionSchema", "description": [], "signature": [ - "{ alertTypeState?: { [x: string]: unknown; } | undefined; alertInstances?: { [x: string]: { state?: { [x: string]: unknown; } | undefined; meta?: { lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; } | undefined; }; } | undefined; alertRecoveredInstances?: { [x: string]: { state?: { [x: string]: unknown; } | undefined; meta?: { lastScheduledActions?: ({ subgroup?: string | undefined; } & { group: string; date: Date; } & { actions?: { [x: string]: { date: Date; }; } | undefined; }) | undefined; flappingHistory?: boolean[] | undefined; flapping?: boolean | undefined; maintenanceWindowIds?: string[] | undefined; pendingRecoveredCount?: number | undefined; uuid?: string | undefined; } | undefined; }; } | undefined; previousStartedAt?: Date | null | undefined; summaryActions?: { [x: string]: { date: Date; }; } | undefined; }" + "{ [x: string]: Readonly<{} & { date: string; }>; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.ThrottledActions", + "id": "def-common.MutableLatestAlertInstanceMetaSchema", "type": "Type", "tags": [], - "label": "ThrottledActions", + "label": "MutableLatestAlertInstanceMetaSchema", "description": [], "signature": [ - "{ [x: string]: { date: Date; }; }" + "{ uuid?: Mutable; lastScheduledActions?: Mutable> | undefined; subgroup?: string | undefined; } & { date: string; group: string; }> | undefined>; flappingHistory?: Mutable; flapping?: Mutable; maintenanceWindowIds?: Mutable; pendingRecoveredCount?: Mutable; }" ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.MutableLatestTaskStateSchema", + "type": "Type", + "tags": [], + "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; } & {}> | 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; } & {}> | 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, + "trackAdoption": false, + "initialIsOpen": false + }, + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.RuleTaskParams", + "type": "Type", + "tags": [], + "label": "RuleTaskParams", + "description": [], + "signature": [ + "{ alertId: string; } & { spaceId?: string | undefined; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", "deprecated": false, "trackAdoption": false, "initialIsOpen": false @@ -253,78 +283,78 @@ "objects": [ { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.DateFromString", + "id": "def-common.emptyState", "type": "Object", "tags": [], - "label": "DateFromString", + "label": "emptyState", "description": [], - "signature": [ - "Type", - "" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/date_from_string.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, - "initialIsOpen": false - }, - { - "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.rawAlertInstance", - "type": "Object", - "tags": [], - "label": "rawAlertInstance", - "description": [], - "signature": [ - "PartialC", - "<{ state: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; meta: ", - "PartialC", - "<{ lastScheduledActions: ", - "IntersectionC", - "<[", - "PartialC", - "<{ subgroup: ", - "StringC", - "; }>, ", - "TypeC", - "<{ group: ", - "StringC", - "; date: ", - "Type", - "; }>, ", - "PartialC", - "<{ actions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>]>; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; maintenanceWindowIds: ", - "ArrayC", - "<", - "StringC", - ">; pendingRecoveredCount: ", - "NumberC", - "; uuid: ", - "StringC", - "; }>; }>" + "children": [ + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.emptyState.alertTypeState", + "type": "Object", + "tags": [], + "label": "alertTypeState", + "description": [], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [] + }, + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.emptyState.alertInstances", + "type": "Object", + "tags": [], + "label": "alertInstances", + "description": [], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [] + }, + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.emptyState.alertRecoveredInstances", + "type": "Object", + "tags": [], + "label": "alertRecoveredInstances", + "description": [], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [] + }, + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.emptyState.previousStartedAt", + "type": "Uncategorized", + "tags": [], + "label": "previousStartedAt", + "description": [], + "signature": [ + "null" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false + }, + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.emptyState.summaryActions", + "type": "Object", + "tags": [], + "label": "summaryActions", + "description": [], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false, + "children": [] + } ], - "path": "x-pack/packages/kbn-alerting-state-types/src/alert_instance.ts", - "deprecated": false, - "trackAdoption": false, "initialIsOpen": false }, { @@ -353,138 +383,78 @@ }, { "parentPluginId": "@kbn/alerting-state-types", - "id": "def-common.ruleStateSchema", + "id": "def-common.stateSchemaByVersion", "type": "Object", "tags": [], - "label": "ruleStateSchema", + "label": "stateSchemaByVersion", "description": [], - "signature": [ - "PartialC", - "<{ alertTypeState: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; alertInstances: ", - "RecordC", - "<", - "StringC", - ", ", - "PartialC", - "<{ state: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; meta: ", - "PartialC", - "<{ lastScheduledActions: ", - "IntersectionC", - "<[", - "PartialC", - "<{ subgroup: ", - "StringC", - "; }>, ", - "TypeC", - "<{ group: ", - "StringC", - "; date: ", - "Type", - "; }>, ", - "PartialC", - "<{ actions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>]>; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; maintenanceWindowIds: ", - "ArrayC", - "<", - "StringC", - ">; pendingRecoveredCount: ", - "NumberC", - "; uuid: ", - "StringC", - "; }>; }>>; alertRecoveredInstances: ", - "RecordC", - "<", - "StringC", - ", ", - "PartialC", - "<{ state: ", - "RecordC", - "<", - "StringC", - ", ", - "UnknownC", - ">; meta: ", - "PartialC", - "<{ lastScheduledActions: ", - "IntersectionC", - "<[", - "PartialC", - "<{ subgroup: ", - "StringC", - "; }>, ", - "TypeC", - "<{ group: ", - "StringC", - "; date: ", - "Type", - "; }>, ", - "PartialC", - "<{ actions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>]>; flappingHistory: ", - "ArrayC", - "<", - "BooleanC", - ">; flapping: ", - "BooleanC", - "; maintenanceWindowIds: ", - "ArrayC", - "<", - "StringC", - ">; pendingRecoveredCount: ", - "NumberC", - "; uuid: ", - "StringC", - "; }>; }>>; previousStartedAt: ", - "UnionC", - "<[", - "NullC", - ", ", - "Type", - "]>; summaryActions: ", - "RecordC", - "<", - "StringC", - ", ", - "TypeC", - "<{ date: ", - "Type", - "; }>>; }>" - ], - "path": "x-pack/packages/kbn-alerting-state-types/src/rule_task_instance.ts", + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", "deprecated": false, "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/alerting-state-types", + "id": "def-common.stateSchemaByVersion.1", + "type": "Object", + "tags": [], + "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; } & {}> | 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; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined; previousStartedAt?: string | null | undefined; summaryActions?: Record> | undefined; } & {}>; schema: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.ObjectType", + "text": "ObjectType" + }, + "<{ alertTypeState: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + " | undefined>; alertInstances: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "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; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; alertRecoveredInstances: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "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; } & {}> | undefined; state?: Record | undefined; } & {}>> | undefined>; previousStartedAt: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "; summaryActions: ", + { + "pluginId": "@kbn/config-schema", + "scope": "common", + "docId": "kibKbnConfigSchemaPluginApi", + "section": "def-common.Type", + "text": "Type" + }, + "> | undefined>; }>; }" + ], + "path": "x-pack/packages/kbn-alerting-state-types/src/task_state/index.ts", + "deprecated": false, + "trackAdoption": false + } + ], "initialIsOpen": false } ] diff --git a/api_docs/kbn_alerting_state_types.mdx b/api_docs/kbn_alerting_state_types.mdx index 364e1880c198f..632298cc660d8 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerting-state-types'] --- import kbnAlertingStateTypesObj from './kbn_alerting_state_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 | |-------------------|-----------|------------------------|-----------------| -| 16 | 0 | 15 | 0 | +| 23 | 0 | 22 | 0 | ## Common diff --git a/api_docs/kbn_alerts_as_data_utils.devdocs.json b/api_docs/kbn_alerts_as_data_utils.devdocs.json index 01bc8dd24d62c..2d2e9c678ef98 100644 --- a/api_docs/kbn_alerts_as_data_utils.devdocs.json +++ b/api_docs/kbn_alerts_as_data_utils.devdocs.json @@ -19,6 +19,54 @@ "common": { "classes": [], "functions": [ + { + "parentPluginId": "@kbn/alerts-as-data-utils", + "id": "def-common.buildAlertFieldsRequest", + "type": "Function", + "tags": [], + "label": "buildAlertFieldsRequest", + "description": [], + "signature": [ + "(fields: string[], excludeEcsData?: boolean | undefined) => { format?: string | undefined; field: string; include_unmapped: boolean; }[]" + ], + "path": "packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "@kbn/alerts-as-data-utils", + "id": "def-common.buildAlertFieldsRequest.$1", + "type": "Array", + "tags": [], + "label": "fields", + "description": [], + "signature": [ + "string[]" + ], + "path": "packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "@kbn/alerts-as-data-utils", + "id": "def-common.buildAlertFieldsRequest.$2", + "type": "CompoundType", + "tags": [], + "label": "excludeEcsData", + "description": [], + "signature": [ + "boolean | undefined" + ], + "path": "packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": false + } + ], + "returnComment": [], + "initialIsOpen": false + }, { "parentPluginId": "@kbn/alerts-as-data-utils", "id": "def-common.createSchemaFromFieldMap", @@ -170,6 +218,21 @@ "trackAdoption": false, "initialIsOpen": false }, + { + "parentPluginId": "@kbn/alerts-as-data-utils", + "id": "def-common.ALERT_EVENTS_FIELDS", + "type": "Array", + "tags": [], + "label": "ALERT_EVENTS_FIELDS", + "description": [], + "signature": [ + "string[]" + ], + "path": "packages/kbn-alerts-as-data-utils/src/search/security/fields.ts", + "deprecated": false, + "trackAdoption": false, + "initialIsOpen": false + }, { "parentPluginId": "@kbn/alerts-as-data-utils", "id": "def-common.AlertFieldMap", diff --git a/api_docs/kbn_alerts_as_data_utils.mdx b/api_docs/kbn_alerts_as_data_utils.mdx index d631150c0a90f..86825c0f7704d 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/alerts-as-data-utils'] --- import kbnAlertsAsDataUtilsObj from './kbn_alerts_as_data_utils.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 | |-------------------|-----------|------------------------|-----------------| -| 25 | 0 | 25 | 0 | +| 29 | 0 | 29 | 0 | ## Common diff --git a/api_docs/kbn_alerts_ui_shared.mdx b/api_docs/kbn_alerts_ui_shared.mdx index f6099e3a94a3a..827735cc565d1 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: 2023-08-29 +date: 2023-08-30 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 ecef44beb6612..ced53575bf8fc 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics'] --- import kbnAnalyticsObj from './kbn_analytics.devdocs.json'; diff --git a/api_docs/kbn_analytics_client.mdx b/api_docs/kbn_analytics_client.mdx index fa2f5ee2548fd..547a1739a6022 100644 --- a/api_docs/kbn_analytics_client.mdx +++ b/api_docs/kbn_analytics_client.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-client title: "@kbn/analytics-client" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-client plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-client'] --- import kbnAnalyticsClientObj from './kbn_analytics_client.devdocs.json'; diff --git a/api_docs/kbn_analytics_shippers_elastic_v3_browser.mdx b/api_docs/kbn_analytics_shippers_elastic_v3_browser.mdx index 992023681a5b7..f9eaede8c22c6 100644 --- a/api_docs/kbn_analytics_shippers_elastic_v3_browser.mdx +++ b/api_docs/kbn_analytics_shippers_elastic_v3_browser.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-shippers-elastic-v3-browser title: "@kbn/analytics-shippers-elastic-v3-browser" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-shippers-elastic-v3-browser plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-shippers-elastic-v3-browser'] --- import kbnAnalyticsShippersElasticV3BrowserObj from './kbn_analytics_shippers_elastic_v3_browser.devdocs.json'; diff --git a/api_docs/kbn_analytics_shippers_elastic_v3_common.mdx b/api_docs/kbn_analytics_shippers_elastic_v3_common.mdx index d469e52483593..a6afc26968539 100644 --- a/api_docs/kbn_analytics_shippers_elastic_v3_common.mdx +++ b/api_docs/kbn_analytics_shippers_elastic_v3_common.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-shippers-elastic-v3-common title: "@kbn/analytics-shippers-elastic-v3-common" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-shippers-elastic-v3-common plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-shippers-elastic-v3-common'] --- import kbnAnalyticsShippersElasticV3CommonObj from './kbn_analytics_shippers_elastic_v3_common.devdocs.json'; diff --git a/api_docs/kbn_analytics_shippers_elastic_v3_server.mdx b/api_docs/kbn_analytics_shippers_elastic_v3_server.mdx index fe0c82020289a..0fcc4e968b44b 100644 --- a/api_docs/kbn_analytics_shippers_elastic_v3_server.mdx +++ b/api_docs/kbn_analytics_shippers_elastic_v3_server.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-shippers-elastic-v3-server title: "@kbn/analytics-shippers-elastic-v3-server" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-shippers-elastic-v3-server plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-shippers-elastic-v3-server'] --- import kbnAnalyticsShippersElasticV3ServerObj from './kbn_analytics_shippers_elastic_v3_server.devdocs.json'; diff --git a/api_docs/kbn_analytics_shippers_fullstory.mdx b/api_docs/kbn_analytics_shippers_fullstory.mdx index 29577b4aa6140..f0fb0648c61bf 100644 --- a/api_docs/kbn_analytics_shippers_fullstory.mdx +++ b/api_docs/kbn_analytics_shippers_fullstory.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-shippers-fullstory title: "@kbn/analytics-shippers-fullstory" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-shippers-fullstory plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-shippers-fullstory'] --- import kbnAnalyticsShippersFullstoryObj from './kbn_analytics_shippers_fullstory.devdocs.json'; diff --git a/api_docs/kbn_analytics_shippers_gainsight.mdx b/api_docs/kbn_analytics_shippers_gainsight.mdx index c495acdb88da5..88b37be8cab0a 100644 --- a/api_docs/kbn_analytics_shippers_gainsight.mdx +++ b/api_docs/kbn_analytics_shippers_gainsight.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-analytics-shippers-gainsight title: "@kbn/analytics-shippers-gainsight" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/analytics-shippers-gainsight plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/analytics-shippers-gainsight'] --- import kbnAnalyticsShippersGainsightObj from './kbn_analytics_shippers_gainsight.devdocs.json'; diff --git a/api_docs/kbn_apm_config_loader.mdx b/api_docs/kbn_apm_config_loader.mdx index ddb75b94a1d03..f3c937cb90549 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: 2023-08-29 +date: 2023-08-30 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_synthtrace.mdx b/api_docs/kbn_apm_synthtrace.mdx index feaecf2c009a5..1917674f243ea 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: 2023-08-29 +date: 2023-08-30 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 0b1c54700b357..4fdddfe0b9195 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: 2023-08-29 +date: 2023-08-30 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_utils.mdx b/api_docs/kbn_apm_utils.mdx index 30662ff02b580..2bef698cec05e 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/apm-utils'] --- import kbnApmUtilsObj from './kbn_apm_utils.devdocs.json'; diff --git a/api_docs/kbn_axe_config.mdx b/api_docs/kbn_axe_config.mdx index c8d93573025a8..58dd0feffa4fd 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/axe-config'] --- import kbnAxeConfigObj from './kbn_axe_config.devdocs.json'; diff --git a/api_docs/kbn_cases_components.mdx b/api_docs/kbn_cases_components.mdx index 03fe88c6c2db0..afac3cf46fcb4 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: 2023-08-29 +date: 2023-08-30 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 a1c1fd44d27b8..a2f0e4d3c61de 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: 2023-08-29 +date: 2023-08-30 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 717ee4f9d9bda..6bb1d95149421 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: 2023-08-29 +date: 2023-08-30 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 ec7b964886ed3..39de8db83f12a 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: 2023-08-29 +date: 2023-08-30 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 1fa4cea3f980d..a89121201a8ee 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: 2023-08-29 +date: 2023-08-30 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 bf0a79fc42361..33263669a1311 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: 2023-08-29 +date: 2023-08-30 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 b831fb8a168bf..42142d767be48 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: 2023-08-29 +date: 2023-08-30 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 5cae7304d6845..ad4dd39236100 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: 2023-08-29 +date: 2023-08-30 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 7b3670e6fde6c..0ba3b605e5e2e 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/code-editor'] --- import kbnCodeEditorObj from './kbn_code_editor.devdocs.json'; diff --git a/api_docs/kbn_code_editor_mocks.mdx b/api_docs/kbn_code_editor_mocks.mdx index 883e7b41fdf2b..fcfbc3852174c 100644 --- a/api_docs/kbn_code_editor_mocks.mdx +++ b/api_docs/kbn_code_editor_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-code-editor-mocks title: "@kbn/code-editor-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/code-editor-mocks plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/code-editor-mocks'] --- import kbnCodeEditorMocksObj from './kbn_code_editor_mocks.devdocs.json'; diff --git a/api_docs/kbn_coloring.mdx b/api_docs/kbn_coloring.mdx index e145f92192da3..5bb0af7d0d94a 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: 2023-08-29 +date: 2023-08-30 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 49ccc8f40a321..7784240af6a27 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: 2023-08-29 +date: 2023-08-30 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 857ac58bf99a5..81c13f18491d4 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/config-mocks'] --- import kbnConfigMocksObj from './kbn_config_mocks.devdocs.json'; diff --git a/api_docs/kbn_config_schema.mdx b/api_docs/kbn_config_schema.mdx index 0a55f16979007..9f828fe626a69 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/config-schema'] --- import kbnConfigSchemaObj from './kbn_config_schema.devdocs.json'; diff --git a/api_docs/kbn_content_management_content_editor.mdx b/api_docs/kbn_content_management_content_editor.mdx index 6656664fcefff..162c722855425 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: 2023-08-29 +date: 2023-08-30 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_tabbed_table_list_view.mdx b/api_docs/kbn_content_management_tabbed_table_list_view.mdx index ec829c7248be6..61f5dc72fff92 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: 2023-08-29 +date: 2023-08-30 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 da0372ad77175..64e3743a76924 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: 2023-08-29 +date: 2023-08-30 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_table.mdx b/api_docs/kbn_content_management_table_list_view_table.mdx index f4f02e0699ed3..482b1427a177b 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/content-management-table-list-view-table'] --- import kbnContentManagementTableListViewTableObj from './kbn_content_management_table_list_view_table.devdocs.json'; diff --git a/api_docs/kbn_content_management_utils.mdx b/api_docs/kbn_content_management_utils.mdx index 60e161f3b7873..ba567bbed55d4 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: 2023-08-29 +date: 2023-08-30 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.mdx b/api_docs/kbn_core_analytics_browser.mdx index 0f19d1757debe..f7b34a65f53c4 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: 2023-08-29 +date: 2023-08-30 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 65ae7d9d5c525..43f979cdefd25 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: 2023-08-29 +date: 2023-08-30 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 fd06213dc58c4..33f7d58f09193 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: 2023-08-29 +date: 2023-08-30 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.mdx b/api_docs/kbn_core_analytics_server.mdx index 273d35d08fe5b..07c7bc4cf5cf2 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: 2023-08-29 +date: 2023-08-30 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 50dfec92d8cc8..a062886648c10 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: 2023-08-29 +date: 2023-08-30 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 2796d4b9348a5..c3a1bb26856cf 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: 2023-08-29 +date: 2023-08-30 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 5343660f95030..00c6aed2d05bc 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: 2023-08-29 +date: 2023-08-30 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 514788b96f802..f03f2a74f7149 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: 2023-08-29 +date: 2023-08-30 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 bb65de3706a63..a90a3e95a3afd 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: 2023-08-29 +date: 2023-08-30 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 771ddee3d32b2..78d849f906340 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: 2023-08-29 +date: 2023-08-30 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 f41a779f11ecf..3f4265821fa68 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: 2023-08-29 +date: 2023-08-30 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 877911f915135..5c97e61bfecb9 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: 2023-08-29 +date: 2023-08-30 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 02b9fba56b31b..163d111556b24 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: 2023-08-29 +date: 2023-08-30 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 f0146e929be94..61ac9a427eac9 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: 2023-08-29 +date: 2023-08-30 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 df575fdd3c903..890b6862193fb 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: 2023-08-29 +date: 2023-08-30 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 92f94a60dd217..eada8baab9920 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: 2023-08-29 +date: 2023-08-30 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 86b23da543b7b..97ad6c0d87177 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: 2023-08-29 +date: 2023-08-30 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 e8bfa3479d1dd..27621de965eab 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: 2023-08-29 +date: 2023-08-30 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 51ae5d342d263..18aee2f9b6d36 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: 2023-08-29 +date: 2023-08-30 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 2b977caea7b35..837a675489aa1 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: 2023-08-29 +date: 2023-08-30 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 ea7d5217cbabc..b67855169b206 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: 2023-08-29 +date: 2023-08-30 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 f450451982d27..19646252a7fda 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: 2023-08-29 +date: 2023-08-30 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 4c0e87652249f..a4f7d23f86952 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: 2023-08-29 +date: 2023-08-30 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 08372aed1a78e..fb382185ca426 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: 2023-08-29 +date: 2023-08-30 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 58a201eecff11..5356b41d7f0d7 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: 2023-08-29 +date: 2023-08-30 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 fbbfd8d90c3b1..f3939831825dd 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: 2023-08-29 +date: 2023-08-30 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 563028256c470..3ff79583ea49d 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: 2023-08-29 +date: 2023-08-30 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 6f4bd9a5f598e..79890b02eee00 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: 2023-08-29 +date: 2023-08-30 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 c8f70dd6eaf64..1335711914957 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: 2023-08-29 +date: 2023-08-30 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 058a0ff90fb30..1fad5ca832779 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: 2023-08-29 +date: 2023-08-30 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 9dea0bbb5180e..1d5e4cc528786 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: 2023-08-29 +date: 2023-08-30 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 8bef97501ba14..2d5125585f38a 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: 2023-08-29 +date: 2023-08-30 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 86c0fd24d3ef5..4772aff3644cf 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: 2023-08-29 +date: 2023-08-30 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 6d63989ec8b28..751ba271dd9de 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: 2023-08-29 +date: 2023-08-30 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 c860d1ad9e33a..bba8917810dc9 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: 2023-08-29 +date: 2023-08-30 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 985ade7f9df50..eca327cc60cd8 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: 2023-08-29 +date: 2023-08-30 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 7a5b1cd2bc9fe..1ef39e035f31c 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: 2023-08-29 +date: 2023-08-30 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 3d86a5c005edb..e6f89e797452c 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: 2023-08-29 +date: 2023-08-30 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 1bcbe10f847e2..91af9fa9d2ce2 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: 2023-08-29 +date: 2023-08-30 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 e6c84e04ff104..80df52b04c266 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: 2023-08-29 +date: 2023-08-30 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 25a997e9680ed..a82b64252599d 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: 2023-08-29 +date: 2023-08-30 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 d69c2d624d041..0d988e3a77dff 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: 2023-08-29 +date: 2023-08-30 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 6ec97363c7ac6..039c933d00ddc 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: 2023-08-29 +date: 2023-08-30 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 7a35b078c5e1f..c30eef7e8000c 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: 2023-08-29 +date: 2023-08-30 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 995420e9c5e99..38a3247bd5f95 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: 2023-08-29 +date: 2023-08-30 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 b498071c37156..bee0e3ccd3ee1 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: 2023-08-29 +date: 2023-08-30 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 66af48d6ebf65..be2a949f9fcec 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: 2023-08-29 +date: 2023-08-30 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 5f552f25a35b9..d602ee6be216e 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: 2023-08-29 +date: 2023-08-30 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 ea588dfe4b628..3d9ed19ef8ff9 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: 2023-08-29 +date: 2023-08-30 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 a737d28921aa6..b1837e27e1acd 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: 2023-08-29 +date: 2023-08-30 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 c595b2bf4aee1..02a32a586e67f 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: 2023-08-29 +date: 2023-08-30 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 e73c5aea252be..18bef14af81b1 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: 2023-08-29 +date: 2023-08-30 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 536185db025bf..1409bdbf871c3 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: 2023-08-29 +date: 2023-08-30 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 039183d8996a3..e2e579826a755 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: 2023-08-29 +date: 2023-08-30 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 297c976c40a97..840286c6d831f 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: 2023-08-29 +date: 2023-08-30 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 b69d9803864b9..0025913f6b052 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: 2023-08-29 +date: 2023-08-30 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 673a4b56a678d..54d07410ce64f 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: 2023-08-29 +date: 2023-08-30 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 67af69942d1d0..b44e23e5ec464 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: 2023-08-29 +date: 2023-08-30 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 82b2d27bb43f7..058efe610b169 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: 2023-08-29 +date: 2023-08-30 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 e9c22d6a04219..4c624d54e4570 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: 2023-08-29 +date: 2023-08-30 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 ddb19fe2acda8..067e43fad15e3 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: 2023-08-29 +date: 2023-08-30 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 6e50dfb1e04fc..f4e868e1ee4c0 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: 2023-08-29 +date: 2023-08-30 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 b98cd8e966b79..b997b8e4bbad7 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: 2023-08-29 +date: 2023-08-30 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 dac4ffde89734..896494db34587 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: 2023-08-29 +date: 2023-08-30 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 863aff53a998f..a9bcaa52877c2 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: 2023-08-29 +date: 2023-08-30 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 259b12114cfdf..2f665fbd7065b 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: 2023-08-29 +date: 2023-08-30 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 0ee604bd7228d..da490b34c25c4 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: 2023-08-29 +date: 2023-08-30 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 9d0dd58feda1d..0b06d7585f0a9 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: 2023-08-29 +date: 2023-08-30 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 4cd12d8e150cd..201e4d07bfae0 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: 2023-08-29 +date: 2023-08-30 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.mdx b/api_docs/kbn_core_http_server.mdx index 79d3d870af63e..bbdc203d789aa 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: 2023-08-29 +date: 2023-08-30 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 f7b2e4cfa3a12..ceb61be3457e0 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: 2023-08-29 +date: 2023-08-30 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 ae1e34308bd69..b585797984941 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: 2023-08-29 +date: 2023-08-30 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 cb8e8a6f86d1f..611703b242073 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: 2023-08-29 +date: 2023-08-30 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 100ae9f06a288..d4e00c4e6444c 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: 2023-08-29 +date: 2023-08-30 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 167dbaa327158..19de244f6eb96 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: 2023-08-29 +date: 2023-08-30 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 ce0a40721a1b1..77f3a8f9544aa 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: 2023-08-29 +date: 2023-08-30 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 173477df8cba2..1ccae2564f1bc 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: 2023-08-29 +date: 2023-08-30 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 f5ebcf356933e..1597ff61bc70b 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: 2023-08-29 +date: 2023-08-30 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 30bd8215d0f93..8c3d1d31fb523 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: 2023-08-29 +date: 2023-08-30 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 eaf7505c170a0..253857788b4de 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: 2023-08-29 +date: 2023-08-30 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 1076d85474f01..8ba57d716b9e4 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: 2023-08-29 +date: 2023-08-30 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 45d7b6cd01d36..9b5b2cb7e16d6 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: 2023-08-29 +date: 2023-08-30 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 b6a4f8983cc0a..74309c7982f57 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: 2023-08-29 +date: 2023-08-30 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 52d3bc6e3141d..dd299d7e0abeb 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: 2023-08-29 +date: 2023-08-30 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 20f895dc34886..2d6d699b14e71 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: 2023-08-29 +date: 2023-08-30 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 dcf3e6e39b6d2..aa8ecd13575bf 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: 2023-08-29 +date: 2023-08-30 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 46e71a104d3de..63cb2facadcdf 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: 2023-08-29 +date: 2023-08-30 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 60de046e3cc02..37e414942d925 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: 2023-08-29 +date: 2023-08-30 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 b1f39308253e7..e3882b835eaa0 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: 2023-08-29 +date: 2023-08-30 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 5e8b3e5a62314..6b3b1233c17f1 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: 2023-08-29 +date: 2023-08-30 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 8a3de8307b1f5..824d33e5c11c9 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: 2023-08-29 +date: 2023-08-30 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 ed3f47b751106..52c219ec35ba6 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: 2023-08-29 +date: 2023-08-30 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 b1fe1cff8e149..bc942a4347ff3 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: 2023-08-29 +date: 2023-08-30 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 612250f053548..fd80cad28f953 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: 2023-08-29 +date: 2023-08-30 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 60b3d9c3b391b..a3448719bac4c 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: 2023-08-29 +date: 2023-08-30 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 8e5ea4c19615e..2695896bce7c2 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: 2023-08-29 +date: 2023-08-30 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 b79735594ffb8..7d9fa45df62d5 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: 2023-08-29 +date: 2023-08-30 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 4ebc8d71ba5a2..81179a3fa71c7 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: 2023-08-29 +date: 2023-08-30 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 2e1cd32fcb249..a957acebd0927 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: 2023-08-29 +date: 2023-08-30 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 37061c402bef7..8d851d2b87894 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: 2023-08-29 +date: 2023-08-30 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 84ae73ec14b4b..9b31628605800 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: 2023-08-29 +date: 2023-08-30 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 b59bbb842eca9..3c693b5b789f2 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: 2023-08-29 +date: 2023-08-30 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 62aec73fc0457..f471fc8caacef 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: 2023-08-29 +date: 2023-08-30 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 2b6fa411a1b72..f386dd860dfc1 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: 2023-08-29 +date: 2023-08-30 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 35eadeade734d..5e2618dd558dc 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: 2023-08-29 +date: 2023-08-30 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 d2c80db9d0da8..e9f8d4fc3e7d8 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: 2023-08-29 +date: 2023-08-30 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_server.mdx b/api_docs/kbn_core_plugins_server.mdx index 72fa61e3eeab9..1f563cd04f705 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: 2023-08-29 +date: 2023-08-30 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 e97a77130be9d..b29d4a5b14795 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: 2023-08-29 +date: 2023-08-30 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 b649bec5321c4..85036669347ce 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: 2023-08-29 +date: 2023-08-30 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 677715f149a8a..a02c8cdc5142c 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: 2023-08-29 +date: 2023-08-30 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 e8cc53127f6cc..52b0eab0247a2 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: 2023-08-29 +date: 2023-08-30 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 688f5fa567503..e09bb25cc2aef 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: 2023-08-29 +date: 2023-08-30 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 f1331870c7f73..a5e804e4c2847 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: 2023-08-29 +date: 2023-08-30 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 311ff162c0d0b..4c574de9b12c8 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: 2023-08-29 +date: 2023-08-30 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 eb583fc7b7d80..05dc1624fccb8 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: 2023-08-29 +date: 2023-08-30 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 227d0db50d4b0..1e33b34da4226 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: 2023-08-29 +date: 2023-08-30 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 2e5d85dcd548c..f4aea6acd77ca 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: 2023-08-29 +date: 2023-08-30 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 b183c5413a5a0..b2f2fad30610d 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: 2023-08-29 +date: 2023-08-30 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 dcd89040b2edf..3555744aac429 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: 2023-08-29 +date: 2023-08-30 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 7863ce545e938..70661f908185e 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: 2023-08-29 +date: 2023-08-30 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 de37144affb42..72db04ed33555 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: 2023-08-29 +date: 2023-08-30 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 5c1d1bd8b2fb7..73f095dbcbd46 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: 2023-08-29 +date: 2023-08-30 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 b254e4c33dd60..01b62c6719389 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: 2023-08-29 +date: 2023-08-30 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 f085a159d2dd3..fc2f514b2109a 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: 2023-08-29 +date: 2023-08-30 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 1ae599546797c..eeebd4c054b50 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: 2023-08-29 +date: 2023-08-30 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 6e2c6c18a2244..57036f677036a 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: 2023-08-29 +date: 2023-08-30 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 b2596036f146f..5bce63f28e9a3 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: 2023-08-29 +date: 2023-08-30 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 2a128edbd4123..e7ff8510480e8 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: 2023-08-29 +date: 2023-08-30 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 961ee502dba74..ae35f1bc0063b 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: 2023-08-29 +date: 2023-08-30 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 1e8fde889c422..c469391d23715 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: 2023-08-29 +date: 2023-08-30 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 b9694e3000853..873613da3a085 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: 2023-08-29 +date: 2023-08-30 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_status_common.mdx b/api_docs/kbn_core_status_common.mdx index 6f9dfeb432340..fe4703ce7ffd5 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: 2023-08-29 +date: 2023-08-30 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 0b254f28a4e39..6b11d84ec13e0 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: 2023-08-29 +date: 2023-08-30 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 33b50a3171712..f8c9cffa10b68 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: 2023-08-29 +date: 2023-08-30 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 d1618d4918996..6b0056f466660 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: 2023-08-29 +date: 2023-08-30 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 758aa4c4bc691..8a77f8a366b2b 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: 2023-08-29 +date: 2023-08-30 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 84c94392b87a5..fcf1b4436c1d8 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: 2023-08-29 +date: 2023-08-30 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 8ce8eb614334c..5ac00af34b317 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: 2023-08-29 +date: 2023-08-30 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 9b09ce92e443b..14fdaaf3d3da3 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: 2023-08-29 +date: 2023-08-30 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_so_type_serializer.mdx b/api_docs/kbn_core_test_helpers_so_type_serializer.mdx index 7834a214aa798..84dbf3a9a45d8 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: 2023-08-29 +date: 2023-08-30 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 55d2d369ac626..5544b4ea23def 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: 2023-08-29 +date: 2023-08-30 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 9bbbf78c7f64f..7a064481dd5fd 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: 2023-08-29 +date: 2023-08-30 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 9eea1301252db..1583825279249 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: 2023-08-29 +date: 2023-08-30 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 8d3a5287f8438..3a1e86ed00daa 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: 2023-08-29 +date: 2023-08-30 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 85f6df26b9788..9a539c92646c0 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: 2023-08-29 +date: 2023-08-30 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 03185781325d5..fbdddcda2839b 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: 2023-08-29 +date: 2023-08-30 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 d9212725166a6..36f9a371333b0 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: 2023-08-29 +date: 2023-08-30 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 140be2bd66784..007a24be1106c 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: 2023-08-29 +date: 2023-08-30 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 f77bcf74e7190..7f1fa79e8829d 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: 2023-08-29 +date: 2023-08-30 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 83103ed73dddc..3a201192720ea 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: 2023-08-29 +date: 2023-08-30 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 b1e5842cc38be..dd17617efe3fd 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: 2023-08-29 +date: 2023-08-30 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 68a5256f3d9ed..b81b67847d89d 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: 2023-08-29 +date: 2023-08-30 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 6ac2cfa27b5ff..d1a7181872920 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: 2023-08-29 +date: 2023-08-30 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_settings_server.mdx b/api_docs/kbn_core_user_settings_server.mdx index bcca65011f8e8..4ca55300461ba 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: 2023-08-29 +date: 2023-08-30 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_internal.mdx b/api_docs/kbn_core_user_settings_server_internal.mdx index 1a82d2fdfcd13..c74303fd97a03 100644 --- a/api_docs/kbn_core_user_settings_server_internal.mdx +++ b/api_docs/kbn_core_user_settings_server_internal.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-core-user-settings-server-internal title: "@kbn/core-user-settings-server-internal" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/core-user-settings-server-internal plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/core-user-settings-server-internal'] --- import kbnCoreUserSettingsServerInternalObj from './kbn_core_user_settings_server_internal.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 e0bab56d5c1db..3cd01896c8f1a 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: 2023-08-29 +date: 2023-08-30 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 efd2c9d43c394..a63bb7172b2ed 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: 2023-08-29 +date: 2023-08-30 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 f030b08f89ade..f1307ac2f2243 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/crypto-browser'] --- import kbnCryptoBrowserObj from './kbn_crypto_browser.devdocs.json'; diff --git a/api_docs/kbn_cypress_config.mdx b/api_docs/kbn_cypress_config.mdx index 12a99cec6f65f..60922df76977f 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/cypress-config'] --- import kbnCypressConfigObj from './kbn_cypress_config.devdocs.json'; diff --git a/api_docs/kbn_data_service.mdx b/api_docs/kbn_data_service.mdx index ee54819beba99..d0ac04f424aff 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/data-service'] --- import kbnDataServiceObj from './kbn_data_service.devdocs.json'; diff --git a/api_docs/kbn_datemath.mdx b/api_docs/kbn_datemath.mdx index 4efc8ace6cee1..b65feb591e6ee 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: 2023-08-29 +date: 2023-08-30 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 4f8ab53a1157d..16e6796927228 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: 2023-08-29 +date: 2023-08-30 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 a1eeb9eae6a23..a8271e80d33af 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-devtools'] --- import kbnDeeplinksDevtoolsObj from './kbn_deeplinks_devtools.devdocs.json'; diff --git a/api_docs/kbn_deeplinks_management.mdx b/api_docs/kbn_deeplinks_management.mdx index 9518e124a176f..a479b5702c32f 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: 2023-08-29 +date: 2023-08-30 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 b7650c5c5dd4a..3aaffc8567939 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: 2023-08-29 +date: 2023-08-30 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 dddc0b51d2f30..fa3eed6620e10 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: 2023-08-29 +date: 2023-08-30 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 eeb4a33a08856..93d123240087f 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/deeplinks-search'] --- import kbnDeeplinksSearchObj from './kbn_deeplinks_search.devdocs.json'; diff --git a/api_docs/kbn_default_nav_analytics.mdx b/api_docs/kbn_default_nav_analytics.mdx index 26dc3c42e6de3..89e66b01e23ad 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: 2023-08-29 +date: 2023-08-30 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 2944b490bc4b8..f24143eaf774a 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: 2023-08-29 +date: 2023-08-30 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 bfa83cfa31a60..c4a491ceea74f 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: 2023-08-29 +date: 2023-08-30 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 b2cf182a214a2..0e935519d8ab3 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: 2023-08-29 +date: 2023-08-30 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 959b1748c1f23..a80d8402936d7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/dev-cli-errors'] --- import kbnDevCliErrorsObj from './kbn_dev_cli_errors.devdocs.json'; diff --git a/api_docs/kbn_dev_cli_runner.mdx b/api_docs/kbn_dev_cli_runner.mdx index 8b3c4efad36cd..3fae78d37b5c9 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: 2023-08-29 +date: 2023-08-30 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 073bbfa04161e..01ffdd5d0c986 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: 2023-08-29 +date: 2023-08-30 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 522d693aee8f3..e8b7dc4ae393c 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: 2023-08-29 +date: 2023-08-30 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 e273816a2cf47..58f0de8caa035 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: 2023-08-29 +date: 2023-08-30 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 c1eddc858e8b6..f90735397a89e 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: 2023-08-29 +date: 2023-08-30 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 3f6406ba9e2ae..0839b15507fa7 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: 2023-08-29 +date: 2023-08-30 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 6fdf4e030dd1b..a13d04a840c29 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: 2023-08-29 +date: 2023-08-30 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 3c376439a4477..6716a27707992 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ebt-tools'] --- import kbnEbtToolsObj from './kbn_ebt_tools.devdocs.json'; diff --git a/api_docs/kbn_ecs.mdx b/api_docs/kbn_ecs.mdx index 09a939e46aa45..b2e7dfc0034cb 100644 --- a/api_docs/kbn_ecs.mdx +++ b/api_docs/kbn_ecs.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-ecs title: "@kbn/ecs" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/ecs plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ecs'] --- import kbnEcsObj from './kbn_ecs.devdocs.json'; diff --git a/api_docs/kbn_ecs_data_quality_dashboard.mdx b/api_docs/kbn_ecs_data_quality_dashboard.mdx index 9cc7dfefd9678..af313054dc80c 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ecs-data-quality-dashboard'] --- import kbnEcsDataQualityDashboardObj from './kbn_ecs_data_quality_dashboard.devdocs.json'; diff --git a/api_docs/kbn_elastic_assistant.mdx b/api_docs/kbn_elastic_assistant.mdx index 700fc56c4a12e..e1204d0a3c6d7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/elastic-assistant'] --- import kbnElasticAssistantObj from './kbn_elastic_assistant.devdocs.json'; diff --git a/api_docs/kbn_es.mdx b/api_docs/kbn_es.mdx index 30955056b2f47..eeb1285aaad17 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: 2023-08-29 +date: 2023-08-30 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 6be6d9223e19f..70edf31273ca7 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: 2023-08-29 +date: 2023-08-30 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 b46623ecdca94..cd0a1eff7ec70 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: 2023-08-29 +date: 2023-08-30 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 9eeb9eb239d6f..9447dab10530c 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: 2023-08-29 +date: 2023-08-30 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 c02c0e1b6eb54..ca891734ab44f 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: 2023-08-29 +date: 2023-08-30 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 6632351eb3699..38281ba8552cd 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/eslint-plugin-imports'] --- import kbnEslintPluginImportsObj from './kbn_eslint_plugin_imports.devdocs.json'; diff --git a/api_docs/kbn_event_annotation_common.mdx b/api_docs/kbn_event_annotation_common.mdx index 8b6adb20854b8..9f24ae230dfdb 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: 2023-08-29 +date: 2023-08-30 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 acf47db88e44a..2c39dc9fa099e 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: 2023-08-29 +date: 2023-08-30 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 f6d5e017e5ece..197447400f674 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: 2023-08-29 +date: 2023-08-30 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 f3c5be9d72749..8ff507863f327 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/field-types'] --- import kbnFieldTypesObj from './kbn_field_types.devdocs.json'; diff --git a/api_docs/kbn_find_used_node_modules.mdx b/api_docs/kbn_find_used_node_modules.mdx index 9b304e48ad970..2b4c63acfd3c8 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: 2023-08-29 +date: 2023-08-30 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_ftr_common_functional_services.mdx b/api_docs/kbn_ftr_common_functional_services.mdx index 6366a800e19ce..3669f915ba7c0 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: 2023-08-29 +date: 2023-08-30 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_generate.mdx b/api_docs/kbn_generate.mdx index d9df69c0e3591..5251635e58502 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: 2023-08-29 +date: 2023-08-30 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 4a9a08964a21b..84a4e024c2530 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: 2023-08-29 +date: 2023-08-30 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 edb0ef008da43..eb7d21d2d0ef2 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/generate-csv'] --- import kbnGenerateCsvObj from './kbn_generate_csv.devdocs.json'; diff --git a/api_docs/kbn_generate_csv_types.mdx b/api_docs/kbn_generate_csv_types.mdx index 1477071967337..cfc5613e66154 100644 --- a/api_docs/kbn_generate_csv_types.mdx +++ b/api_docs/kbn_generate_csv_types.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-generate-csv-types title: "@kbn/generate-csv-types" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/generate-csv-types plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/generate-csv-types'] --- import kbnGenerateCsvTypesObj from './kbn_generate_csv_types.devdocs.json'; diff --git a/api_docs/kbn_guided_onboarding.mdx b/api_docs/kbn_guided_onboarding.mdx index 8ac44ad4ac395..d70047d4fe591 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: 2023-08-29 +date: 2023-08-30 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 b5c9b0a4c7905..15e67855687ea 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: 2023-08-29 +date: 2023-08-30 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 8c5ee973427fa..c72930cef819d 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: 2023-08-29 +date: 2023-08-30 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 2d5301b748a32..26e64c88b8710 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: 2023-08-29 +date: 2023-08-30 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 0d2035b575cf9..ecfaa31f2bce2 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: 2023-08-29 +date: 2023-08-30 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 aa44a7339f2e1..fe9011529b3c8 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: 2023-08-29 +date: 2023-08-30 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 37af28638ba5f..4e60c6bb8b966 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: 2023-08-29 +date: 2023-08-30 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 1c4e9645f6cb8..e9a37f454a3e3 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: 2023-08-29 +date: 2023-08-30 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 d7d4ec86c975e..ecf5a712778d4 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/import-resolver'] --- import kbnImportResolverObj from './kbn_import_resolver.devdocs.json'; diff --git a/api_docs/kbn_infra_forge.mdx b/api_docs/kbn_infra_forge.mdx index 141e3bd5f5893..ebb610a469f45 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: 2023-08-29 +date: 2023-08-30 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 fc2149869e4ad..b25767f0e6a57 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/interpreter'] --- import kbnInterpreterObj from './kbn_interpreter.devdocs.json'; diff --git a/api_docs/kbn_io_ts_utils.devdocs.json b/api_docs/kbn_io_ts_utils.devdocs.json index 06b7c2f9c5137..76c85df71d2fb 100644 --- a/api_docs/kbn_io_ts_utils.devdocs.json +++ b/api_docs/kbn_io_ts_utils.devdocs.json @@ -228,14 +228,14 @@ " | ", "ParseableType", ") => ", + "StringType", + " | ", "Type", " | ", - "StringType", + "NumberType", " | ", "BooleanType", " | ", - "NumberType", - " | ", "RecordC", "<", "Mixed", diff --git a/api_docs/kbn_io_ts_utils.mdx b/api_docs/kbn_io_ts_utils.mdx index 2ef5fad37ec2f..c39582052610d 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/io-ts-utils'] --- import kbnIoTsUtilsObj from './kbn_io_ts_utils.devdocs.json'; diff --git a/api_docs/kbn_jest_serializers.mdx b/api_docs/kbn_jest_serializers.mdx index 17eb9593f193a..ccdf31564e18c 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: 2023-08-29 +date: 2023-08-30 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 298d1c91f18ca..78921c504710a 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: 2023-08-29 +date: 2023-08-30 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 f3f26735d6d43..68040f8bf8c34 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/json-ast'] --- import kbnJsonAstObj from './kbn_json_ast.devdocs.json'; diff --git a/api_docs/kbn_kibana_manifest_schema.mdx b/api_docs/kbn_kibana_manifest_schema.mdx index 50dc441905e96..835094233ff0e 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: 2023-08-29 +date: 2023-08-30 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 de335a8f1d70d..b4ed962016483 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: 2023-08-29 +date: 2023-08-30 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 c3d3f1dfab9f6..1c9bfb3fd4434 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/lens-embeddable-utils'] --- import kbnLensEmbeddableUtilsObj from './kbn_lens_embeddable_utils.devdocs.json'; diff --git a/api_docs/kbn_logging.mdx b/api_docs/kbn_logging.mdx index e10f9f15513ad..974e9e008349d 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: 2023-08-29 +date: 2023-08-30 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 9659851be9414..ad8137fe79e27 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/logging-mocks'] --- import kbnLoggingMocksObj from './kbn_logging_mocks.devdocs.json'; diff --git a/api_docs/kbn_managed_vscode_config.mdx b/api_docs/kbn_managed_vscode_config.mdx index 18ed8a93add58..7cda75d57dad8 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: 2023-08-29 +date: 2023-08-30 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 d4c7f326d8abd..477f3f5aaa4f3 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: 2023-08-29 +date: 2023-08-30 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_section_registry.mdx b/api_docs/kbn_management_settings_section_registry.mdx index 072feb8e3d7fc..4022c1906476d 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: 2023-08-29 +date: 2023-08-30 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_storybook_config.mdx b/api_docs/kbn_management_storybook_config.mdx index df5b2b135f70f..e85e3625204ec 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: 2023-08-29 +date: 2023-08-30 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.devdocs.json b/api_docs/kbn_mapbox_gl.devdocs.json index 5c5fb82b56b43..a719d22f94a26 100644 --- a/api_docs/kbn_mapbox_gl.devdocs.json +++ b/api_docs/kbn_mapbox_gl.devdocs.json @@ -9443,7 +9443,7 @@ "label": "MapEvent", "description": [], "signature": [ - "\"error\" | \"remove\" | \"data\" | \"render\" | \"rotate\" | \"resize\" | \"zoom\" | \"move\" | \"idle\" | \"mousedown\" | \"mouseup\" | \"mouseover\" | \"mousemove\" | \"click\" | \"dblclick\" | \"mouseenter\" | \"mouseleave\" | \"mouseout\" | \"contextmenu\" | \"wheel\" | \"touchstart\" | \"touchend\" | \"touchmove\" | \"touchcancel\" | \"movestart\" | \"moveend\" | \"dragstart\" | \"drag\" | \"dragend\" | \"zoomstart\" | \"zoomend\" | \"rotatestart\" | \"rotateend\" | \"pitchstart\" | \"pitch\" | \"pitchend\" | \"boxzoomstart\" | \"boxzoomend\" | \"boxzoomcancel\" | \"webglcontextlost\" | \"webglcontextrestored\" | \"load\" | \"styledata\" | \"sourcedata\" | \"dataloading\" | \"styledataloading\" | \"sourcedataloading\" | \"styleimagemissing\" | \"style.load\" | \"terrain\" | \"dataabort\" | \"sourcedataabort\"" + "\"error\" | \"remove\" | \"data\" | \"rotate\" | \"render\" | \"resize\" | \"zoom\" | \"move\" | \"idle\" | \"mousedown\" | \"mouseup\" | \"mouseover\" | \"mousemove\" | \"click\" | \"dblclick\" | \"mouseenter\" | \"mouseleave\" | \"mouseout\" | \"contextmenu\" | \"wheel\" | \"touchstart\" | \"touchend\" | \"touchmove\" | \"touchcancel\" | \"movestart\" | \"moveend\" | \"dragstart\" | \"drag\" | \"dragend\" | \"zoomstart\" | \"zoomend\" | \"rotatestart\" | \"rotateend\" | \"pitchstart\" | \"pitch\" | \"pitchend\" | \"boxzoomstart\" | \"boxzoomend\" | \"boxzoomcancel\" | \"webglcontextlost\" | \"webglcontextrestored\" | \"load\" | \"styledata\" | \"sourcedata\" | \"dataloading\" | \"styledataloading\" | \"sourcedataloading\" | \"styleimagemissing\" | \"style.load\" | \"terrain\" | \"dataabort\" | \"sourcedataabort\"" ], "path": "node_modules/maplibre-gl/dist/maplibre-gl.d.ts", "deprecated": false, diff --git a/api_docs/kbn_mapbox_gl.mdx b/api_docs/kbn_mapbox_gl.mdx index c27e4ee9909f3..c7fca180ee691 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: 2023-08-29 +date: 2023-08-30 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 752deb601de6b..3fda37db7acb4 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: 2023-08-29 +date: 2023-08-30 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 c72e0421d1744..5352239d43fab 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: 2023-08-29 +date: 2023-08-30 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 0310d80f4f4ee..476de2705811b 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: 2023-08-29 +date: 2023-08-30 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_category_validator.mdx b/api_docs/kbn_ml_category_validator.mdx index 12cea1e4fc52d..3cd8768ae37cc 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: 2023-08-29 +date: 2023-08-30 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_data_frame_analytics_utils.mdx b/api_docs/kbn_ml_data_frame_analytics_utils.mdx index e08dcf67b5b77..9c55e2bdd0429 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: 2023-08-29 +date: 2023-08-30 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 7e7eb6c824698..501f28e7fcdc8 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: 2023-08-29 +date: 2023-08-30 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 22be4828a09b4..abce3c4bf106d 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: 2023-08-29 +date: 2023-08-30 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 2cddfbacbe995..a8ed5c4c60804 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: 2023-08-29 +date: 2023-08-30 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 115d7f3f5aebb..4048fc6bdedc8 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: 2023-08-29 +date: 2023-08-30 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 bce3c119c7300..47a7ee82a53df 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: 2023-08-29 +date: 2023-08-30 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 10e9a37cf2a1d..56f006eab9b70 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: 2023-08-29 +date: 2023-08-30 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 c84cd32d693e5..36086977bb2f1 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: 2023-08-29 +date: 2023-08-30 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 b6632ced1864f..3d34560a288c0 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: 2023-08-29 +date: 2023-08-30 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 d2aa2d2e11369..5c5e222607edf 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: 2023-08-29 +date: 2023-08-30 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 865cb28ba68d7..b65d6f09fd95d 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: 2023-08-29 +date: 2023-08-30 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 0c7c2d69773df..644b82312c9e5 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: 2023-08-29 +date: 2023-08-30 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 c8b5a1f564921..c7ef85076610f 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: 2023-08-29 +date: 2023-08-30 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 d88fa51624c10..6a0e911bd4436 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: 2023-08-29 +date: 2023-08-30 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 334b5d977b445..91b25bf781fd0 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: 2023-08-29 +date: 2023-08-30 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 56bb547e1b02d..69f5bc6e57d83 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: 2023-08-29 +date: 2023-08-30 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 7f7db30ddc077..c543f5e678eb7 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: 2023-08-29 +date: 2023-08-30 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_trained_models_utils.mdx b/api_docs/kbn_ml_trained_models_utils.mdx index fa07e095326b3..9f15f8e727910 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: 2023-08-29 +date: 2023-08-30 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_url_state.mdx b/api_docs/kbn_ml_url_state.mdx index a829a05d9e99f..ebc7e16a9cae5 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ml-url-state'] --- import kbnMlUrlStateObj from './kbn_ml_url_state.devdocs.json'; diff --git a/api_docs/kbn_monaco.mdx b/api_docs/kbn_monaco.mdx index f2561211fbddb..1d0676df53ee7 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: 2023-08-29 +date: 2023-08-30 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 cee70296ebec6..67419cce8284d 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: 2023-08-29 +date: 2023-08-30 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 8276e0f455d6d..962adc2e7ee88 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/observability-alert-details'] --- import kbnObservabilityAlertDetailsObj from './kbn_observability_alert_details.devdocs.json'; diff --git a/api_docs/kbn_optimizer.mdx b/api_docs/kbn_optimizer.mdx index 5a55501f9467a..039a050468b2d 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: 2023-08-29 +date: 2023-08-30 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 354fbcba634ad..d1df4ce43e49f 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: 2023-08-29 +date: 2023-08-30 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 b163df01ae225..1f4759f2c37d9 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: 2023-08-29 +date: 2023-08-30 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_performance_testing_dataset_extractor.mdx b/api_docs/kbn_performance_testing_dataset_extractor.mdx index a11c97784e509..e7c2ca43a7f47 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: 2023-08-29 +date: 2023-08-30 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_generator.mdx b/api_docs/kbn_plugin_generator.mdx index a94e7eb5102da..92d8cd655ad66 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: 2023-08-29 +date: 2023-08-30 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 3a1b036ca3013..ea8ad42c8a1f7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/plugin-helpers'] --- import kbnPluginHelpersObj from './kbn_plugin_helpers.devdocs.json'; diff --git a/api_docs/kbn_random_sampling.mdx b/api_docs/kbn_random_sampling.mdx index a8949b64310b9..39d2eafd25705 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: 2023-08-29 +date: 2023-08-30 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 7c712164fd8cb..3a14c8dff19f5 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-field'] --- import kbnReactFieldObj from './kbn_react_field.devdocs.json'; diff --git a/api_docs/kbn_react_kibana_context_common.mdx b/api_docs/kbn_react_kibana_context_common.mdx index 2f2893afffa81..0599ed0604d31 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: 2023-08-29 +date: 2023-08-30 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 3871fd28dfb72..713320976045a 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: 2023-08-29 +date: 2023-08-30 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 a0e9eafcf0b21..6c1e3d091fa67 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: 2023-08-29 +date: 2023-08-30 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 cca223f50e6a0..a2791c1cca91b 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: 2023-08-29 +date: 2023-08-30 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 e3281ee6b5352..3e9285409db28 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: 2023-08-29 +date: 2023-08-30 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 299d5f22b976d..95882e4540a5e 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/react-kibana-mount'] --- import kbnReactKibanaMountObj from './kbn_react_kibana_mount.devdocs.json'; diff --git a/api_docs/kbn_repo_file_maps.mdx b/api_docs/kbn_repo_file_maps.mdx index ce8158a8183c7..c7703a056d6d5 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: 2023-08-29 +date: 2023-08-30 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 87efc1001f627..49a1f6e85a39f 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: 2023-08-29 +date: 2023-08-30 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 ca4a6449f390c..3bc422c4ca3e1 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: 2023-08-29 +date: 2023-08-30 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 2e8a262dd0d34..d5062a2290304 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: 2023-08-29 +date: 2023-08-30 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 9d66b484597d9..09eacfe5cf3b2 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/reporting-common'] --- import kbnReportingCommonObj from './kbn_reporting_common.devdocs.json'; diff --git a/api_docs/kbn_rison.mdx b/api_docs/kbn_rison.mdx index 5c01b7a0b78c6..110865ad3b86f 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/rison'] --- import kbnRisonObj from './kbn_rison.devdocs.json'; diff --git a/api_docs/kbn_rrule.mdx b/api_docs/kbn_rrule.mdx index cbc74d84905af..a358b8edc0c66 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: 2023-08-29 +date: 2023-08-30 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 d5938991671d2..4f86ff0094f71 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: 2023-08-29 +date: 2023-08-30 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 f82e8f71c8431..ac764ab2ac0a8 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/saved-objects-settings'] --- import kbnSavedObjectsSettingsObj from './kbn_saved_objects_settings.devdocs.json'; diff --git a/api_docs/kbn_search_api_panels.devdocs.json b/api_docs/kbn_search_api_panels.devdocs.json index 10d786f99db67..f58ba4fcbe623 100644 --- a/api_docs/kbn_search_api_panels.devdocs.json +++ b/api_docs/kbn_search_api_panels.devdocs.json @@ -588,7 +588,7 @@ "label": "docLinks", "description": [], "signature": [ - "{ beats: string; connectors: string; logStash: string; }" + "{ beats: string; connectors: string; logstash: string; }" ], "path": "packages/kbn-search-api-panels/components/integrations_panel.tsx", "deprecated": false, diff --git a/api_docs/kbn_search_api_panels.mdx b/api_docs/kbn_search_api_panels.mdx index 51ae6d16ef47f..0809dbcb9696a 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: 2023-08-29 +date: 2023-08-30 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_response_warnings.mdx b/api_docs/kbn_search_response_warnings.mdx index d658e52122353..7e0b9daa2450d 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/search-response-warnings'] --- import kbnSearchResponseWarningsObj from './kbn_search_response_warnings.devdocs.json'; diff --git a/api_docs/kbn_security_solution_navigation.mdx b/api_docs/kbn_security_solution_navigation.mdx index c487ad465c6d7..9d4aa701b8bac 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: 2023-08-29 +date: 2023-08-30 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 2afb39253c2c8..bd7f48e821a6a 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: 2023-08-29 +date: 2023-08-30 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 f4d968a9b8ae7..06e240d9f021a 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: 2023-08-29 +date: 2023-08-30 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 160e4b33b779a..a0f11db5fe76a 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: 2023-08-29 +date: 2023-08-30 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 3b4edd18420ac..f60b1af7db5b9 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: 2023-08-29 +date: 2023-08-30 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 5d11cfdca5b7f..0b395d2fcad89 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: 2023-08-29 +date: 2023-08-30 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 8404d230bf212..fb6af41e22c80 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: 2023-08-29 +date: 2023-08-30 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 e590d21733685..0b11d9dedc1c3 100644 --- a/api_docs/kbn_securitysolution_exception_list_components.devdocs.json +++ b/api_docs/kbn_securitysolution_exception_list_components.devdocs.json @@ -834,7 +834,7 @@ "label": "formattedDateComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"clipPath\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"clipPath\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/meta/index.tsx", "deprecated": false, @@ -848,7 +848,7 @@ "label": "securityLinkAnchorComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"clipPath\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"clipPath\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/meta/index.tsx", "deprecated": false, @@ -987,7 +987,7 @@ "label": "securityLinkAnchorComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"clipPath\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"clipPath\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/exception_item_card.tsx", "deprecated": false, @@ -1001,7 +1001,7 @@ "label": "formattedDateComponent", "description": [], "signature": [ - "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"clipPath\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" + "\"symbol\" | \"object\" | \"big\" | \"link\" | \"small\" | \"sub\" | \"sup\" | \"source\" | \"desc\" | \"filter\" | \"text\" | \"map\" | \"head\" | React.ComponentType | \"slot\" | \"style\" | \"title\" | \"meta\" | \"pattern\" | \"summary\" | \"template\" | \"span\" | \"main\" | \"path\" | \"form\" | \"body\" | \"q\" | \"label\" | \"data\" | \"progress\" | \"legend\" | \"article\" | \"image\" | \"menu\" | \"stop\" | \"base\" | \"s\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"canvas\" | \"svg\" | \"select\" | \"output\" | \"script\" | \"time\" | \"mask\" | \"input\" | \"clipPath\" | \"section\" | \"circle\" | \"code\" | \"line\" | \"area\" | \"animate\" | \"view\" | \"var\" | \"html\" | \"a\" | \"img\" | \"audio\" | \"br\" | \"textarea\" | \"abbr\" | \"address\" | \"aside\" | \"b\" | \"bdi\" | \"bdo\" | \"blockquote\" | \"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\" | \"ins\" | \"kbd\" | \"keygen\" | \"li\" | \"mark\" | \"menuitem\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"param\" | \"picture\" | \"pre\" | \"rp\" | \"rt\" | \"ruby\" | \"samp\" | \"strong\" | \"table\" | \"tbody\" | \"td\" | \"tfoot\" | \"th\" | \"thead\" | \"tr\" | \"track\" | \"u\" | \"ul\" | \"video\" | \"wbr\" | \"webview\" | \"animateMotion\" | \"animateTransform\" | \"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\" | \"rect\" | \"switch\" | \"textPath\" | \"tspan\" | \"use\"" ], "path": "packages/kbn-securitysolution-exception-list-components/src/exception_item_card/exception_item_card.tsx", "deprecated": false, diff --git a/api_docs/kbn_securitysolution_exception_list_components.mdx b/api_docs/kbn_securitysolution_exception_list_components.mdx index 928cafcdeddab..6373cb17d9c80 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: 2023-08-29 +date: 2023-08-30 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_grouping.mdx b/api_docs/kbn_securitysolution_grouping.mdx index 38cc77464c55e..281a973a4259b 100644 --- a/api_docs/kbn_securitysolution_grouping.mdx +++ b/api_docs/kbn_securitysolution_grouping.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-securitysolution-grouping title: "@kbn/securitysolution-grouping" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/securitysolution-grouping plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/securitysolution-grouping'] --- import kbnSecuritysolutionGroupingObj from './kbn_securitysolution_grouping.devdocs.json'; diff --git a/api_docs/kbn_securitysolution_hook_utils.mdx b/api_docs/kbn_securitysolution_hook_utils.mdx index 23a4d7539f34c..0f44afa048ac0 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: 2023-08-29 +date: 2023-08-30 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 096803d5d1dcc..59684c74e6af7 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: 2023-08-29 +date: 2023-08-30 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 517925775389f..b576a6685f222 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: 2023-08-29 +date: 2023-08-30 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 63f8756358135..d4f1b2328cc3f 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: 2023-08-29 +date: 2023-08-30 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 3b8453ee7140b..37682d9fec970 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: 2023-08-29 +date: 2023-08-30 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 e1460523bb773..7c2698cb04614 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: 2023-08-29 +date: 2023-08-30 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.devdocs.json b/api_docs/kbn_securitysolution_list_constants.devdocs.json index f39f80212e340..c3f2279e6ccde 100644 --- a/api_docs/kbn_securitysolution_list_constants.devdocs.json +++ b/api_docs/kbn_securitysolution_list_constants.devdocs.json @@ -167,6 +167,10 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" @@ -431,6 +435,10 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" @@ -639,6 +647,10 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" + }, { "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" @@ -1084,6 +1096,10 @@ "plugin": "securitySolution", "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" }, + { + "plugin": "securitySolution", + "path": "x-pack/plugins/security_solution/server/endpoint/services/artifacts/manifest_manager/manifest_manager.test.ts" + }, { "plugin": "@kbn/securitysolution-io-ts-list-types", "path": "packages/kbn-securitysolution-io-ts-list-types/src/response/exception_list_schema/index.mock.ts" diff --git a/api_docs/kbn_securitysolution_list_constants.mdx b/api_docs/kbn_securitysolution_list_constants.mdx index 8352096276e14..7b7567ffa43a7 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: 2023-08-29 +date: 2023-08-30 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 f706f8f6f4905..53b34018cb4e7 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: 2023-08-29 +date: 2023-08-30 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 df70e22184234..5f02c982cd35e 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: 2023-08-29 +date: 2023-08-30 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 621e624f7b3d0..51aaf37e76fe3 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: 2023-08-29 +date: 2023-08-30 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 6a4b404c44234..a65afcdb9ecfa 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: 2023-08-29 +date: 2023-08-30 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.devdocs.json b/api_docs/kbn_securitysolution_utils.devdocs.json index 54c9d41a2d799..c755b84836844 100644 --- a/api_docs/kbn_securitysolution_utils.devdocs.json +++ b/api_docs/kbn_securitysolution_utils.devdocs.json @@ -495,7 +495,7 @@ "label": "BlocklistConditionEntryField", "description": [], "signature": [ - "\"file.path\" | \"file.hash.*\" | \"file.Ext.code_signature\" | \"file.path.caseless\"" + "\"file.path\" | \"file.Ext.code_signature\" | \"file.hash.*\" | \"file.path.caseless\"" ], "path": "packages/kbn-securitysolution-utils/src/path_validations/index.ts", "deprecated": false, diff --git a/api_docs/kbn_securitysolution_utils.mdx b/api_docs/kbn_securitysolution_utils.mdx index c458c7ab9d639..0fbc94ff3160d 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: 2023-08-29 +date: 2023-08-30 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 d3775e0321552..b821a5b739f67 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: 2023-08-29 +date: 2023-08-30 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 95acb3c677003..823402d3fa166 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/server-route-repository'] --- import kbnServerRouteRepositoryObj from './kbn_server_route_repository.devdocs.json'; diff --git a/api_docs/kbn_serverless_project_switcher.mdx b/api_docs/kbn_serverless_project_switcher.mdx index aa6da93f9c477..80275aca5f5f4 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: 2023-08-29 +date: 2023-08-30 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_storybook_config.mdx b/api_docs/kbn_serverless_storybook_config.mdx index 11f040fbf0ade..d46f1e1c28d68 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: 2023-08-29 +date: 2023-08-30 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 6b612c9b52e3c..79461a4453af0 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: 2023-08-29 +date: 2023-08-30 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 0f2876009bf6d..78d5a2d37cfe7 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: 2023-08-29 +date: 2023-08-30 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_avatar_user_profile_components.mdx b/api_docs/kbn_shared_ux_avatar_user_profile_components.mdx index 7e36237dedc4b..d57b551d7932c 100644 --- a/api_docs/kbn_shared_ux_avatar_user_profile_components.mdx +++ b/api_docs/kbn_shared_ux_avatar_user_profile_components.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-avatar-user-profile-components title: "@kbn/shared-ux-avatar-user-profile-components" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-avatar-user-profile-components plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-avatar-user-profile-components'] --- import kbnSharedUxAvatarUserProfileComponentsObj from './kbn_shared_ux_avatar_user_profile_components.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 db9395e88f664..5e0d91ca17e68 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: 2023-08-29 +date: 2023-08-30 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_exit_full_screen_mocks.mdx b/api_docs/kbn_shared_ux_button_exit_full_screen_mocks.mdx index b0f90559e6ae0..137b48c6ed349 100644 --- a/api_docs/kbn_shared_ux_button_exit_full_screen_mocks.mdx +++ b/api_docs/kbn_shared_ux_button_exit_full_screen_mocks.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-shared-ux-button-exit-full-screen-mocks title: "@kbn/shared-ux-button-exit-full-screen-mocks" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/shared-ux-button-exit-full-screen-mocks plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/shared-ux-button-exit-full-screen-mocks'] --- import kbnSharedUxButtonExitFullScreenMocksObj from './kbn_shared_ux_button_exit_full_screen_mocks.devdocs.json'; diff --git a/api_docs/kbn_shared_ux_button_toolbar.mdx b/api_docs/kbn_shared_ux_button_toolbar.mdx index e09d1bb60fb53..3ac01c5e50938 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: 2023-08-29 +date: 2023-08-30 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 f4e62f597966a..622d75c7df073 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: 2023-08-29 +date: 2023-08-30 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 69199b1416456..095b0d2db5306 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: 2023-08-29 +date: 2023-08-30 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 cf16454368cd0..cdba5df37c5d9 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: 2023-08-29 +date: 2023-08-30 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_file_context.mdx b/api_docs/kbn_shared_ux_file_context.mdx index 23f9d0a2811e3..edca00b31c540 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: 2023-08-29 +date: 2023-08-30 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 830594a259441..bc3b9031bb242 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: 2023-08-29 +date: 2023-08-30 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 5b1ac2d313724..bc7756514b1af 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: 2023-08-29 +date: 2023-08-30 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 92f4185ba9485..dc17ec870a79e 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: 2023-08-29 +date: 2023-08-30 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 856f141ffb8ed..0dab91f85cc97 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: 2023-08-29 +date: 2023-08-30 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 8b30f58d1014e..365a9c6390743 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: 2023-08-29 +date: 2023-08-30 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 ee118d8d30131..eba95a3e36d64 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: 2023-08-29 +date: 2023-08-30 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 4d209eb741ade..60b4ad3a8a1c0 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: 2023-08-29 +date: 2023-08-30 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 e6ad6ff96ef6f..da8f630184fc2 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: 2023-08-29 +date: 2023-08-30 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 7a58af1dd23c1..9086cf4af077d 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: 2023-08-29 +date: 2023-08-30 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 cb8c346fe03d4..bf3a019ba362e 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: 2023-08-29 +date: 2023-08-30 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 4704d8ff04654..2522ed4bca78b 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: 2023-08-29 +date: 2023-08-30 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 8f137c1b19bae..564005b5b3832 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: 2023-08-29 +date: 2023-08-30 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 43b35150ca54f..d75380ca0b532 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: 2023-08-29 +date: 2023-08-30 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 76beef22dab87..237573e6418cc 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: 2023-08-29 +date: 2023-08-30 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 7287acc7bf6d6..6f3237a94858a 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: 2023-08-29 +date: 2023-08-30 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 7a4c6b9f0ca79..bd6468e1f30af 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: 2023-08-29 +date: 2023-08-30 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 42191d0e64159..39d2ead6fff69 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: 2023-08-29 +date: 2023-08-30 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 274d7abec9027..91a099f191936 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: 2023-08-29 +date: 2023-08-30 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 8ad594e4af757..350c6deccbc53 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: 2023-08-29 +date: 2023-08-30 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 17435ce9d3f78..c8a1ce2581b9e 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: 2023-08-29 +date: 2023-08-30 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 875216415544c..27047fffc22dd 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: 2023-08-29 +date: 2023-08-30 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 957c1bb26ac28..41fc6ad192162 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: 2023-08-29 +date: 2023-08-30 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 21228fc56e777..ec9eefb81bca9 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: 2023-08-29 +date: 2023-08-30 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 f9d069f8e210f..f4f0c8d948d81 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: 2023-08-29 +date: 2023-08-30 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 ce4ddbf658b33..53c8035812988 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: 2023-08-29 +date: 2023-08-30 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 71e814e3be0d8..b908a4ba1d84b 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: 2023-08-29 +date: 2023-08-30 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 d37edc70374c6..506d70a36cc68 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: 2023-08-29 +date: 2023-08-30 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 18e25c6928684..f4ea6283d09ea 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: 2023-08-29 +date: 2023-08-30 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 a1cd940e9f883..936fc84a6582d 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: 2023-08-29 +date: 2023-08-30 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_utility.mdx b/api_docs/kbn_shared_ux_utility.mdx index e3ace32ceff37..4c8e0281bdc09 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: 2023-08-29 +date: 2023-08-30 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 fa014ce11dddb..1957f83e31dcb 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: 2023-08-29 +date: 2023-08-30 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 5e91eb8810ae4..e1897d050223d 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/some-dev-log'] --- import kbnSomeDevLogObj from './kbn_some_dev_log.devdocs.json'; diff --git a/api_docs/kbn_std.mdx b/api_docs/kbn_std.mdx index e5ab024d5bf00..4d74df73ac66c 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: 2023-08-29 +date: 2023-08-30 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 257d1a20a394c..e7818626e3a7d 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: 2023-08-29 +date: 2023-08-30 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 5b1672a76e614..820d5f5b1811a 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/storybook'] --- import kbnStorybookObj from './kbn_storybook.devdocs.json'; diff --git a/api_docs/kbn_telemetry_tools.mdx b/api_docs/kbn_telemetry_tools.mdx index 4f3af81ac9d76..7b7e8d6758eec 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: 2023-08-29 +date: 2023-08-30 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 12254960a3bcd..741717d4ff43e 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/test'] --- import kbnTestObj from './kbn_test.devdocs.json'; diff --git a/api_docs/kbn_test_jest_helpers.mdx b/api_docs/kbn_test_jest_helpers.mdx index 4d8ddb2f69963..077a1db05558a 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: 2023-08-29 +date: 2023-08-30 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 e5fa037280d38..fb83eedafd55d 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: 2023-08-29 +date: 2023-08-30 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 d0c71da058945..e858848283ae6 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/text-based-editor'] --- import kbnTextBasedEditorObj from './kbn_text_based_editor.devdocs.json'; diff --git a/api_docs/kbn_tooling_log.mdx b/api_docs/kbn_tooling_log.mdx index b20f45a9c4058..71db01af0be30 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/tooling-log'] --- import kbnToolingLogObj from './kbn_tooling_log.devdocs.json'; diff --git a/api_docs/kbn_ts_projects.mdx b/api_docs/kbn_ts_projects.mdx index f5eabeb06ea4c..797d68dea96d5 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: 2023-08-29 +date: 2023-08-30 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 31ea7d67456a5..1d423f1248c17 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: 2023-08-29 +date: 2023-08-30 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 1358a1714994e..7fe5a02464de5 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: 2023-08-29 +date: 2023-08-30 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 f3d423de49ff6..71e54daf02356 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: 2023-08-29 +date: 2023-08-30 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 f22c2c15c35fc..b45f4ff509b59 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/ui-theme'] --- import kbnUiThemeObj from './kbn_ui_theme.devdocs.json'; diff --git a/api_docs/kbn_unified_field_list.mdx b/api_docs/kbn_unified_field_list.mdx index 6a265e7eadae2..0d25b4f093ac9 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/unified-field-list'] --- import kbnUnifiedFieldListObj from './kbn_unified_field_list.devdocs.json'; diff --git a/api_docs/kbn_url_state.mdx b/api_docs/kbn_url_state.mdx index 8ff7a1031b7a8..e2ab4723adf7e 100644 --- a/api_docs/kbn_url_state.mdx +++ b/api_docs/kbn_url_state.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/kbn-url-state title: "@kbn/url-state" image: https://source.unsplash.com/400x175/?github description: API docs for the @kbn/url-state plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/url-state'] --- import kbnUrlStateObj from './kbn_url_state.devdocs.json'; diff --git a/api_docs/kbn_use_tracked_promise.mdx b/api_docs/kbn_use_tracked_promise.mdx index 0af4f5d49265e..47f9bf201513d 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: 2023-08-29 +date: 2023-08-30 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 9fed54ca5d325..9da0db14a5174 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: 2023-08-29 +date: 2023-08-30 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 c0e666a3d573c..9d448142cd4b6 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: 2023-08-29 +date: 2023-08-30 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 430e9f209ba18..1dff266f741bc 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: 2023-08-29 +date: 2023-08-30 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 16987b55706d4..c5b6bc61e5e9e 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: 2023-08-29 +date: 2023-08-30 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 5d5a3f2a58c0e..0c83de8e29fc3 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/visualization-ui-components'] --- import kbnVisualizationUiComponentsObj from './kbn_visualization_ui_components.devdocs.json'; diff --git a/api_docs/kbn_yarn_lock_validator.mdx b/api_docs/kbn_yarn_lock_validator.mdx index ddee9ca854aa9..95ddffa222d04 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', '@kbn/yarn-lock-validator'] --- import kbnYarnLockValidatorObj from './kbn_yarn_lock_validator.devdocs.json'; diff --git a/api_docs/kibana_overview.mdx b/api_docs/kibana_overview.mdx index 4bd66f17c803d..9c93f66e7890c 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: 2023-08-29 +date: 2023-08-30 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 2ee81bd38b33e..ac7448e7a2078 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: 2023-08-29 +date: 2023-08-30 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 2a09443de9b3c..8c392a8ca4849 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: 2023-08-29 +date: 2023-08-30 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 e1da6b763fa0d..dcd60ec8d5551 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: 2023-08-29 +date: 2023-08-30 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 595a33dd849bf..70421cf7e57b0 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: 2023-08-29 +date: 2023-08-30 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 d39ec76e6e0b6..f1cee9777ec22 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: 2023-08-29 +date: 2023-08-30 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 181c51f6a7f60..6a6b15f0fce05 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: 2023-08-29 +date: 2023-08-30 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 2e7ed075cd6c8..081251e91384d 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'licensing'] --- import licensingObj from './licensing.devdocs.json'; diff --git a/api_docs/lists.mdx b/api_docs/lists.mdx index ff691940dc751..7db65ce288bfe 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'lists'] --- import listsObj from './lists.devdocs.json'; diff --git a/api_docs/logs_shared.mdx b/api_docs/logs_shared.mdx index 8ec3e570acee0..77a40bc016072 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: 2023-08-29 +date: 2023-08-30 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 851e89f0450f6..decb7a0fe1240 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: 2023-08-29 +date: 2023-08-30 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 c7dd1d3279bc4..5ca09c9027504 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: 2023-08-29 +date: 2023-08-30 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 04030f115b578..02095fac1991c 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'mapsEms'] --- import mapsEmsObj from './maps_ems.devdocs.json'; diff --git a/api_docs/ml.mdx b/api_docs/ml.mdx index a389fc5a3d29e..ed8c763787727 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'ml'] --- import mlObj from './ml.devdocs.json'; diff --git a/api_docs/monitoring.mdx b/api_docs/monitoring.mdx index e955022d97f6f..2b872271b85a5 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: 2023-08-29 +date: 2023-08-30 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 d679b2cd903c7..cea48ceaf6286 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: 2023-08-29 +date: 2023-08-30 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 eea6f16c1b1f2..67b4461b4e53e 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: 2023-08-29 +date: 2023-08-30 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 6b5368717a70c..fd508def53e48 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: 2023-08-29 +date: 2023-08-30 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 6014be6b3ae9f..6a772486ee250 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: 2023-08-29 +date: 2023-08-30 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 864910d8ef2c5..ba261b9a56cf2 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'notifications'] --- import notificationsObj from './notifications.devdocs.json'; diff --git a/api_docs/observability.mdx b/api_docs/observability.mdx index e08e73da6a8f1..384666d299cbf 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: 2023-08-29 +date: 2023-08-30 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 f2c1ad4099954..1e794ee8ef801 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityAIAssistant'] --- import observabilityAIAssistantObj from './observability_a_i_assistant.devdocs.json'; diff --git a/api_docs/observability_onboarding.mdx b/api_docs/observability_onboarding.mdx index 35299f4069006..467eb3d1edb20 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'observabilityOnboarding'] --- import observabilityOnboardingObj from './observability_onboarding.devdocs.json'; diff --git a/api_docs/observability_shared.devdocs.json b/api_docs/observability_shared.devdocs.json index 0a612b6ac7f72..2bfd9c96c19c3 100644 --- a/api_docs/observability_shared.devdocs.json +++ b/api_docs/observability_shared.devdocs.json @@ -682,7 +682,7 @@ "DisambiguateSet", ", Omit, \"href\">> & Omit, \"href\">) | (", "DisambiguateSet", - ", \"href\">, React.ButtonHTMLAttributes> & React.ButtonHTMLAttributes))), \"color\" | \"onClick\" | \"rel\" | \"target\"> & { size?: \"m\" | \"s\" | \"xs\" | \"l\" | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; label: React.ReactNode; isActive?: boolean | undefined; isDisabled?: boolean | undefined; href?: string | undefined; target?: string | undefined; rel?: string | undefined; iconType?: ", + ", \"href\">, React.ButtonHTMLAttributes> & React.ButtonHTMLAttributes))), \"color\" | \"onClick\" | \"rel\" | \"target\"> & { size?: \"m\" | \"s\" | \"l\" | \"xs\" | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; label: React.ReactNode; isActive?: boolean | undefined; isDisabled?: boolean | undefined; href?: string | undefined; target?: string | undefined; rel?: string | undefined; iconType?: ", "IconType", " | undefined; iconProps?: Omit<", "EuiIconProps", @@ -721,7 +721,7 @@ "DisambiguateSet", ", Omit, \"href\">> & Omit, \"href\">) | (", "DisambiguateSet", - ", \"href\">, React.ButtonHTMLAttributes> & React.ButtonHTMLAttributes))), \"color\" | \"onClick\" | \"rel\" | \"target\"> & { size?: \"m\" | \"s\" | \"xs\" | \"l\" | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; label: React.ReactNode; isActive?: boolean | undefined; isDisabled?: boolean | undefined; href?: string | undefined; target?: string | undefined; rel?: string | undefined; iconType?: ", + ", \"href\">, React.ButtonHTMLAttributes> & React.ButtonHTMLAttributes))), \"color\" | \"onClick\" | \"rel\" | \"target\"> & { size?: \"m\" | \"s\" | \"l\" | \"xs\" | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; label: React.ReactNode; isActive?: boolean | undefined; isDisabled?: boolean | undefined; href?: string | undefined; target?: string | undefined; rel?: string | undefined; iconType?: ", "IconType", " | undefined; iconProps?: Omit<", "EuiIconProps", @@ -752,7 +752,7 @@ "CommonProps", " & Omit, \"color\"> & { bordered?: boolean | undefined; flush?: boolean | undefined; gutterSize?: \"m\" | \"none\" | \"s\" | undefined; listItems?: ", "EuiListGroupItemProps", - "[] | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; size?: \"m\" | \"s\" | \"xs\" | \"l\" | undefined; maxWidth?: boolean | ", + "[] | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; size?: \"m\" | \"s\" | \"l\" | \"xs\" | undefined; maxWidth?: boolean | ", "Property", ".MaxWidth | undefined; showToolTips?: boolean | undefined; wrapText?: boolean | undefined; ariaLabelledby?: string | undefined; }) => JSX.Element" ], @@ -772,7 +772,7 @@ "CommonProps", " & Omit, \"color\"> & { bordered?: boolean | undefined; flush?: boolean | undefined; gutterSize?: \"m\" | \"none\" | \"s\" | undefined; listItems?: ", "EuiListGroupItemProps", - "[] | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; size?: \"m\" | \"s\" | \"xs\" | \"l\" | undefined; maxWidth?: boolean | ", + "[] | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; size?: \"m\" | \"s\" | \"l\" | \"xs\" | undefined; maxWidth?: boolean | ", "Property", ".MaxWidth | undefined; showToolTips?: boolean | undefined; wrapText?: boolean | undefined; ariaLabelledby?: string | undefined; }" ], @@ -2548,7 +2548,7 @@ "DisambiguateSet", ", Omit, \"href\">> & Omit, \"href\">) | (", "DisambiguateSet", - ", \"href\">, React.ButtonHTMLAttributes> & React.ButtonHTMLAttributes))), \"color\" | \"onClick\" | \"rel\" | \"target\"> & { size?: \"m\" | \"s\" | \"xs\" | \"l\" | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; label: React.ReactNode; isActive?: boolean | undefined; isDisabled?: boolean | undefined; href?: string | undefined; target?: string | undefined; rel?: string | undefined; iconType?: ", + ", \"href\">, React.ButtonHTMLAttributes> & React.ButtonHTMLAttributes))), \"color\" | \"onClick\" | \"rel\" | \"target\"> & { size?: \"m\" | \"s\" | \"l\" | \"xs\" | undefined; color?: \"text\" | \"subdued\" | \"primary\" | undefined; label: React.ReactNode; isActive?: boolean | undefined; isDisabled?: boolean | undefined; href?: string | undefined; target?: string | undefined; rel?: string | undefined; iconType?: ", "IconType", " | undefined; iconProps?: Omit<", "EuiIconProps", diff --git a/api_docs/observability_shared.mdx b/api_docs/observability_shared.mdx index bde051c6aef8c..6d9c9f15cdfca 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: 2023-08-29 +date: 2023-08-30 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 8833f6a1ca67b..9424349506ad9 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'osquery'] --- import osqueryObj from './osquery.devdocs.json'; diff --git a/api_docs/plugin_directory.mdx b/api_docs/plugin_directory.mdx index 9bfdfb272f12a..9156bc274cd34 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana'] --- @@ -21,7 +21,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | API Count | Any Count | Missing comments | Missing exports | |--------------|----------|-----------------|--------| -| 72283 | 226 | 61740 | 1491 | +| 72316 | 226 | 61773 | 1493 | ## Plugin Directory @@ -30,7 +30,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 267 | 0 | 261 | 28 | | | [@elastic/appex-sharedux @elastic/platform-deployment-management](https://github.com/orgs/elastic/teams/appex-sharedux ) | - | 17 | 1 | 15 | 2 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | AIOps plugin maintained by ML team. | 61 | 1 | 3 | 0 | -| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 786 | 1 | 755 | 46 | +| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 780 | 1 | 749 | 46 | | | [@elastic/apm-ui](https://github.com/orgs/elastic/teams/apm-ui) | The user interface for Elastic APM | 29 | 0 | 29 | 118 | | | [@elastic/apm-ui](https://github.com/orgs/elastic/teams/apm-ui) | - | 9 | 0 | 9 | 0 | | | [@elastic/infra-monitoring-ui](https://github.com/orgs/elastic/teams/infra-monitoring-ui) | Asset manager plugin for entity assets (inventory, topology, etc) | 2 | 0 | 2 | 0 | @@ -57,14 +57,14 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/fleet](https://github.com/orgs/elastic/teams/fleet) | Add custom data integrations so they can be displayed in the Fleet integrations app | 268 | 0 | 249 | 1 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | Adds the Dashboard app to Kibana | 101 | 0 | 98 | 9 | | | [@elastic/kibana-presentation](https://github.com/orgs/elastic/teams/kibana-presentation) | - | 54 | 0 | 51 | 0 | -| | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | Data services are useful for searching and querying data from Elasticsearch. Helpful utilities include: a re-usable react query bar, KQL autocomplete, async search, Data Views (Index Patterns) and field formatters. | 3308 | 33 | 2581 | 26 | +| | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | Data services are useful for searching and querying data from Elasticsearch. Helpful utilities include: a re-usable react query bar, KQL autocomplete, async search, Data Views (Index Patterns) and field formatters. | 3310 | 33 | 2583 | 26 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | This plugin provides the ability to create data views via a modal flyout inside Kibana apps | 16 | 0 | 7 | 0 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | Reusable data view field editor across Kibana | 72 | 0 | 33 | 0 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | Data view management app | 2 | 0 | 2 | 0 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | Data services are useful for searching and querying data from Elasticsearch. Helpful utilities include: a re-usable react query bar, KQL autocomplete, async search, Data Views (Index Patterns) and field formatters. | 1034 | 0 | 254 | 2 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | The Data Visualizer tools help you understand your data, by analyzing the metrics and fields in a log file or an existing Elasticsearch index. | 31 | 3 | 25 | 1 | | | [@elastic/platform-deployment-management](https://github.com/orgs/elastic/teams/platform-deployment-management) | - | 12 | 0 | 10 | 3 | -| | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | This plugin contains the Discover application and the saved search embeddable. | 79 | 0 | 52 | 15 | +| | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | This plugin contains the Discover application and the saved search embeddable. | 99 | 0 | 72 | 17 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | - | 37 | 0 | 35 | 2 | | discoverLogExplorer | [@elastic/infra-monitoring-ui](https://github.com/orgs/elastic/teams/infra-monitoring-ui) | This plugin exposes and registers Logs+ features. | 0 | 0 | 0 | 0 | | | [@elastic/security-threat-hunting-investigations](https://github.com/orgs/elastic/teams/security-threat-hunting-investigations) | APIs used to assess the quality of data in Elasticsearch indexes | 2 | 0 | 0 | 0 | @@ -185,7 +185,7 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Adds UI Actions service to Kibana | 145 | 0 | 103 | 9 | | | [@elastic/appex-sharedux](https://github.com/orgs/elastic/teams/appex-sharedux) | Extends UI Actions plugin with more functionality | 206 | 0 | 140 | 9 | | | [@elastic/kibana-data-discovery](https://github.com/orgs/elastic/teams/kibana-data-discovery) | The `unifiedHistogram` plugin provides UI components to create a layout including a resizable histogram and a main display. | 53 | 0 | 23 | 2 | -| | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | Contains all the key functionality of Kibana's unified search experience.Contains all the key functionality of Kibana's unified search experience. | 142 | 2 | 104 | 22 | +| | [@elastic/kibana-visualizations](https://github.com/orgs/elastic/teams/kibana-visualizations) | Contains all the key functionality of Kibana's unified search experience.Contains all the key functionality of Kibana's unified search experience. | 148 | 2 | 110 | 22 | | upgradeAssistant | [@elastic/platform-deployment-management](https://github.com/orgs/elastic/teams/platform-deployment-management) | - | 0 | 0 | 0 | 0 | | | [@elastic/uptime](https://github.com/orgs/elastic/teams/uptime) | This plugin visualizes data from Heartbeat, and integrates with other Observability solutions. | 1 | 0 | 1 | 0 | | urlDrilldown | [@elastic/kibana-app-services](https://github.com/orgs/elastic/teams/kibana-app-services) | Adds drilldown implementations to Kibana | 0 | 0 | 0 | 0 | @@ -216,8 +216,8 @@ tags: ['contributor', 'dev', 'apidocs', 'kibana'] | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 33 | 0 | 0 | 0 | | | [@elastic/ml-ui](https://github.com/orgs/elastic/teams/ml-ui) | - | 20 | 0 | 0 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 24 | 3 | 24 | 0 | -| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 16 | 0 | 15 | 0 | -| | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 25 | 0 | 25 | 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) | - | 29 | 0 | 29 | 0 | | | [@elastic/response-ops](https://github.com/orgs/elastic/teams/response-ops) | - | 8 | 0 | 7 | 1 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 73 | 0 | 73 | 2 | | | [@elastic/kibana-core](https://github.com/orgs/elastic/teams/kibana-core) | - | 98 | 0 | 0 | 0 | diff --git a/api_docs/presentation_util.mdx b/api_docs/presentation_util.mdx index cdc6fdb4be051..aac35a8121ca4 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: 2023-08-29 +date: 2023-08-30 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 b9e7c8fa13d56..47aaea0e8c4f9 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'profiling'] --- import profilingObj from './profiling.devdocs.json'; diff --git a/api_docs/remote_clusters.mdx b/api_docs/remote_clusters.mdx index a1f6c7a297e1a..30dece6bf2e7e 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: 2023-08-29 +date: 2023-08-30 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 8b4a86aeeb456..56014d99f6b66 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: 2023-08-29 +date: 2023-08-30 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 0b3598ae263ed..eb383b54a3f79 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: 2023-08-29 +date: 2023-08-30 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 5becb8288089d..4f7096360b0b6 100644 --- a/api_docs/rule_registry.devdocs.json +++ b/api_docs/rule_registry.devdocs.json @@ -1719,7 +1719,7 @@ "section": "def-common.RuleTypeState", "text": "RuleTypeState" }, - " = never, InstanceState extends { [x: string]: unknown; } = never, InstanceContext extends { [x: string]: unknown; } = never, ActionGroupIds extends string = never>(wrappedExecutor: ", + " = never, InstanceState extends Record = never, InstanceContext extends { [x: string]: unknown; } = never, ActionGroupIds extends string = never>(wrappedExecutor: ", { "pluginId": "ruleRegistry", "scope": "server", @@ -1844,7 +1844,7 @@ "section": "def-common.RuleTypeParams", "text": "RuleTypeParams" }, - ", TAlertInstanceState extends { [x: string]: unknown; }, TAlertInstanceContext extends { [x: string]: unknown; }, TActionGroupIds extends string, TServices extends ", + ", TAlertInstanceState extends Record, TAlertInstanceContext extends { [x: string]: unknown; }, TActionGroupIds extends string, TServices extends ", { "pluginId": "ruleRegistry", "scope": "server", @@ -1987,7 +1987,7 @@ "section": "def-server.RuleExecutorOptions", "text": "RuleExecutorOptions" }, - ") => Promise<{ state: TState; }>; id: string; name: string; producer: string; validate: { params: ", + ", { [x: string]: unknown; }, \"default\", never>) => Promise<{ state: TState; }>; id: string; name: string; producer: string; validate: { params: ", "RuleTypeParamsValidator", "; }; cancelAlertsOnRuleTimeout?: boolean | undefined; alerts?: ", { @@ -3791,7 +3791,7 @@ "section": "def-server.RuleType", "text": "RuleType" }, - ", \"executor\"> & { executor: ", + ", TAlertInstanceContext, string, string, never>, \"executor\"> & { executor: ", "AlertTypeExecutor", "; }" ], @@ -3856,7 +3856,7 @@ "section": "def-server.RuleType", "text": "RuleType" }, - "" + ", { [x: string]: unknown; }, \"default\", never, never>" ], "path": "x-pack/plugins/rule_registry/server/utils/persistence_types.ts", "deprecated": false, @@ -4174,7 +4174,7 @@ "section": "def-server.RuleType", "text": "RuleType" }, - ", \"executor\"> & { executor: (options: ", + ", TInstanceContext, TActionGroupIds, never, never>, \"executor\"> & { executor: (options: ", { "pluginId": "alerting", "scope": "server", @@ -4182,7 +4182,7 @@ "section": "def-server.RuleExecutorOptions", "text": "RuleExecutorOptions" }, - ", TInstanceContext, ", { "pluginId": "alerting", "scope": "common", @@ -4519,7 +4519,7 @@ "section": "def-common.RuleTypeParams", "text": "RuleTypeParams" }, - ", TAlertInstanceState extends { [x: string]: unknown; }, TAlertInstanceContext extends { [x: string]: unknown; }, TActionGroupIds extends string, TServices extends ", + ", TAlertInstanceState extends Record, TAlertInstanceContext extends { [x: string]: unknown; }, TActionGroupIds extends string, TServices extends ", { "pluginId": "ruleRegistry", "scope": "server", diff --git a/api_docs/rule_registry.mdx b/api_docs/rule_registry.mdx index 5922688ec3d5f..65e2d986c07f6 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: 2023-08-29 +date: 2023-08-30 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 eafa39a8b1ec8..14294cbbcb9c5 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: 2023-08-29 +date: 2023-08-30 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 1ba7eadf0ef98..c348667fa02c3 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: 2023-08-29 +date: 2023-08-30 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 e23535dc14647..807af197f9a6a 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: 2023-08-29 +date: 2023-08-30 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 98c2613f77c9a..c3ad7ed071975 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: 2023-08-29 +date: 2023-08-30 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 a063eb533b714..cabb838f7c743 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: 2023-08-29 +date: 2023-08-30 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 fade576fdfed1..1b31c230817bd 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: 2023-08-29 +date: 2023-08-30 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 15e49ecd643ca..d0701a01b01c1 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: 2023-08-29 +date: 2023-08-30 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 8e3054654149e..cad7f603ceb5c 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: 2023-08-29 +date: 2023-08-30 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 a56afa3ea5eab..4def9f016fc87 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'screenshotting'] --- import screenshottingObj from './screenshotting.devdocs.json'; diff --git a/api_docs/security.mdx b/api_docs/security.mdx index 436d9fc2a62b3..5e14740d80ba3 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'security'] --- import securityObj from './security.devdocs.json'; diff --git a/api_docs/security_solution.mdx b/api_docs/security_solution.mdx index 41c7553e1292c..5ba5dece8abd4 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: 2023-08-29 +date: 2023-08-30 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 34e38e14067dd..3dd9f01c2bba2 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: 2023-08-29 +date: 2023-08-30 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 e5e61401fc375..595f6cc6362cb 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: 2023-08-29 +date: 2023-08-30 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 cd2b74a76fdf9..658a7bd3d03c0 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: 2023-08-29 +date: 2023-08-30 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 651a305fafd4c..4f30d70b39f50 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: 2023-08-29 +date: 2023-08-30 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 f02a9caaafbe1..a1f2f460ac24b 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: 2023-08-29 +date: 2023-08-30 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 b9480241e7352..64a6d5088efeb 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: 2023-08-29 +date: 2023-08-30 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 1ee73c2a226e6..4f889e349084f 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'share'] --- import shareObj from './share.devdocs.json'; diff --git a/api_docs/snapshot_restore.mdx b/api_docs/snapshot_restore.mdx index c8ca4eca7cce4..ec447905858c4 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: 2023-08-29 +date: 2023-08-30 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 deb0f1803fa38..1c9b99cdf6084 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: 2023-08-29 +date: 2023-08-30 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 6f64356d89cea..8c91dcd14f3cf 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: 2023-08-29 +date: 2023-08-30 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 b9dcc1d398047..6b454be55a673 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: 2023-08-29 +date: 2023-08-30 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 892313b66db13..abc75eaa4494e 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: 2023-08-29 +date: 2023-08-30 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 9026cd46b9b65..bf9822945d85a 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: 2023-08-29 +date: 2023-08-30 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 d73c7d6246bbd..6c4f7c6036e8f 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: 2023-08-29 +date: 2023-08-30 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 5e0a86eb22bfb..fa4faea4bec41 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: 2023-08-29 +date: 2023-08-30 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 000818037c4e2..c9944ffd9c0b7 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'telemetryManagementSection'] --- import telemetryManagementSectionObj from './telemetry_management_section.devdocs.json'; diff --git a/api_docs/text_based_languages.mdx b/api_docs/text_based_languages.mdx index d59e94ecd47ed..e16d35a19e035 100644 --- a/api_docs/text_based_languages.mdx +++ b/api_docs/text_based_languages.mdx @@ -8,7 +8,7 @@ slug: /kibana-dev-docs/api/textBasedLanguages title: "textBasedLanguages" image: https://source.unsplash.com/400x175/?github description: API docs for the textBasedLanguages plugin -date: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'textBasedLanguages'] --- import textBasedLanguagesObj from './text_based_languages.devdocs.json'; diff --git a/api_docs/threat_intelligence.mdx b/api_docs/threat_intelligence.mdx index f94df2ae0551f..a07b58f2449ed 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: 2023-08-29 +date: 2023-08-30 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 db9408698ada4..bcc35062c5a65 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: 2023-08-29 +date: 2023-08-30 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 c5c72936b736f..70f56645bdf61 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'transform'] --- import transformObj from './transform.devdocs.json'; diff --git a/api_docs/triggers_actions_ui.mdx b/api_docs/triggers_actions_ui.mdx index a87bb62ead45a..acc64fd24dfb6 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: 2023-08-29 +date: 2023-08-30 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 2918437a402fa..a5692f70178c1 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: 2023-08-29 +date: 2023-08-30 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 e3f159118cf9c..22241a26339c4 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'uiActionsEnhanced'] --- import uiActionsEnhancedObj from './ui_actions_enhanced.devdocs.json'; diff --git a/api_docs/unified_histogram.devdocs.json b/api_docs/unified_histogram.devdocs.json index 5b5b6d13ef809..afa74e73e7990 100644 --- a/api_docs/unified_histogram.devdocs.json +++ b/api_docs/unified_histogram.devdocs.json @@ -468,7 +468,7 @@ }, " | undefined; } & Pick<", "UnifiedHistogramLayoutProps", - ", \"children\" | \"className\" | \"query\" | \"filters\" | \"columns\" | \"timeRange\" | \"dataView\" | \"services\" | \"relativeTimeRange\" | \"resizeRef\" | \"appendHitsCounter\"> & React.RefAttributes<", + ", \"children\" | \"className\" | \"query\" | \"filters\" | \"columns\" | \"onBrushEnd\" | \"disabledActions\" | \"timeRange\" | \"services\" | \"dataView\" | \"relativeTimeRange\" | \"resizeRef\" | \"appendHitsCounter\" | \"onFilter\" | \"withDefaultActions\"> & React.RefAttributes<", { "pluginId": "unifiedHistogram", "scope": "public", @@ -1178,7 +1178,7 @@ }, " | undefined; } & Pick<", "UnifiedHistogramLayoutProps", - ", \"children\" | \"className\" | \"query\" | \"filters\" | \"columns\" | \"timeRange\" | \"dataView\" | \"services\" | \"relativeTimeRange\" | \"resizeRef\" | \"appendHitsCounter\">" + ", \"children\" | \"className\" | \"query\" | \"filters\" | \"columns\" | \"onBrushEnd\" | \"disabledActions\" | \"timeRange\" | \"services\" | \"dataView\" | \"relativeTimeRange\" | \"resizeRef\" | \"appendHitsCounter\" | \"onFilter\" | \"withDefaultActions\">" ], "path": "src/plugins/unified_histogram/public/container/container.tsx", "deprecated": false, diff --git a/api_docs/unified_histogram.mdx b/api_docs/unified_histogram.mdx index 50929095b7b86..810403baa98de 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedHistogram'] --- import unifiedHistogramObj from './unified_histogram.devdocs.json'; diff --git a/api_docs/unified_search.devdocs.json b/api_docs/unified_search.devdocs.json index a9e18958ae822..a9e828da07709 100644 --- a/api_docs/unified_search.devdocs.json +++ b/api_docs/unified_search.devdocs.json @@ -3,6 +3,157 @@ "client": { "classes": [], "functions": [ + { + "parentPluginId": "unifiedSearch", + "id": "def-public.createFilterAction", + "type": "Function", + "tags": [], + "label": "createFilterAction", + "description": [], + "signature": [ + "(filterManager: ", + { + "pluginId": "data", + "scope": "public", + "docId": "kibDataQueryPluginApi", + "section": "def-public.FilterManager", + "text": "FilterManager" + }, + ", timeFilter: ", + { + "pluginId": "data", + "scope": "public", + "docId": "kibDataQueryPluginApi", + "section": "def-public.TimefilterContract", + "text": "TimefilterContract" + }, + ", theme: ", + { + "pluginId": "@kbn/core-theme-browser", + "scope": "common", + "docId": "kibKbnCoreThemeBrowserPluginApi", + "section": "def-common.ThemeServiceSetup", + "text": "ThemeServiceSetup" + }, + ", id: string, type: string) => ", + { + "pluginId": "uiActions", + "scope": "public", + "docId": "kibUiActionsPluginApi", + "section": "def-public.ActionDefinition", + "text": "ActionDefinition" + }, + "<", + { + "pluginId": "unifiedSearch", + "scope": "public", + "docId": "kibUnifiedSearchPluginApi", + "section": "def-public.ApplyGlobalFilterActionContext", + "text": "ApplyGlobalFilterActionContext" + }, + ">" + ], + "path": "src/plugins/unified_search/public/actions/apply_filter_action.ts", + "deprecated": false, + "trackAdoption": false, + "children": [ + { + "parentPluginId": "unifiedSearch", + "id": "def-public.createFilterAction.$1", + "type": "Object", + "tags": [], + "label": "filterManager", + "description": [], + "signature": [ + { + "pluginId": "data", + "scope": "public", + "docId": "kibDataQueryPluginApi", + "section": "def-public.FilterManager", + "text": "FilterManager" + } + ], + "path": "src/plugins/unified_search/public/actions/apply_filter_action.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "unifiedSearch", + "id": "def-public.createFilterAction.$2", + "type": "Object", + "tags": [], + "label": "timeFilter", + "description": [], + "signature": [ + { + "pluginId": "data", + "scope": "public", + "docId": "kibDataQueryPluginApi", + "section": "def-public.TimefilterContract", + "text": "TimefilterContract" + } + ], + "path": "src/plugins/unified_search/public/actions/apply_filter_action.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "unifiedSearch", + "id": "def-public.createFilterAction.$3", + "type": "Object", + "tags": [], + "label": "theme", + "description": [], + "signature": [ + { + "pluginId": "@kbn/core-theme-browser", + "scope": "common", + "docId": "kibKbnCoreThemeBrowserPluginApi", + "section": "def-common.ThemeServiceSetup", + "text": "ThemeServiceSetup" + } + ], + "path": "src/plugins/unified_search/public/actions/apply_filter_action.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "unifiedSearch", + "id": "def-public.createFilterAction.$4", + "type": "string", + "tags": [], + "label": "id", + "description": [], + "signature": [ + "string" + ], + "path": "src/plugins/unified_search/public/actions/apply_filter_action.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + }, + { + "parentPluginId": "unifiedSearch", + "id": "def-public.createFilterAction.$5", + "type": "string", + "tags": [], + "label": "type", + "description": [], + "signature": [ + "string" + ], + "path": "src/plugins/unified_search/public/actions/apply_filter_action.ts", + "deprecated": false, + "trackAdoption": false, + "isRequired": true + } + ], + "returnComment": [], + "initialIsOpen": false + }, { "parentPluginId": "unifiedSearch", "id": "def-public.createSearchBar", @@ -275,7 +426,7 @@ "section": "def-public.FilterItemsProps", "text": "FilterItemsProps" }, - ", \"filters\" | \"indexPatterns\" | \"readOnly\" | \"filtersForSuggestions\" | \"suggestionsAbstraction\" | \"onFiltersUpdated\" | \"hiddenPanelOptions\" | \"timeRangeForSuggestionsOverride\"> & React.RefAttributes & React.RefAttributes, any, any>>) => JSX.Element" + ", \"filters\" | \"indexPatterns\" | \"filtersForSuggestions\" | \"suggestionsAbstraction\" | \"onFiltersUpdated\" | \"hiddenPanelOptions\" | \"readOnly\" | \"timeRangeForSuggestionsOverride\">, any, any>>) => JSX.Element" ], "path": "src/plugins/unified_search/public/filter_bar/index.tsx", "deprecated": false, @@ -305,7 +456,7 @@ "section": "def-public.FilterItemsProps", "text": "FilterItemsProps" }, - ", \"filters\" | \"indexPatterns\" | \"readOnly\" | \"filtersForSuggestions\" | \"suggestionsAbstraction\" | \"onFiltersUpdated\" | \"hiddenPanelOptions\" | \"timeRangeForSuggestionsOverride\"> & React.RefAttributes & React.RefAttributes, any, any>>" + ", \"filters\" | \"indexPatterns\" | \"filtersForSuggestions\" | \"suggestionsAbstraction\" | \"onFiltersUpdated\" | \"hiddenPanelOptions\" | \"readOnly\" | \"timeRangeForSuggestionsOverride\">, any, any>>" ], "path": "src/plugins/unified_search/public/filter_bar/index.tsx", "deprecated": false, diff --git a/api_docs/unified_search.mdx b/api_docs/unified_search.mdx index 2af9c4d1aee5a..7633b0cfb30cc 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedSearch'] --- import unifiedSearchObj from './unified_search.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 | |-------------------|-----------|------------------------|-----------------| -| 142 | 2 | 104 | 22 | +| 148 | 2 | 110 | 22 | ## Client diff --git a/api_docs/unified_search_autocomplete.mdx b/api_docs/unified_search_autocomplete.mdx index abbd20438c48c..c033ea61bec71 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'unifiedSearch.autocomplete'] --- import unifiedSearchAutocompleteObj from './unified_search_autocomplete.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 | |-------------------|-----------|------------------------|-----------------| -| 142 | 2 | 104 | 22 | +| 148 | 2 | 110 | 22 | ## Client diff --git a/api_docs/uptime.mdx b/api_docs/uptime.mdx index 2c463d45f48b3..cf213b9f2eced 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: 2023-08-29 +date: 2023-08-30 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 595e139f1e17c..33e9924ad664d 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'urlForwarding'] --- import urlForwardingObj from './url_forwarding.devdocs.json'; diff --git a/api_docs/usage_collection.mdx b/api_docs/usage_collection.mdx index 91bde275ef5b2..ece078c1adbe1 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'usageCollection'] --- import usageCollectionObj from './usage_collection.devdocs.json'; diff --git a/api_docs/ux.mdx b/api_docs/ux.mdx index bc82604a8e09d..7ae4e23b17723 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: 2023-08-29 +date: 2023-08-30 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 d789cfa9d6ddd..e5607191b1215 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: 2023-08-29 +date: 2023-08-30 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 b7fbc17a2559b..a7db31eeea650 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: 2023-08-29 +date: 2023-08-30 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 e58463315b9c5..03ac632299fcd 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: 2023-08-29 +date: 2023-08-30 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 6501a0fb4648e..d68d8e8f14112 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: 2023-08-29 +date: 2023-08-30 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 d4313e88fa7ac..28d01dc4b52bc 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: 2023-08-29 +date: 2023-08-30 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 f59755691b08d..b955205dbefdb 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: 2023-08-29 +date: 2023-08-30 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 05e3730a4d31a..6f131685f4a88 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: 2023-08-29 +date: 2023-08-30 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 b103c87abbb3c..ceea35fd548c9 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: 2023-08-29 +date: 2023-08-30 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 0b3e8fc1048ed..cc808ace53f4c 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: 2023-08-29 +date: 2023-08-30 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 420f95794b21e..d60ee07f6d6cf 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: 2023-08-29 +date: 2023-08-30 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 2f2b9042c4947..baa48084a0597 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: 2023-08-29 +date: 2023-08-30 tags: ['contributor', 'dev', 'apidocs', 'kibana', 'visualizations'] --- import visualizationsObj from './visualizations.devdocs.json'; diff --git a/config/serverless.yml b/config/serverless.yml index c76e622d67547..8ecc498178d4c 100644 --- a/config/serverless.yml +++ b/config/serverless.yml @@ -17,11 +17,8 @@ migrations.algorithm: zdt # A longer migration time is acceptable due to the ZDT algorithm. migrations.batchSize: 250 -# temporarily allow to run the migration on UI nodes -# until the controller is able to spawn the migrator job/pod migrations.zdt: metaPickupSyncDelaySec: 5 - runOnRoles: ['ui'] # Ess plugins xpack.securitySolutionEss.enabled: false diff --git a/docs/api/role-management/put.asciidoc b/docs/api/role-management/put.asciidoc index b6338f79812a7..5061276078295 100644 --- a/docs/api/role-management/put.asciidoc +++ b/docs/api/role-management/put.asciidoc @@ -26,7 +26,7 @@ To use the create or update role API, you must have the `manage_security` cluste `elasticsearch`:: (Optional, object) {es} cluster and index privileges. Valid keys include - `cluster`, `indices`, and `run_as`. For more information, see + `cluster`, `indices`, `remote_indices`, and `run_as`. For more information, see {ref}/defining-roles.html[Defining roles]. `kibana`:: @@ -63,7 +63,7 @@ To use the create or update role API, you must have the `manage_security` cluste `204`:: Indicates a successful call. -'409':: +`409`:: When `createOnly` is true, indicates a conflict with an existing role. ==== Examples @@ -74,60 +74,32 @@ Grant access to various features in all spaces: -------------------------------------------------- $ curl -X PUT api/security/role/my_kibana_role { - "metadata" : { - "version" : 1 + "metadata": { + "version": 1 }, "elasticsearch": { - "cluster" : [ ], - "indices" : [ ] + "cluster": [ ], + "indices": [ ] }, "kibana": [ { - "base": [], + "base": [ ], "feature": { - "discover": [ - "all" - ], - "visualize": [ - "all" - ], - "dashboard": [ - "all" - ], - "dev_tools": [ - "read" - ], - "advancedSettings": [ - "read" - ], - "indexPatterns": [ - "read" - ], - "graph": [ - "all" - ], - "apm": [ - "read" - ], - "maps": [ - "read" - ], - "canvas": [ - "read" - ], - "infrastructure": [ - "all" - ], - "logs": [ - "all" - ], - "uptime": [ - "all" - ] + "discover": [ "all" ], + "visualize": [ "all" ], + "dashboard": [ "all" ], + "dev_tools": [ "read" ], + "advancedSettings": [ "read" ], + "indexPatterns": [ "read" ], + "graph": [ "all" ], + "apm": [ "read" ], + "maps": [ "read" ], + "canvas": [ "read" ], + "infrastructure": [ "all" ], + "logs": [ "all" ], + "uptime": [ "all" ] }, - "spaces": [ - "*" - ] + "spaces": [ "*" ] } ] } @@ -140,22 +112,20 @@ Grant dashboard-only access to only the Marketing space: -------------------------------------------------- $ curl -X PUT api/security/role/my_kibana_role { - "metadata" : { - "version" : 1 + "metadata": { + "version": 1 }, "elasticsearch": { - "cluster" : [ ], - "indices" : [ ] + "cluster": [ ], + "indices": [ ] }, "kibana": [ { - "base": [], + "base": [ ], "feature": { - "dashboard": ["read"] + "dashboard": [ "read" ] }, - "spaces": [ - "marketing" - ] + "spaces": [ "marketing" ] } ] } @@ -168,21 +138,18 @@ Grant full access to all features in the Default space: -------------------------------------------------- $ curl -X PUT api/security/role/my_kibana_role { - "metadata" : { - "version" : 1 + "metadata": { + "version": 1 }, "elasticsearch": { - "cluster" : [ ], - "indices" : [ ] + "cluster": [ ], + "indices": [ ] }, "kibana": [ { - "base": ["all"], - "feature": { - }, - "spaces": [ - "default" - ] + "base": [ "all" ], + "feature": { }, + "spaces": [ "default" ] } ] } @@ -195,30 +162,25 @@ Grant different access to different spaces: -------------------------------------------------- $ curl -X PUT api/security/role/my_kibana_role { - "metadata" : { - "version" : 1 + "metadata": { + "version": 1 }, "elasticsearch": { - "cluster" : [ ], - "indices" : [ ] + "cluster": [ ], + "indices": [ ] }, "kibana": [ { - "base": [], + "base": [ ], "feature": { - "discover": ["all"], - "dashboard": ["all"] + "discover": [ "all" ], + "dashboard": [ "all" ] }, - "spaces": [ - "default" - ] + "spaces": [ "default" ] }, { - "base": ["read"], - "spaces": [ - "marketing", - "sales" - ] + "base": [ "read"] , + "spaces": [ "marketing", "sales" ] } ] } @@ -231,28 +193,30 @@ Grant access to {kib} and {es}: -------------------------------------------------- $ curl -X PUT api/security/role/my_kibana_role { - "metadata" : { - "version" : 1 + "metadata": { + "version": 1 }, "elasticsearch": { - "cluster" : [ "all" ], - "indices" : [ { - "names" : [ "index1", "index2" ], - "privileges" : [ "all" ], - "field_security" : { - "grant" : [ "title", "body" ] - }, - "query" : "{\"match\": {\"title\": \"foo\"}}" - } ] + "cluster": [ "all" ], + "indices": [ + { + "names": [ "index1", "index2" ], + "privileges": [ "all" ] + } + ], + "remote_indices": [ + { + "clusters": [ "remote_cluster1" ], + "names": [ "remote_index1", "remote_index2" ], + "privileges": [ "all" ] + } + ] }, "kibana": [ { - "base": ["all"], - "feature": { - }, - "spaces": [ - "default" - ] + "base": [ "all" ], + "feature": { }, + "spaces": [ "default" ] } ] } diff --git a/docs/developer/advanced/sharing-saved-objects.asciidoc b/docs/developer/advanced/sharing-saved-objects.asciidoc index b221dbc275dd0..27fe81702cd2a 100644 --- a/docs/developer/advanced/sharing-saved-objects.asciidoc +++ b/docs/developer/advanced/sharing-saved-objects.asciidoc @@ -166,7 +166,7 @@ const savedObject = resolveResult.saved_object; TIP: See an example of this in https://github.com/elastic/kibana/pull/107256#user-content-example-steps[step 2 of the POC]! The -https://github.com/elastic/kibana/blob/main/docs/development/core/server/kibana-plugin-core-server.savedobjectsresolveresponse.md[SavedObjectsResolveResponse +{kib-repo}blob/{branch}/packages/core/saved-objects/core-saved-objects-api-server/src/apis/resolve.ts[SavedObjectsResolveResponse interface] has four fields, summarized below: * `saved_object` - The saved object that was found. @@ -373,7 +373,7 @@ image::images/sharing-saved-objects-step-6.png["Sharing Saved Objects registrati > *Update saved object delete API usage to handle multiple spaces* If an object is shared to multiple spaces, it cannot be deleted without using the -https://github.com/elastic/kibana/blob/{branch}/docs/development/core/server/kibana-plugin-core-server.savedobjectsdeleteoptions.md[`force` +{kib-repo}blob/{branch}/packages/core/saved-objects/core-saved-objects-api-server/src/apis/delete.ts[`force` delete option]. You should always be aware when a saved object exists in multiple spaces, and you should warn users in that case. If your UI allows users to delete your objects, you can define a warning message like this: @@ -477,7 +477,7 @@ return ( 2. Allow users to access your objects in the <> in <>. You can do this by ensuring that your objects are marked as - https://github.com/elastic/kibana/blob/{branch}/docs/development/core/server/kibana-plugin-core-server.savedobjectstypemanagementdefinition.md[importable and exportable] in your <>: + {kib-repo}blob/{branch}/packages/core/saved-objects/core-saved-objects-server/src/saved_objects_management.ts[importable and exportable] in your <>: + ```ts name: 'my-object-type', diff --git a/docs/developer/architecture/add-data-tutorials.asciidoc b/docs/developer/architecture/add-data-tutorials.asciidoc index 3f1b42c008ee7..7a756dd61b18f 100644 --- a/docs/developer/architecture/add-data-tutorials.asciidoc +++ b/docs/developer/architecture/add-data-tutorials.asciidoc @@ -16,7 +16,7 @@ Each tutorial contains three sets of instructions: The function must return a function object that conforms to the `TutorialSchema` interface link:{kib-repo}tree/{branch}/src/plugins/home/server/services/tutorials/lib/tutorial_schema.ts[tutorial schema]. 3. Register the tutorial in link:{kib-repo}tree/{branch}/src/plugins/home/server/tutorials/register.ts[register.ts] by adding it to the `builtInTutorials`. // TODO update path once assets are migrated -4. Add image assets to the link:{kib-repo}tree/{branch}/src/legacy/core_plugins/kibana/public/home/tutorial_resources[tutorial_resources directory]. +4. Add image assets to the `tutorial_resources` directory. 5. Run {kib} locally to preview the tutorial. 6. Create a PR and go through the review process to get the changes approved. @@ -34,5 +34,5 @@ link:{kib-repo}tree/{branch}/src/plugins/home/public/application/components/tuto ==== Markdown String values can contain limited Markdown syntax. -link:{kib-repo}tree/{branch}/src/legacy/core_plugins/kibana/public/home/components/tutorial/content.js[Enabled Markdown grammars] +https://elastic.github.io/eui/#/editors-syntax/markdown-format[Enabled Markdown grammars] diff --git a/docs/developer/architecture/development/csv-integration.asciidoc b/docs/developer/architecture/development/csv-integration.asciidoc index 8ccd33f5f24ed..45b4e50e06240 100644 --- a/docs/developer/architecture/development/csv-integration.asciidoc +++ b/docs/developer/architecture/development/csv-integration.asciidoc @@ -21,7 +21,7 @@ interface jobParameters { } ---- -The `searchRequest.body` should abide by the {ref}/search-request-body.html[Elasticsearch Search Request Body] syntax +The `searchRequest.body` should abide by the {ref}/search-search.html[Elasticsearch Search Request Body] syntax [float] ==== `export-config` Directive @@ -48,4 +48,4 @@ function getSharingTitle() string; ---- -The `sharingData.searchRequest.body` should abide by the {ref}/search-request-body.html[Elasticsearch Search Request Body] syntax \ No newline at end of file +The `sharingData.searchRequest.body` should abide by the {ref}/search-search.html[{es} Search Request Body] syntax \ No newline at end of file diff --git a/docs/developer/architecture/index.asciidoc b/docs/developer/architecture/index.asciidoc index 36be54a384b17..fa68f13939eb9 100644 --- a/docs/developer/architecture/index.asciidoc +++ b/docs/developer/architecture/index.asciidoc @@ -14,7 +14,7 @@ To begin plugin development, we recommend reading our overview of how plugins wo Our developer services are changing all the time. One of the best ways to discover and learn about them is to read the available READMEs inside our plugins folders: {kib-repo}tree/{branch}/src/plugins[src/plugins] and -{kib-repo}/tree/{branch}/x-pack/plugins[x-pack/plugins]. +{kib-repo}tree/{branch}/x-pack/plugins[x-pack/plugins]. A few services also automatically generate api documentation which can be browsed inside the {kib-repo}tree/{branch}/docs/development[docs/development section of our repo] diff --git a/docs/developer/architecture/kibana-platform-plugin-api.asciidoc b/docs/developer/architecture/kibana-platform-plugin-api.asciidoc index 58ad9665f8495..85fc05d0f9fd8 100644 --- a/docs/developer/architecture/kibana-platform-plugin-api.asciidoc +++ b/docs/developer/architecture/kibana-platform-plugin-api.asciidoc @@ -44,14 +44,14 @@ plugin and to specify if this plugin has server-side code, browser-side code, or } ---- -Learn about the {kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.pluginmanifest.md[manifest +Learn about the {kib-repo}blob/{branch}/packages/core/plugins/core-plugins-server/src/types.ts[manifest file format]. NOTE: `package.json` files are irrelevant to and ignored by {kib} for discovering and loading plugins. *[2] `public/index.ts`* is the entry point into the client-side code of this plugin. It must export a function named `plugin`, which will -receive {kib-repo}blob/{branch}/docs/development/core/public/kibana-plugin-core-public.plugininitializercontext.md[a standard set of core capabilities] as an argument. +receive {kib-repo}blob/{branch}/packages/core/plugins/core-plugins-browser/src/plugin_initializer.ts[a standard set of core capabilities] as an argument. It should return an instance of its plugin class for {kib} to load. @@ -93,7 +93,7 @@ export class MyPlugin implements Plugin { ---- *[4] `server/index.ts`* is the entry-point into the server-side code of -this plugin. {kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.plugininitializercontext.md[It is identical] in almost every way to the client-side +this plugin. {kib-repo}blob/{branch}/packages/core/plugins/core-plugins-server/src/types.ts[It is identical] in almost every way to the client-side entry-point: @@ -221,16 +221,16 @@ These are the contracts exposed by the core services for each lifecycle: |=== |lifecycle |server contract|browser contract |_constructor_ -|{kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.plugininitializercontext.md[PluginInitializerContext] -|{kib-repo}blob/{branch}/docs/development/core/public/kibana-plugin-core-public.plugininitializercontext.md[PluginInitializerContext] +|{kib-repo}blob/{branch}/packages/core/plugins/core-plugins-server/src/types.ts[PluginInitializerContext] +|{kib-repo}blob/{branch}/packages/core/plugins/core-plugins-browser/src/plugin_initializer.ts[PluginInitializerContext] |_setup_ -|{kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.coresetup.md[CoreSetup] -|{kib-repo}blob/{branch}/docs/development/core/public/kibana-plugin-core-public.coresetup.md[CoreSetup] +|{kib-repo}blob/{branch}/packages/core/lifecycle/core-lifecycle-server/src/core_setup.ts[CoreSetup] +|{kib-repo}blob/{branch}/packages/core/lifecycle/core-lifecycle-browser-internal/src/internal_core_setup.ts[CoreSetup] |_start_ -|{kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.corestart.md[CoreStart] -|{kib-repo}blob/{branch}/docs/development/core/public/kibana-plugin-core-public.corestart.md[CoreStart] +|{kib-repo}blob/{branch}/packages/core/lifecycle/core-lifecycle-server/src/core_start.ts[CoreStart] +|{kib-repo}blob/{branch}/packages/core/lifecycle/core-lifecycle-browser/src/core_start.ts[CoreStart] |_stop_ | |=== @@ -283,7 +283,7 @@ export class MyPlugin implements Plugin { Unlike core, capabilities exposed by plugins are _not_ automatically injected into all plugins. Instead, if a plugin wishes to use the public interface provided by another plugin, it must first declare that -plugin as a dependency in it's {kib-repo}blob/{branch}/docs/development/core/server/kibana-plugin-core-server.pluginmanifest.md[`kibana.json`] manifest file. +plugin as a dependency in it's {kib-repo}blob/{branch}/packages/core/plugins/core-plugins-server/src/types.ts[`kibana.json`] manifest file. *demo kibana.json:* diff --git a/docs/developer/architecture/security/feature-registration.asciidoc b/docs/developer/architecture/security/feature-registration.asciidoc index 4e0c220477faf..c9d173a6be6fb 100644 --- a/docs/developer/architecture/security/feature-registration.asciidoc +++ b/docs/developer/architecture/security/feature-registration.asciidoc @@ -39,7 +39,7 @@ Registering a feature consists of the following fields. For more information, co |A human readable name for your feature. |`category` (required) -|{kib-repo}blob/{branch}/src/core/types/app_category.ts[`AppCategory`] +|{kib-repo}blob/{branch}/packages/core/application/core-application-common/src/app_category.ts[`AppCategory`] |`DEFAULT_APP_CATEGORIES.kibana` |The `AppCategory` which best represents your feature. Used to organize the display of features within the management screens. @@ -50,12 +50,12 @@ of features within the management screens. |An array of applications this feature enables. Typically, all of your plugin's apps (from `uiExports`) will be included here. |`privileges` (required) -|{kib-repo}blob/{branch}/x-pack/plugins/features/common/feature.ts[`KibanaFeatureConfig`]. +|{kib-repo}blob/{branch}/x-pack/plugins/features/common/kibana_feature.ts[`KibanaFeatureConfig`]. |See <> and <> |The set of privileges this feature requires to function. |`subFeatures` (optional) -|{kib-repo}blob/{branch}/x-pack/plugins/features/common/feature.ts[`KibanaFeatureConfig`]. +|{kib-repo}blob/{branch}/x-pack/plugins/features/common/kibana_feature.ts[`KibanaFeatureConfig`]. |See <> |The set of subfeatures that enables finer access control than the `all` and `read` feature privileges. These options are only available in the Gold subscription level and higher. diff --git a/docs/developer/best-practices/index.asciidoc b/docs/developer/best-practices/index.asciidoc index afdd500fddc3f..57a10ee06a697 100644 --- a/docs/developer/best-practices/index.asciidoc +++ b/docs/developer/best-practices/index.asciidoc @@ -78,7 +78,7 @@ strategies] *** Use the `esSearchStrategy` to make raw queries to ES that will support async searching and partial results, as well as injecting the right advanced settings like whether to include frozen indices or not. -* {kib-repo}tree/{branch}/src/plugins/embeddable/README.asciidoc[Embeddables] +* {kib-repo}blob/{branch}/src/plugins/embeddable/README.md[Embeddables] ** Rendering maps, visualizations, dashboards in your application ** Register new widgets that will can be added to a dashboard or Canvas workpad, or rendered in another plugin. @@ -105,8 +105,8 @@ Eventually we want to guarantee to our plugin developers that their plugins will Any time you create or change a public API, keep this in mind, and consider potential backward compatibility issues. While we have a formal -{kib-repo}tree/{branch}/src/core/server/saved_objects/migrations/README.md[saved -object migration system] and are working on adding a formal state migration system, introducing state changes and migrations in a +saved +object migration system and are working on adding a formal state migration system, introducing state changes and migrations in a minor always comes with a risk. Consider this before making huge and risky changes in minors, _especially_ to saved objects. diff --git a/docs/developer/best-practices/navigation.asciidoc b/docs/developer/best-practices/navigation.asciidoc index e969f00c41eb1..20c52b40978c4 100644 --- a/docs/developer/best-practices/navigation.asciidoc +++ b/docs/developer/best-practices/navigation.asciidoc @@ -25,7 +25,7 @@ Assuming you want to link from your app to *Discover*. When building such URL th ==== Prepending a proper `basePath` -To prepend {kib}'s `basePath` use {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.ibasepath.prepend.md[core.http.basePath.prepend] helper: +To prepend {kib}'s `basePath` use {kib-repo}tree/{branch}/packages/core/http/core-http-browser-internal/src/base_path.ts[core.http.basePath.prepend] helper: [source,typescript jsx] ---- @@ -58,7 +58,7 @@ const discoverUrl = await plugins.discover.locator.getUrl({filters, timeRange}); await plugins.discover.locator.navigate({filters, timeRange}); ---- -To get a better idea, take a look at *Discover* locator {kib-repo}tree/{branch}/src/plugins/discover/public/locator.ts[implementation]. +To get a better idea, take a look at *Discover* locator {kib-repo}tree/{branch}/src/plugins/discover/public/application/doc/locator.ts[implementation]. It allows specifying various **Discover** app state pieces like: index pattern, filters, query, time range and more. There are two ways to access locators of other apps: @@ -87,12 +87,13 @@ window.location.href = urlToADashboard; To navigate between different {kib} apps without a page reload (by default) there are APIs in `core`: -* {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.applicationstart.navigatetoapp.md[core.application.navigateToApp] -* {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.applicationstart.navigatetourl.md[core.application.navigateToUrl] +* {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/contracts.ts[core.application.navigateToApp] +* {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/contracts.ts[core.application.navigateToUrl] Both methods offer customization such as opening the target in a new page, with an `options` parameter. All the options are optional be default. -* {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.navigatetoappoptions.md[core.application.navigateToApp options] -* {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.navigatetourloptions.md[core.application.navigateToUrl options] + +* {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/contracts.ts[core.application.navigateToApp options] +* {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/contracts.ts[core.application.navigateToUrl options] *Rendering a link to a different {kib} app on its own would also cause a full page reload:* @@ -162,8 +163,8 @@ Common rules to follow in this scenario: This is required to make sure `core` is aware of navigations triggered inside your app, so it could act accordingly when needed. -* `Core`'s {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.scopedhistory.md[ScopedHistory] instance. -* {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.appmountparameters.history.md[Example usage] +* `Core`'s {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/scoped_history.ts[ScopedHistory] instance. +* {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/app_mount.ts[Example usage] * {kib-repo}tree/{branch}/test/plugin_functional/plugins/core_plugin_a/public/application.tsx#L120[Example plugin] Relative links will be resolved relative to your app's route (e.g.: `http://localhost5601/app/{your-app-id}`) @@ -180,14 +181,14 @@ const MyInternalLink = () => === Using history and browser location Try to avoid using `window.location` and `window.history` directly. + -Instead, consider using {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.scopedhistory.md[ScopedHistory] +Instead, consider using {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/scoped_history.ts[ScopedHistory] instance provided by `core`. * This way `core` will know about location changes triggered within your app, and it would act accordingly. * Some plugins are listening to location changes. Triggering location change manually could lead to unpredictable and hard-to-catch bugs. Common use-case for using -`core`'s {kib-repo}tree/{branch}/docs/development/core/public/kibana-plugin-core-public.scopedhistory.md[ScopedHistory] directly: +`core`'s {kib-repo}tree/{branch}/packages/core/application/core-application-browser/src/scoped_history.ts[ScopedHistory] directly: * Reading/writing query params or hash. * Imperatively triggering internal navigations within your app. diff --git a/docs/developer/contributing/development-functional-tests.asciidoc b/docs/developer/contributing/development-functional-tests.asciidoc index 55bc6f6b8c398..d149372f0f572 100644 --- a/docs/developer/contributing/development-functional-tests.asciidoc +++ b/docs/developer/contributing/development-functional-tests.asciidoc @@ -118,7 +118,7 @@ The tests are written in https://mochajs.org[mocha] using https://github.com/ela We use https://www.w3.org/TR/webdriver1/[WebDriver Protocol] to run tests in both Chrome and Firefox with the help of https://sites.google.com/a/chromium.org/chromedriver/[chromedriver] and https://firefox-source-docs.mozilla.org/testing/geckodriver/[geckodriver]. When the `FunctionalTestRunner` launches, remote service creates a new webdriver session, which starts the driver and a stripped-down browser instance. We use `browser` service and `webElementWrapper` class to wrap up https://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/[Webdriver API]. -The `FunctionalTestRunner` automatically transpiles functional tests using babel, so that tests can use the same ECMAScript features that {kib} source code uses. See {kibana-blob}style_guides/js_style_guide.md[style_guides/js_style_guide.md]. +The `FunctionalTestRunner` automatically transpiles functional tests using babel, so that tests can use the same ECMAScript features that {kib} source code uses. See {kibana-blob}/STYLEGUIDE.mdx[STYLEGUIDE.mdx]. [discrete] ==== Definitions @@ -270,7 +270,7 @@ The first and only argument to all providers is a Provider API Object. This obje Within config files the API has the following properties [horizontal] -`log`::: An instance of the {kibana-blob}packages/kbn-dev-utils/src/tooling_log/tooling_log.js[`ToolingLog`] that is ready for use +`log`::: An instance of the `ToolingLog` that is ready for use `readConfigFile(path)`::: Returns a promise that will resolve to a Config instance that provides the values from the config file at `path` Within service and PageObject Providers the API is: @@ -293,17 +293,17 @@ Within a test Provider the API is exactly the same as the service providers API The `FunctionalTestRunner` comes with three built-in services: **config:**::: -* Source: {kibana-blob}src/functional_test_runner/lib/config/config.ts[src/functional_test_runner/lib/config/config.ts] -* Schema: {kibana-blob}src/functional_test_runner/lib/config/schema.ts[src/functional_test_runner/lib/config/schema.ts] +// * Source: {kibana-blob}src/functional_test_runner/lib/config/config.ts[src/functional_test_runner/lib/config/config.ts] +// * Schema: {kibana-blob}src/functional_test_runner/lib/config/schema.ts[src/functional_test_runner/lib/config/schema.ts] * Use `config.get(path)` to read any value from the config file **log:**::: -* Source: {kibana-blob}packages/kbn-dev-utils/src/tooling_log/tooling_log.js[packages/kbn-dev-utils/src/tooling_log/tooling_log.js] +// * Source: {kibana-blob}packages/kbn-dev-utils/src/tooling_log/tooling_log.js[packages/kbn-dev-utils/src/tooling_log/tooling_log.js] * `ToolingLog` instances are readable streams. The instance provided by this service is automatically piped to stdout by the `FunctionalTestRunner` CLI * `log.verbose()`, `log.debug()`, `log.info()`, `log.warning()` all work just like console.log but produce more organized output **lifecycle:**::: -* Source: {kibana-blob}src/functional_test_runner/lib/lifecycle.ts[src/functional_test_runner/lib/lifecycle.ts] +// * Source: {kibana-blob}src/functional_test_runner/lib/lifecycle.ts[src/functional_test_runner/lib/lifecycle.ts] * Designed primary for use in services * Exposes lifecycle events for basic coordination. Handlers can return a promise and resolve/fail asynchronously * Phases include: `beforeLoadTests`, `beforeTests`, `beforeEachTest`, `cleanup` @@ -314,14 +314,14 @@ The `FunctionalTestRunner` comes with three built-in services: The {kib} functional tests define the vast majority of the actual functionality used by tests. **browser**::: -* Source: {kibana-blob}test/functional/services/browser.ts[test/functional/services/browser.ts] +// * Source: {kibana-blob}test/functional/services/browser.ts[test/functional/services/browser.ts] * Higher level wrapper for `remote` service, which exposes available browser actions * Popular methods: ** `browser.getWindowSize()` ** `browser.refresh()` **testSubjects:**::: -* Source: {kibana-blob}test/functional/services/test_subjects.ts[test/functional/services/test_subjects.ts] +// * Source: {kibana-blob}test/functional/services/test_subjects.ts[test/functional/services/test_subjects.ts] * Test subjects are elements that are tagged specifically for selecting from tests * Use `testSubjects` over CSS selectors when possible * Usage: @@ -346,21 +346,21 @@ await testSubjects.click(‘containerButton’); ** `testSubjects.click(testSubjectSelector)` - Click a test subject in the page; throw if it can't be found after some time **find:**::: -* Source: {kibana-blob}test/functional/services/find.ts[test/functional/services/find.ts] +// * Source: {kibana-blob}test/functional/services/find.ts[test/functional/services/find.ts] * Helpers for `remote.findBy*` methods that log and manage timeouts * Popular methods: ** `find.byCssSelector()` ** `find.allByCssSelector()` **retry:**::: -* Source: {kibana-blob}test/common/services/retry/retry.ts[test/common/services/retry/retry.ts] +// * Source: {kibana-blob}test/common/services/retry/retry.ts[test/common/services/retry/retry.ts] * Helpers for retrying operations * Popular methods: ** `retry.try(fn, onFailureBlock)` - Execute `fn` in a loop until it succeeds or the default timeout elapses. The optional `onFailureBlock` is executed before each retry attempt. ** `retry.tryForTime(ms, fn, onFailureBlock)` - Execute `fn` in a loop until it succeeds or `ms` milliseconds elapses. The optional `onFailureBlock` is executed before each retry attempt. **kibanaServer:**::: -* Source: {kibana-blob}test/common/services/kibana_server/kibana_server.js[test/common/services/kibana_server/kibana_server.js] +// * Source: {kibana-blob}test/common/services/kibana_server/kibana_server.js[test/common/services/kibana_server/kibana_server.js] * Helpers for interacting with {kib}'s server * Commonly used methods: ** `kibanaServer.uiSettings.update()` @@ -368,7 +368,7 @@ await testSubjects.click(‘containerButton’); ** `kibanaServer.status.getOverallState()` **esArchiver:**::: -* Source: {kibana-blob}test/common/services/es_archiver.ts[test/common/services/es_archiver.ts] +// * Source: {kibana-blob}test/common/services/es_archiver.ts[test/common/services/es_archiver.ts] * Load/unload archives created with the `esArchiver` * Popular methods: ** `esArchiver.load(path)` @@ -380,11 +380,11 @@ Full list of services that are used in functional tests can be found here: {kiba **Low-level utilities:**::: * es -** Source: {kibana-blob}test/common/services/es.ts[test/common/services/es.ts] +// ** Source: {kibana-blob}test/common/services/es.ts[test/common/services/es.ts] ** {es} client ** Higher level options: `kibanaServer.uiSettings` or `esArchiver` * remote -** Source: {kibana-blob}test/functional/services/remote/remote.ts[test/functional/services/remote/remote.ts] +// ** Source: {kibana-blob}test/functional/services/remote/remote.ts[test/functional/services/remote/remote.ts] ** Instance of https://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/index_exports_WebDriver.html[WebDriver] class ** Responsible for all communication with the browser ** To perform browser actions, use `remote` service diff --git a/docs/developer/contributing/linting.asciidoc b/docs/developer/contributing/linting.asciidoc index 1cd56ab65b669..6470206aea0eb 100644 --- a/docs/developer/contributing/linting.asciidoc +++ b/docs/developer/contributing/linting.asciidoc @@ -2,7 +2,7 @@ == Linting A note about linting: We use http://eslint.org[eslint] to check that the -link:STYLEGUIDE.mdx[styleguide] is being followed. It runs in a +{kib-repo}blob/{branch}/STYLEGUIDE.mdx[styleguide] is being followed. It runs in a pre-commit hook and as a part of the tests, but most contributors integrate it with their code editors for real-time feedback. diff --git a/docs/developer/getting-started/index.asciidoc b/docs/developer/getting-started/index.asciidoc index 795cb45c3dfd9..aa78976058172 100644 --- a/docs/developer/getting-started/index.asciidoc +++ b/docs/developer/getting-started/index.asciidoc @@ -72,10 +72,7 @@ you can use: yarn kbn bootstrap --force-install ---- -(You can also run `yarn kbn` to see the other available commands. For -more info about this tool, see -{kib-repo}tree/{branch}/packages/kbn-pm[{kib-repo}tree/{branch}/packages/kbn-pm]. If you want more -information about how to actively develop over packages please read <>) +You can also run `yarn kbn` to see the other available commands. When switching branches which use different versions of npm packages you may need to run: diff --git a/docs/developer/plugin/external-plugin-functional-tests.asciidoc b/docs/developer/plugin/external-plugin-functional-tests.asciidoc index 349602bb4f276..ff5a9b60d976d 100644 --- a/docs/developer/plugin/external-plugin-functional-tests.asciidoc +++ b/docs/developer/plugin/external-plugin-functional-tests.asciidoc @@ -80,5 +80,5 @@ node ../../kibana/scripts/functional_test_runner [discrete] === Using esArchiver -We're working on documentation for this, but for now the best place to look is the original {kib-repo}/issues/10359[pull request]. +We're working on documentation for this, but for now the best place to look is the original {kib-repo}issues/10359[pull request]. diff --git a/docs/settings/alert-action-settings.asciidoc b/docs/settings/alert-action-settings.asciidoc index 692b309191b02..84ba3c73d3370 100644 --- a/docs/settings/alert-action-settings.asciidoc +++ b/docs/settings/alert-action-settings.asciidoc @@ -166,10 +166,26 @@ curl --verbose --proxytunnel --proxy http://localhost:8080 http://example.com -- `xpack.actions.proxyBypassHosts` {ess-icon}:: -Specifies hostnames which should not use the proxy, if using a proxy for actions. The value is an array of hostnames as strings. By default, all hosts will use the proxy, but if an action's hostname is in this list, the proxy will not be used. The settings `xpack.actions.proxyBypassHosts` and `xpack.actions.proxyOnlyHosts` cannot be used at the same time. +Specifies hostnames which should not use the proxy, if using a proxy for actions. The value is an array of hostnames as strings. Example: ++ +[source,yaml] +---- +# If applicable, include the subdomain in the hostname +xpack.actions.proxyBypassHosts: [ "events.pagerduty.com" ] +---- ++ +By default, all hosts will use the proxy, but if an action's hostname is in this list, the proxy will not be used. The settings `xpack.actions.proxyBypassHosts` and `xpack.actions.proxyOnlyHosts` cannot be used at the same time. `xpack.actions.proxyOnlyHosts` {ess-icon}:: -Specifies hostnames which should only use the proxy, if using a proxy for actions. The value is an array of hostnames as strings. By default, no hosts will use the proxy, but if an action's hostname is in this list, the proxy will be used. The settings `xpack.actions.proxyBypassHosts` and `xpack.actions.proxyOnlyHosts` cannot be used at the same time. +Specifies hostnames which should only use the proxy, if using a proxy for actions. The value is an array of hostnames as strings. Example: ++ +[source,yaml] +---- +# If applicable, include the subdomain in the hostname +xpack.actions.proxyOnlyHosts: [ "events.pagerduty.com" ] +---- ++ +By default, no hosts will use the proxy, but if an action's hostname is in this list, the proxy will be used. The settings `xpack.actions.proxyBypassHosts` and `xpack.actions.proxyOnlyHosts` cannot be used at the same time. `xpack.actions.proxyHeaders` {ess-icon}:: Specifies HTTP headers for the proxy, if using a proxy for actions. Default: {}. diff --git a/docs/user/security/authorization/index.asciidoc b/docs/user/security/authorization/index.asciidoc index 7127ebf84ae9b..d510508da63e8 100644 --- a/docs/user/security/authorization/index.asciidoc +++ b/docs/user/security/authorization/index.asciidoc @@ -75,6 +75,26 @@ NOTE: {kib} automatically surrounds your DLS query with a `query` block, so you [role="screenshot"] image::security/images/create-role-dls-example.png[Create role with DLS index privileges] +[[adding_remote_index_privileges]] +==== Remote index privileges + +If you have at least a platinum license, you can manage access to indices in remote clusters. + +You can assign the same privileges, document-level, and field-level as for <>. + +[[remote_index_privilege_example_1]] +===== Example: Grant access to indices in remote clusters + +. Go to **Stack Management > Roles**, and then click **Create role**. +. In **Remote index privileges**, enter: +.. The name of your remote cluster in the **Remote clusters** field. +.. The name of the index in your remote cluster in the **Remote indices** field. +.. The allowed actions in the **Privileges** field. (e.g. `read` and `view_index_metadata`) + +[role="screenshot"] +image::security/images/create-role-remote-index-example.png[Create role with remote index privileges] + + [[adding_kibana_privileges]] ==== {kib} privileges diff --git a/docs/user/security/images/create-role-dls-example.png b/docs/user/security/images/create-role-dls-example.png index 02b91ccf8820e..0899fce010146 100644 Binary files a/docs/user/security/images/create-role-dls-example.png and b/docs/user/security/images/create-role-dls-example.png differ diff --git a/docs/user/security/images/create-role-index-example.png b/docs/user/security/images/create-role-index-example.png index 8f95a74194274..68c833b244525 100644 Binary files a/docs/user/security/images/create-role-index-example.png and b/docs/user/security/images/create-role-index-example.png differ diff --git a/docs/user/security/images/create-role-remote-index-example.png b/docs/user/security/images/create-role-remote-index-example.png new file mode 100644 index 0000000000000..8008c8efd65c6 Binary files /dev/null and b/docs/user/security/images/create-role-remote-index-example.png differ diff --git a/package.json b/package.json index fc076f17b7407..29f34767ba409 100644 --- a/package.json +++ b/package.json @@ -90,6 +90,7 @@ "dependencies": { "@appland/sql-parser": "^1.5.1", "@babel/runtime": "^7.21.0", + "@cfworker/json-schema": "^1.12.7", "@dnd-kit/core": "^3.1.1", "@dnd-kit/sortable": "^4.0.0", "@dnd-kit/utilities": "^2.0.0", diff --git a/packages/core/plugins/core-plugins-browser-mocks/src/plugins_service.mock.ts b/packages/core/plugins/core-plugins-browser-mocks/src/plugins_service.mock.ts index 56ea09aed483c..8342476961267 100644 --- a/packages/core/plugins/core-plugins-browser-mocks/src/plugins_service.mock.ts +++ b/packages/core/plugins/core-plugins-browser-mocks/src/plugins_service.mock.ts @@ -10,6 +10,7 @@ import type { PublicMethodsOf } from '@kbn/utility-types'; import { loggerMock } from '@kbn/logging-mocks'; import type { PluginInitializerContext } from '@kbn/core-plugins-browser'; import type { PluginsService, PluginsServiceSetup } from '@kbn/core-plugins-browser-internal'; +import type { BuildFlavor } from '@kbn/config/src/types'; const createSetupContractMock = () => { const setupContract: jest.Mocked = { @@ -27,7 +28,10 @@ const createStartContractMock = () => { return startContract as PluginsServiceSetup; }; -const createPluginInitializerContextMock = (config: unknown = {}) => { +const createPluginInitializerContextMock = ( + config: unknown = {}, + { buildFlavor = 'serverless' }: { buildFlavor?: BuildFlavor } = {} +) => { const mock: PluginInitializerContext = { opaqueId: Symbol(), env: { @@ -43,7 +47,7 @@ const createPluginInitializerContextMock = (config: unknown = {}) => { buildSha: 'buildSha', dist: false, buildDate: new Date('2023-05-15T23:12:09.000Z'), - buildFlavor: 'serverless', + buildFlavor, }, }, logger: loggerMock.create(), diff --git a/packages/core/plugins/core-plugins-browser-mocks/tsconfig.json b/packages/core/plugins/core-plugins-browser-mocks/tsconfig.json index 6b14fa13dd8b5..6413be0063abe 100644 --- a/packages/core/plugins/core-plugins-browser-mocks/tsconfig.json +++ b/packages/core/plugins/core-plugins-browser-mocks/tsconfig.json @@ -16,6 +16,7 @@ "@kbn/logging-mocks", "@kbn/core-plugins-browser-internal", "@kbn/core-plugins-browser", + "@kbn/config", ], "exclude": [ "target/**/*", diff --git a/packages/core/test-helpers/core-test-helpers-kbn-server/src/create_serverless_root.ts b/packages/core/test-helpers/core-test-helpers-kbn-server/src/create_serverless_root.ts index 4e5ac0de487b5..0562112218455 100644 --- a/packages/core/test-helpers/core-test-helpers-kbn-server/src/create_serverless_root.ts +++ b/packages/core/test-helpers/core-test-helpers-kbn-server/src/create_serverless_root.ts @@ -113,22 +113,44 @@ const getServerlessESClient = () => { }); }; -const defaults = { - server: { - restrictInternalApis: true, - versioned: { - versionResolution: 'newest', - strictClientVersionCheck: false, +const getServerlessDefault = () => { + return { + server: { + restrictInternalApis: true, + versioned: { + versionResolution: 'newest', + strictClientVersionCheck: false, + }, + }, + migrations: { + algorithm: 'zdt', + zdt: { + runOnRoles: ['ui'], + }, + }, + logging: { + loggers: [ + { + name: 'root', + level: 'error', + appenders: ['console'], + }, + { + name: 'elasticsearch.deprecation', + level: 'all', + appenders: ['deprecation'], + }, + ], + appenders: { + deprecation: { type: 'console', layout: { type: 'json' } }, + console: { type: 'console', layout: { type: 'pattern' } }, + }, }, - }, - migrations: { - algorithm: 'zdt', - }, - elasticsearch: { - serviceAccountToken: 'BEEF', - }, + }; }; - function createServerlessKibana(settings = {}, cliArgs: Partial = {}) { - return createRoot(defaultsDeep(settings, defaults), { ...cliArgs, serverless: true }); + return createRoot(defaultsDeep(settings, getServerlessDefault()), { + ...cliArgs, + serverless: true, + }); } diff --git a/packages/kbn-alerts-as-data-utils/index.ts b/packages/kbn-alerts-as-data-utils/index.ts index 1194f863e2d85..81562c54b9e88 100644 --- a/packages/kbn-alerts-as-data-utils/index.ts +++ b/packages/kbn-alerts-as-data-utils/index.ts @@ -8,3 +8,4 @@ export * from './src/field_maps'; export * from './src/schemas'; +export * from './src/search'; diff --git a/packages/kbn-alerts-as-data-utils/jest.config.js b/packages/kbn-alerts-as-data-utils/jest.config.js new file mode 100644 index 0000000000000..347db52d6e768 --- /dev/null +++ b/packages/kbn-alerts-as-data-utils/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/kbn-alerts-as-data-utils'], +}; diff --git a/packages/kbn-alerts-as-data-utils/src/search/index.ts b/packages/kbn-alerts-as-data-utils/src/search/index.ts new file mode 100644 index 0000000000000..b522c3c3dbf0d --- /dev/null +++ b/packages/kbn-alerts-as-data-utils/src/search/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 { buildAlertFieldsRequest, ALERT_EVENTS_FIELDS } from './security'; diff --git a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/build_fields_request.test.ts b/packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.test.ts similarity index 51% rename from x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/build_fields_request.test.ts rename to packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.test.ts index b321516cde1a8..617d28b1acdcb 100644 --- a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/build_fields_request.test.ts +++ b/packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.test.ts @@ -1,34 +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; 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 { buildFieldsRequest } from './build_fields_request'; -import { TIMELINE_EVENTS_FIELDS } from './constants'; + +import { buildAlertFieldsRequest } from './build_fields_request'; +import { ALERT_EVENTS_FIELDS } from './fields'; describe('buildFieldsRequest', () => { it('should include ecs fields by default', () => { const fields: string[] = []; - const fieldsRequest = buildFieldsRequest(fields); - expect(fieldsRequest).toHaveLength(TIMELINE_EVENTS_FIELDS.length); + const fieldsRequest = buildAlertFieldsRequest(fields); + expect(fieldsRequest).toHaveLength(ALERT_EVENTS_FIELDS.length); }); it('should not show ecs fields', () => { const fields: string[] = []; - const fieldsRequest = buildFieldsRequest(fields, true); + const fieldsRequest = buildAlertFieldsRequest(fields, true); expect(fieldsRequest).toHaveLength(0); }); it('should map the expected (non underscore prefixed) fields', () => { const fields = ['_dontShow1', '_dontShow2', 'showsup']; - const fieldsRequest = buildFieldsRequest(fields, true); + const fieldsRequest = buildAlertFieldsRequest(fields, true); expect(fieldsRequest).toEqual([{ field: 'showsup', include_unmapped: true }]); }); it('should map provided fields with ecs fields', () => { const fields = ['showsup']; - const fieldsRequest = buildFieldsRequest(fields); - expect(fieldsRequest).toHaveLength(TIMELINE_EVENTS_FIELDS.length + fields.length); + const fieldsRequest = buildAlertFieldsRequest(fields); + expect(fieldsRequest).toHaveLength(ALERT_EVENTS_FIELDS.length + fields.length); }); }); diff --git a/packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.ts b/packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.ts new file mode 100644 index 0000000000000..07adb71f4a4c0 --- /dev/null +++ b/packages/kbn-alerts-as-data-utils/src/search/security/build_fields_request.ts @@ -0,0 +1,24 @@ +/* + * 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 { uniq } from 'lodash/fp'; +import { ALERT_EVENTS_FIELDS } from './fields'; + +export const buildAlertFieldsRequest = (fields: string[], excludeEcsData?: boolean) => + uniq([ + ...fields.filter((field) => !field.startsWith('_')), + ...(excludeEcsData ? [] : ALERT_EVENTS_FIELDS), + ]).map((field) => ({ + field, + include_unmapped: true, + ...(field === '@timestamp' + ? { + format: 'strict_date_optional_time', + } + : {}), + })); diff --git a/packages/kbn-alerts-as-data-utils/src/search/security/fields.ts b/packages/kbn-alerts-as-data-utils/src/search/security/fields.ts new file mode 100644 index 0000000000000..b3be5cbb62a1a --- /dev/null +++ b/packages/kbn-alerts-as-data-utils/src/search/security/fields.ts @@ -0,0 +1,289 @@ +/* + * 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 { + ALERT_RULE_CONSUMER, + ALERT_RISK_SCORE, + ALERT_SEVERITY, + ALERT_RULE_PARAMETERS, + ALERT_WORKFLOW_TAGS, +} from '@kbn/rule-data-utils'; + +const ENRICHMENT_DESTINATION_PATH = 'threat.enrichments'; + +const MATCHED_ATOMIC = 'matched.atomic'; +const MATCHED_FIELD = 'matched.field'; +const MATCHED_TYPE = 'matched.type'; + +const INDICATOR_MATCHED_ATOMIC = `${ENRICHMENT_DESTINATION_PATH}.${MATCHED_ATOMIC}`; +const INDICATOR_MATCHED_FIELD = `${ENRICHMENT_DESTINATION_PATH}.${MATCHED_FIELD}`; +const INDICATOR_MATCHED_TYPE = `${ENRICHMENT_DESTINATION_PATH}.${MATCHED_TYPE}`; + +const PROVIDER = 'indicator.provider'; +const REFERENCE = 'indicator.reference'; +const FEED_NAME = 'feed.name'; + +const INDICATOR_PROVIDER = `${ENRICHMENT_DESTINATION_PATH}.${PROVIDER}`; +const INDICATOR_REFERENCE = `${ENRICHMENT_DESTINATION_PATH}.${REFERENCE}`; +const FEED_NAME_REFERENCE = `${ENRICHMENT_DESTINATION_PATH}.${FEED_NAME}`; + +const CTI_ROW_RENDERER_FIELDS = [ + INDICATOR_MATCHED_ATOMIC, + INDICATOR_MATCHED_FIELD, + INDICATOR_MATCHED_TYPE, + INDICATOR_REFERENCE, + INDICATOR_PROVIDER, + FEED_NAME_REFERENCE, +]; + +// TODO: update all of these fields to use the constants from technical field names +export const ALERT_EVENTS_FIELDS = [ + ALERT_RULE_CONSUMER, + '@timestamp', + 'kibana.alert.ancestors.index', + 'kibana.alert.workflow_status', + ALERT_WORKFLOW_TAGS, + 'kibana.alert.group.id', + 'kibana.alert.original_time', + 'kibana.alert.reason', + 'kibana.alert.rule.from', + 'kibana.alert.rule.name', + 'kibana.alert.rule.to', + 'kibana.alert.rule.uuid', + 'kibana.alert.rule.rule_id', + 'kibana.alert.rule.type', + 'kibana.alert.original_event.kind', + 'kibana.alert.original_event.module', + 'kibana.alert.rule.version', + ALERT_SEVERITY, + ALERT_RISK_SCORE, + ALERT_RULE_PARAMETERS, + 'kibana.alert.threshold_result', + 'kibana.alert.building_block_type', + 'kibana.alert.suppression.docs_count', + 'event.code', + 'event.module', + 'event.action', + 'event.category', + 'host.name', + 'user.name', + 'source.ip', + 'destination.ip', + 'message', + 'system.auth.ssh.signature', + 'system.auth.ssh.method', + 'system.audit.package.arch', + 'system.audit.package.entity_id', + 'system.audit.package.name', + 'system.audit.package.size', + 'system.audit.package.summary', + 'system.audit.package.version', + 'event.created', + 'event.dataset', + 'event.duration', + 'event.end', + 'event.hash', + 'event.id', + 'event.kind', + 'event.original', + 'event.outcome', + 'event.risk_score', + 'event.risk_score_norm', + 'event.severity', + 'event.start', + 'event.timezone', + 'event.type', + 'agent.type', + 'agent.id', + 'auditd.result', + 'auditd.session', + 'auditd.data.acct', + 'auditd.data.terminal', + 'auditd.data.op', + 'auditd.summary.actor.primary', + 'auditd.summary.actor.secondary', + 'auditd.summary.object.primary', + 'auditd.summary.object.secondary', + 'auditd.summary.object.type', + 'auditd.summary.how', + 'auditd.summary.message_type', + 'auditd.summary.sequence', + 'file.Ext.original.path', + 'file.name', + 'file.target_path', + 'file.extension', + 'file.type', + 'file.device', + 'file.inode', + 'file.uid', + 'file.owner', + 'file.gid', + 'file.group', + 'file.mode', + 'file.size', + 'file.mtime', + 'file.ctime', + 'file.path', + // NOTE: 7.10+ file.Ext.code_signature populated + // as array of objects, prior to that populated as + // single object + 'file.Ext.code_signature', + 'file.Ext.code_signature.subject_name', + 'file.Ext.code_signature.trusted', + 'file.hash.sha256', + 'host.os.family', + 'host.os.name', + 'host.id', + 'host.ip', + 'registry.key', + 'registry.path', + 'rule.reference', + 'source.bytes', + 'source.packets', + 'source.port', + 'source.geo.continent_name', + 'source.geo.country_name', + 'source.geo.country_iso_code', + 'source.geo.city_name', + 'source.geo.region_iso_code', + 'source.geo.region_name', + 'destination.bytes', + 'destination.packets', + 'destination.port', + 'destination.geo.continent_name', + 'destination.geo.country_name', + 'destination.geo.country_iso_code', + 'destination.geo.city_name', + 'destination.geo.region_iso_code', + 'destination.geo.region_name', + 'dns.question.name', + 'dns.question.type', + 'dns.resolved_ip', + 'dns.response_code', + 'endgame.exit_code', + 'endgame.file_name', + 'endgame.file_path', + 'endgame.logon_type', + 'endgame.parent_process_name', + 'endgame.pid', + 'endgame.process_name', + 'endgame.subject_domain_name', + 'endgame.subject_logon_id', + 'endgame.subject_user_name', + 'endgame.target_domain_name', + 'endgame.target_logon_id', + 'endgame.target_user_name', + 'kibana.alert.rule.timeline_id', + 'kibana.alert.rule.timeline_title', + 'kibana.alert.rule.note', + 'kibana.alert.rule.exceptions_list', + 'kibana.alert.rule.building_block_type', + 'suricata.eve.proto', + 'suricata.eve.flow_id', + 'suricata.eve.alert.signature', + 'suricata.eve.alert.signature_id', + 'network.bytes', + 'network.community_id', + 'network.direction', + 'network.packets', + 'network.protocol', + 'network.transport', + 'http.version', + 'http.request.method', + 'http.request.body.bytes', + 'http.request.body.content', + 'http.request.referrer', + 'http.response.status_code', + 'http.response.body.bytes', + 'http.response.body.content', + 'tls.client_certificate.fingerprint.sha1', + 'tls.fingerprints.ja3.hash', + 'tls.server_certificate.fingerprint.sha1', + 'user.domain', + 'winlog.event_id', + 'process.end', + 'process.entry_leader.entry_meta.type', + 'process.entry_leader.entry_meta.source.ip', + 'process.exit_code', + 'process.hash.md5', + 'process.hash.sha1', + 'process.hash.sha256', + 'process.interactive', + 'process.parent.name', + 'process.parent.pid', + 'process.pid', + 'process.name', + 'process.ppid', + 'process.args', + 'process.entity_id', + 'process.executable', + 'process.start', + 'process.title', + 'process.working_directory', + 'process.entry_leader.entity_id', + 'process.entry_leader.name', + 'process.entry_leader.pid', + 'process.entry_leader.start', + 'process.session_leader.entity_id', + 'process.session_leader.name', + 'process.session_leader.pid', + 'process.group_leader.entity_id', + 'process.group_leader.name', + 'process.group_leader.pid', + 'zeek.session_id', + 'zeek.connection.local_resp', + 'zeek.connection.local_orig', + 'zeek.connection.missed_bytes', + 'zeek.connection.state', + 'zeek.connection.history', + 'zeek.notice.suppress_for', + 'zeek.notice.msg', + 'zeek.notice.note', + 'zeek.notice.sub', + 'zeek.notice.dst', + 'zeek.notice.dropped', + 'zeek.notice.peer_descr', + 'zeek.dns.AA', + 'zeek.dns.qclass_name', + 'zeek.dns.RD', + 'zeek.dns.qtype_name', + 'zeek.dns.qtype', + 'zeek.dns.query', + 'zeek.dns.trans_id', + 'zeek.dns.qclass', + 'zeek.dns.RA', + 'zeek.dns.TC', + 'zeek.http.resp_mime_types', + 'zeek.http.trans_depth', + 'zeek.http.status_msg', + 'zeek.http.resp_fuids', + 'zeek.http.tags', + 'zeek.files.session_ids', + 'zeek.files.timedout', + 'zeek.files.local_orig', + 'zeek.files.tx_host', + 'zeek.files.source', + 'zeek.files.is_orig', + 'zeek.files.overflow_bytes', + 'zeek.files.sha1', + 'zeek.files.duration', + 'zeek.files.depth', + 'zeek.files.analyzers', + 'zeek.files.mime_type', + 'zeek.files.rx_host', + 'zeek.files.total_bytes', + 'zeek.files.fuid', + 'zeek.files.seen_bytes', + 'zeek.files.missing_bytes', + 'zeek.files.md5', + 'zeek.ssl.cipher', + 'zeek.ssl.established', + 'zeek.ssl.resumed', + 'zeek.ssl.version', + ...CTI_ROW_RENDERER_FIELDS, +]; diff --git a/packages/kbn-alerts-as-data-utils/src/search/security/index.ts b/packages/kbn-alerts-as-data-utils/src/search/security/index.ts new file mode 100644 index 0000000000000..0a2b57e8f29ec --- /dev/null +++ b/packages/kbn-alerts-as-data-utils/src/search/security/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 { buildAlertFieldsRequest } from './build_fields_request'; +export { ALERT_EVENTS_FIELDS } from './fields'; diff --git a/packages/kbn-search-api-panels/components/ingest_data.tsx b/packages/kbn-search-api-panels/components/ingest_data.tsx index 11f42fb6e7833..d25f7a74d05e3 100644 --- a/packages/kbn-search-api-panels/components/ingest_data.tsx +++ b/packages/kbn-search-api-panels/components/ingest_data.tsx @@ -25,7 +25,7 @@ interface IngestDataProps { beats: string; connectors: string; integrations: string; - logStash: string; + logstash: string; }; assetBasePath: string; application?: ApplicationStart; diff --git a/packages/kbn-search-api-panels/components/integrations_panel.tsx b/packages/kbn-search-api-panels/components/integrations_panel.tsx index 6d8e2e70526e1..6f612be4dd101 100644 --- a/packages/kbn-search-api-panels/components/integrations_panel.tsx +++ b/packages/kbn-search-api-panels/components/integrations_panel.tsx @@ -24,7 +24,7 @@ import { LEARN_MORE_LABEL } from '../constants'; import { GithubLink } from './github_link'; export interface IntegrationsPanelProps { - docLinks: { beats: string; connectors: string; logStash: string }; + docLinks: { beats: string; connectors: string; logstash: string }; assetBasePath: string; } @@ -61,7 +61,7 @@ export const IntegrationsPanel: React.FC = ({ - + {LEARN_MORE_LABEL} diff --git a/packages/kbn-test/jest-preset.js b/packages/kbn-test/jest-preset.js index bbe3cb2923280..ed5a174e2db80 100644 --- a/packages/kbn-test/jest-preset.js +++ b/packages/kbn-test/jest-preset.js @@ -105,7 +105,7 @@ module.exports = { transformIgnorePatterns: [ // ignore all node_modules except monaco-editor and react-monaco-editor which requires babel transforms to handle dynamic import() // since ESM modules are not natively supported in Jest yet (https://github.com/facebook/jest/issues/4842) - '[/\\\\]node_modules(?![\\/\\\\](byte-size|monaco-editor|monaco-yaml|vscode-languageserver-types|react-monaco-editor|d3-interpolate|d3-color|langchain|langsmith))[/\\\\].+\\.js$', + '[/\\\\]node_modules(?![\\/\\\\](byte-size|monaco-editor|monaco-yaml|vscode-languageserver-types|react-monaco-editor|d3-interpolate|d3-color|langchain|langsmith|@cfworker))[/\\\\].+\\.js$', 'packages/kbn-pm/dist/index.js', '[/\\\\]node_modules(?![\\/\\\\](langchain|langsmith))/dist/[/\\\\].+\\.js$', '[/\\\\]node_modules(?![\\/\\\\](langchain|langsmith))/dist/util/[/\\\\].+\\.js$', diff --git a/src/plugins/expressions/README.asciidoc b/src/plugins/expressions/README.asciidoc index 569c06c7e61bb..6ea4d7f49cbd8 100644 --- a/src/plugins/expressions/README.asciidoc +++ b/src/plugins/expressions/README.asciidoc @@ -44,6 +44,8 @@ filters [role="screenshot"] image::https://user-images.githubusercontent.com/9773803/74162514-3250a880-4c21-11ea-9e68-86f66862a183.png[] +//// +// Commenting out due to broken links === API documentation ==== Server API @@ -57,3 +59,4 @@ https://github.com/elastic/kibana/blob/main/docs/development/plugins/expressions ==== Other documentation https://www.elastic.co/guide/en/kibana/current/canvas-function-arguments.html[See Canvas documentation about expressions] +//// diff --git a/src/plugins/files/server/file_client/integration_tests/es_file_client.test.ts b/src/plugins/files/server/file_client/integration_tests/es_file_client.test.ts index 91d9e543ec850..cbe80422e388b 100644 --- a/src/plugins/files/server/file_client/integration_tests/es_file_client.test.ts +++ b/src/plugins/files/server/file_client/integration_tests/es_file_client.test.ts @@ -13,15 +13,34 @@ import { createEsFileClient } from '../create_es_file_client'; import { FileClient } from '../types'; import { FileMetadata } from '../../../common'; -// FLAKY: https://github.com/elastic/kibana/issues/144505 -// FLAKY: https://github.com/elastic/kibana/issues/144506 -describe.skip('ES-index-backed file client', () => { +describe('ES-index-backed file client', () => { let esClient: TestEnvironmentUtils['esClient']; let fileClient: FileClient; let testHarness: TestEnvironmentUtils; const blobStorageIndex = '.kibana-test-blob'; const metadataIndex = '.kibana-test-metadata'; + const deleteFile = async ({ + id, + hasContent, + refreshIndex = true, + }: { + id: string; + hasContent?: boolean; + refreshIndex?: boolean; + }) => { + if (refreshIndex) { + try { + // Make sure to refresh the index before deleting the file to avoid an conflict error thrown by + // ES when deleting by query documents that don't exist yet. + await esClient.indices.refresh({ index: blobStorageIndex }); + } catch (e) { + // Silently fail if the index does not exist + } + } + await fileClient.delete({ id, hasContent }); + }; + beforeAll(async () => { testHarness = await setupIntegrationEnvironment(); ({ esClient } = testHarness); @@ -57,7 +76,7 @@ describe.skip('ES-index-backed file client', () => { name: 'cool name', }) ); - await fileClient.delete({ id: file.id, hasContent: false }); + await deleteFile({ id: file.id, hasContent: false }); }); test('uploads and downloads file content', async () => { @@ -75,7 +94,7 @@ describe.skip('ES-index-backed file client', () => { } expect(Buffer.concat(chunks).toString('utf-8')).toBe('test'); - await fileClient.delete({ id: file.id, hasContent: true }); + await deleteFile({ id: file.id, hasContent: true }); }); test('searches across files', async () => { @@ -150,10 +169,12 @@ describe.skip('ES-index-backed file client', () => { ); } + await esClient.indices.refresh({ index: blobStorageIndex }); + await Promise.all([ - fileClient.delete({ id: id1 }), - fileClient.delete({ id: id2 }), - fileClient.delete({ id: file3.id }), + deleteFile({ id: id1, refreshIndex: false }), + deleteFile({ id: id2, refreshIndex: false }), + deleteFile({ id: file3.id, refreshIndex: false }), ]); }); @@ -197,9 +218,11 @@ describe.skip('ES-index-backed file client', () => { }) ); + await esClient.indices.refresh({ index: blobStorageIndex }); + await Promise.all([ - fileClient.delete({ id: id1, hasContent: false }), - fileClient.delete({ id: id2, hasContent: false }), + deleteFile({ id: id1, hasContent: false, refreshIndex: false }), + deleteFile({ id: id2, hasContent: false, refreshIndex: false }), ]); }); }); diff --git a/test/functional/fixtures/es_archiver/saved_objects_management/hidden_types/data.json b/test/functional/fixtures/es_archiver/saved_objects_management/hidden_types/data.json index 3dfde2c248862..d4929d3201878 100644 --- a/test/functional/fixtures/es_archiver/saved_objects_management/hidden_types/data.json +++ b/test/functional/fixtures/es_archiver/saved_objects_management/hidden_types/data.json @@ -9,7 +9,6 @@ "title": "hidden object 1" }, "type": "test-actions-export-hidden", - "migrationVersion": {}, "updated_at": "2018-12-21T00:43:07.096Z" } } @@ -26,7 +25,6 @@ "title": "hidden object 2" }, "type": "test-actions-export-hidden", - "migrationVersion": {}, "updated_at": "2018-12-21T00:43:07.096Z" } } diff --git a/test/plugin_functional/test_suites/saved_objects_management/hidden_types.ts b/test/plugin_functional/test_suites/saved_objects_management/hidden_types.ts index 439ece04e615f..8e7adb504ebee 100644 --- a/test/plugin_functional/test_suites/saved_objects_management/hidden_types.ts +++ b/test/plugin_functional/test_suites/saved_objects_management/hidden_types.ts @@ -21,8 +21,7 @@ export default function ({ getService, getPageObjects }: PluginFunctionalProvide const esArchiver = getService('esArchiver'); const testSubjects = getService('testSubjects'); - // Failing: See https://github.com/elastic/kibana/issues/116059 - describe.skip('saved objects management with hidden types', () => { + describe('saved objects management with hidden types', () => { before(async () => { await esArchiver.load( 'test/functional/fixtures/es_archiver/saved_objects_management/hidden_types' diff --git a/x-pack/plugins/actions/common/routes/connector/apis/connector_types/index.ts b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/index.ts new file mode 100644 index 0000000000000..b4d93fc1be5e6 --- /dev/null +++ b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +export { connectorTypesQuerySchema } from './schemas/latest'; +export type { ConnectorTypesRequestQuery } from './types/latest'; + +export { connectorTypesQuerySchema as connectorTypesQuerySchemaV1 } from './schemas/v1'; +export type { ConnectorTypesRequestQuery as ConnectorTypesRequestQueryV1 } from './types/v1'; diff --git a/x-pack/plugins/actions/common/routes/connector/apis/connector_types/schemas/latest.ts b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/schemas/latest.ts new file mode 100644 index 0000000000000..25300c97a6d2e --- /dev/null +++ b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/schemas/latest.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export * from './v1'; diff --git a/x-pack/plugins/actions/common/routes/connector/apis/connector_types/schemas/v1.ts b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/schemas/v1.ts new file mode 100644 index 0000000000000..bdbc01efc4b7a --- /dev/null +++ b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/schemas/v1.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { schema } from '@kbn/config-schema'; + +export const connectorTypesQuerySchema = schema.object({ + feature_id: schema.maybe(schema.string()), +}); diff --git a/x-pack/plugins/actions/common/routes/connector/apis/connector_types/types/latest.ts b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/types/latest.ts new file mode 100644 index 0000000000000..25300c97a6d2e --- /dev/null +++ b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/types/latest.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export * from './v1'; diff --git a/x-pack/plugins/actions/common/routes/connector/apis/connector_types/types/v1.ts b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/types/v1.ts new file mode 100644 index 0000000000000..cef43f8b41b18 --- /dev/null +++ b/x-pack/plugins/actions/common/routes/connector/apis/connector_types/types/v1.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import type { TypeOf } from '@kbn/config-schema'; +import { connectorTypesQuerySchemaV1 } from '..'; + +export type ConnectorTypesRequestQuery = TypeOf; diff --git a/x-pack/plugins/actions/common/routes/connector/response/index.ts b/x-pack/plugins/actions/common/routes/connector/response/index.ts index cfc4d4a4a0098..99d08664c96a4 100644 --- a/x-pack/plugins/actions/common/routes/connector/response/index.ts +++ b/x-pack/plugins/actions/common/routes/connector/response/index.ts @@ -8,6 +8,7 @@ // Latest export type { ConnectorResponse, ActionTypeConfig } from './types/latest'; export { connectorResponseSchema } from './schemas/latest'; +export { connectorTypesResponseSchema } from './schemas/latest'; // v1 export type { @@ -15,3 +16,5 @@ export type { ActionTypeConfig as ActionTypeConfigV1, } from './types/v1'; export { connectorResponseSchema as connectorResponseSchemaV1 } from './schemas/v1'; +export type { ConnectorTypesResponse as ConnectorTypesResponseV1 } from './types/v1'; +export { connectorTypesResponseSchema as connectorTypesResponseSchemaV1 } from './schemas/v1'; diff --git a/x-pack/plugins/actions/common/routes/connector/response/schemas/latest.ts b/x-pack/plugins/actions/common/routes/connector/response/schemas/latest.ts index 96d490935d339..dbb5659baf8c4 100644 --- a/x-pack/plugins/actions/common/routes/connector/response/schemas/latest.ts +++ b/x-pack/plugins/actions/common/routes/connector/response/schemas/latest.ts @@ -6,3 +6,4 @@ */ export { connectorResponseSchema } from './v1'; +export { connectorTypesResponseSchema } from './v1'; diff --git a/x-pack/plugins/actions/common/routes/connector/response/schemas/v1.ts b/x-pack/plugins/actions/common/routes/connector/response/schemas/v1.ts index 6726aa740cf87..4f8be5b0f344f 100644 --- a/x-pack/plugins/actions/common/routes/connector/response/schemas/v1.ts +++ b/x-pack/plugins/actions/common/routes/connector/response/schemas/v1.ts @@ -18,3 +18,21 @@ export const connectorResponseSchema = schema.object({ is_system_action: schema.boolean(), referenced_by_count: schema.number(), }); + +export const connectorTypesResponseSchema = schema.object({ + id: schema.string(), + name: schema.string(), + enabled: schema.boolean(), + enabled_in_config: schema.boolean(), + enabled_in_license: schema.boolean(), + minimum_license_required: schema.oneOf([ + schema.literal('basic'), + schema.literal('standard'), + schema.literal('gold'), + schema.literal('platinum'), + schema.literal('enterprise'), + schema.literal('trial'), + ]), + supported_feature_ids: schema.arrayOf(schema.string()), + is_system_action_type: schema.boolean(), +}); diff --git a/x-pack/plugins/actions/common/routes/connector/response/types/v1.ts b/x-pack/plugins/actions/common/routes/connector/response/types/v1.ts index 9f49c048f92bf..5aed107c6f4f6 100644 --- a/x-pack/plugins/actions/common/routes/connector/response/types/v1.ts +++ b/x-pack/plugins/actions/common/routes/connector/response/types/v1.ts @@ -6,7 +6,7 @@ */ import { TypeOf } from '@kbn/config-schema'; -import { connectorResponseSchemaV1 } from '..'; +import { connectorResponseSchemaV1, connectorTypesResponseSchemaV1 } from '..'; export type ActionTypeConfig = Record; type ConnectorResponseSchemaType = TypeOf; @@ -22,3 +22,15 @@ export interface ConnectorResponse; +export interface ConnectorTypesResponse { + id: ConnectorTypesResponseSchemaType['id']; + name: ConnectorTypesResponseSchemaType['name']; + enabled: ConnectorTypesResponseSchemaType['enabled']; + enabled_in_config: ConnectorTypesResponseSchemaType['enabled_in_config']; + enabled_in_license: ConnectorTypesResponseSchemaType['enabled_in_license']; + minimum_license_required: ConnectorTypesResponseSchemaType['minimum_license_required']; + supported_feature_ids: ConnectorTypesResponseSchemaType['supported_feature_ids']; + is_system_action_type: ConnectorTypesResponseSchemaType['is_system_action_type']; +} diff --git a/x-pack/plugins/actions/server/actions_client.mock.ts b/x-pack/plugins/actions/server/actions_client/actions_client.mock.ts similarity index 100% rename from x-pack/plugins/actions/server/actions_client.mock.ts rename to x-pack/plugins/actions/server/actions_client/actions_client.mock.ts diff --git a/x-pack/plugins/actions/server/actions_client/actions_client.test.ts b/x-pack/plugins/actions/server/actions_client/actions_client.test.ts index 004758bb01268..fa7410bb71178 100644 --- a/x-pack/plugins/actions/server/actions_client/actions_client.test.ts +++ b/x-pack/plugins/actions/server/actions_client/actions_client.test.ts @@ -3130,172 +3130,6 @@ describe('bulkEnqueueExecution()', () => { }); }); -describe('listType()', () => { - it('filters action types by feature ID', async () => { - mockedLicenseState.isLicenseValidForActionType.mockReturnValue({ isValid: true }); - - actionTypeRegistry.register({ - id: 'my-action-type', - name: 'My action type', - minimumLicenseRequired: 'basic', - supportedFeatureIds: ['alerting'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - executor, - }); - - actionTypeRegistry.register({ - id: 'my-action-type-2', - name: 'My action type 2', - minimumLicenseRequired: 'basic', - supportedFeatureIds: ['cases'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - executor, - }); - - expect(await actionsClient.listTypes({ featureId: 'alerting' })).toEqual([ - { - id: 'my-action-type', - name: 'My action type', - minimumLicenseRequired: 'basic', - enabled: true, - enabledInConfig: true, - enabledInLicense: true, - supportedFeatureIds: ['alerting'], - isSystemActionType: false, - }, - ]); - }); - - it('filters out system action types when not defining options', async () => { - mockedLicenseState.isLicenseValidForActionType.mockReturnValue({ isValid: true }); - - actionTypeRegistry.register({ - id: 'my-action-type', - name: 'My action type', - minimumLicenseRequired: 'basic', - supportedFeatureIds: ['alerting'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - executor, - }); - - actionTypeRegistry.register({ - id: 'my-action-type-2', - name: 'My action type 2', - minimumLicenseRequired: 'basic', - supportedFeatureIds: ['cases'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - executor, - }); - - actionTypeRegistry.register({ - id: '.cases', - name: 'Cases', - minimumLicenseRequired: 'platinum', - supportedFeatureIds: ['alerting'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - isSystemActionType: true, - executor, - }); - - expect(await actionsClient.listTypes()).toEqual([ - { - id: 'my-action-type', - name: 'My action type', - minimumLicenseRequired: 'basic', - enabled: true, - enabledInConfig: true, - enabledInLicense: true, - supportedFeatureIds: ['alerting'], - isSystemActionType: false, - }, - { - id: 'my-action-type-2', - name: 'My action type 2', - isSystemActionType: false, - minimumLicenseRequired: 'basic', - supportedFeatureIds: ['cases'], - enabled: true, - enabledInConfig: true, - enabledInLicense: true, - }, - ]); - }); - - it('return system action types when defining options', async () => { - mockedLicenseState.isLicenseValidForActionType.mockReturnValue({ isValid: true }); - - actionTypeRegistry.register({ - id: 'my-action-type', - name: 'My action type', - minimumLicenseRequired: 'basic', - supportedFeatureIds: ['alerting'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - executor, - }); - - actionTypeRegistry.register({ - id: '.cases', - name: 'Cases', - minimumLicenseRequired: 'platinum', - supportedFeatureIds: ['alerting'], - validate: { - config: { schema: schema.object({}) }, - secrets: { schema: schema.object({}) }, - params: { schema: schema.object({}) }, - }, - isSystemActionType: true, - executor, - }); - - expect(await actionsClient.listTypes({ includeSystemActionTypes: true })).toEqual([ - { - id: 'my-action-type', - name: 'My action type', - minimumLicenseRequired: 'basic', - enabled: true, - enabledInConfig: true, - enabledInLicense: true, - supportedFeatureIds: ['alerting'], - isSystemActionType: false, - }, - { - id: '.cases', - name: 'Cases', - isSystemActionType: true, - minimumLicenseRequired: 'platinum', - supportedFeatureIds: ['alerting'], - enabled: true, - enabledInConfig: true, - enabledInLicense: true, - }, - ]); - }); -}); - describe('isActionTypeEnabled()', () => { const fooActionType: ActionType = { id: 'foo', diff --git a/x-pack/plugins/actions/server/actions_client/actions_client.ts b/x-pack/plugins/actions/server/actions_client/actions_client.ts index 22c4ef8c4a381..392b5ec7354b6 100644 --- a/x-pack/plugins/actions/server/actions_client/actions_client.ts +++ b/x-pack/plugins/actions/server/actions_client/actions_client.ts @@ -25,9 +25,10 @@ import { RunNowResult } from '@kbn/task-manager-plugin/server'; import { IEventLogClient } from '@kbn/event-log-plugin/server'; import { KueryNode } from '@kbn/es-query'; import { FindConnectorResult } from '../application/connector/types'; +import { ConnectorType } from '../application/connector/types'; import { getAll } from '../application/connector/methods/get_all'; +import { listTypes } from '../application/connector/methods/list_types'; import { - ActionType, GetGlobalExecutionKPIParams, GetGlobalExecutionLogParams, IExecutionLogResult, @@ -48,7 +49,6 @@ import { ActionTypeExecutorResult, ConnectorTokenClientContract, } from '../types'; - import { PreconfiguredActionDisabledModificationError } from '../lib/errors/preconfigured_action_disabled_modification'; import { ExecuteOptions } from '../lib/action_executor'; import { @@ -88,6 +88,7 @@ import { getExecutionLogAggregation, } from '../lib/get_execution_log_aggregation'; import { connectorFromSavedObject, isConnectorDeprecated } from '../application/connector/lib'; +import { ListTypesParams } from '../application/connector/methods/list_types/types'; interface ActionUpdate { name: string; @@ -104,7 +105,7 @@ export interface CreateOptions { options?: { id?: string }; } -interface ConstructorOptions { +export interface ConstructorOptions { logger: Logger; kibanaIndices: string[]; scopedClusterClient: IScopedClusterClient; @@ -127,11 +128,6 @@ export interface UpdateOptions { action: ActionUpdate; } -interface ListTypesOptions { - featureId?: string; - includeSystemActionTypes?: boolean; -} - export interface ActionsClientContext { logger: Logger; kibanaIndices: string[]; @@ -816,21 +812,11 @@ export class ActionsClient { ); } - /** - * Return all available action types - * expect system action types - */ public async listTypes({ featureId, includeSystemActionTypes = false, - }: ListTypesOptions = {}): Promise { - const actionTypes = this.context.actionTypeRegistry.list(featureId); - - const filteredActionTypes = includeSystemActionTypes - ? actionTypes - : actionTypes.filter((actionType) => !Boolean(actionType.isSystemActionType)); - - return filteredActionTypes; + }: ListTypesParams = {}): Promise { + return listTypes(this.context, { featureId, includeSystemActionTypes }); } public isActionTypeEnabled( diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/index.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/index.ts new file mode 100644 index 0000000000000..e46209cd26fba --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/index.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export { listTypes } from './list_types'; diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/list_types.test.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/list_types.test.ts new file mode 100644 index 0000000000000..d8e273f232258 --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/list_types.test.ts @@ -0,0 +1,236 @@ +/* + * 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 { actionsConfigMock } from '../../../../actions_config.mock'; +import { ActionTypeRegistry, ActionTypeRegistryOpts } from '../../../../action_type_registry'; +import { ActionsAuthorization } from '../../../../authorization/actions_authorization'; +import { ActionExecutor, ILicenseState, TaskRunnerFactory } from '../../../../lib'; +import { actionExecutorMock } from '../../../../lib/action_executor.mock'; +import { connectorTokenClientMock } from '../../../../lib/connector_token_client.mock'; +import { licenseStateMock } from '../../../../lib/license_state.mock'; +import { actionsAuthorizationMock } from '../../../../mocks'; +import { inMemoryMetricsMock } from '../../../../monitoring/in_memory_metrics.mock'; +import { schema } from '@kbn/config-schema'; +import { + httpServerMock, + loggingSystemMock, + elasticsearchServiceMock, + savedObjectsClientMock, +} from '@kbn/core/server/mocks'; +import { licensingMock } from '@kbn/licensing-plugin/server/mocks'; +import { taskManagerMock } from '@kbn/task-manager-plugin/server/mocks'; +import { ActionsClient } from '../../../../actions_client/actions_client'; +import { ExecutorType } from '../../../../types'; + +let mockedLicenseState: jest.Mocked; +let actionTypeRegistryParams: ActionTypeRegistryOpts; +let actionTypeRegistry: ActionTypeRegistry; + +const executor: ExecutorType<{}, {}, {}, void> = async (options) => { + return { status: 'ok', actionId: options.actionId }; +}; + +describe('listTypes()', () => { + let actionsClient: ActionsClient; + + beforeEach(async () => { + jest.resetAllMocks(); + mockedLicenseState = licenseStateMock.create(); + actionTypeRegistryParams = { + licensing: licensingMock.createSetup(), + taskManager: taskManagerMock.createSetup(), + taskRunnerFactory: new TaskRunnerFactory( + new ActionExecutor({ isESOCanEncrypt: true }), + inMemoryMetricsMock.create() + ), + actionsConfigUtils: actionsConfigMock.create(), + licenseState: mockedLicenseState, + inMemoryConnectors: [], + }; + actionTypeRegistry = new ActionTypeRegistry(actionTypeRegistryParams); + actionsClient = new ActionsClient({ + logger: loggingSystemMock.create().get(), + kibanaIndices: ['.kibana'], + scopedClusterClient: elasticsearchServiceMock.createScopedClusterClient(), + actionTypeRegistry, + unsecuredSavedObjectsClient: savedObjectsClientMock.create(), + inMemoryConnectors: [], + actionExecutor: actionExecutorMock.create(), + executionEnqueuer: jest.fn(), + ephemeralExecutionEnqueuer: jest.fn(), + bulkExecutionEnqueuer: jest.fn(), + request: httpServerMock.createKibanaRequest(), + authorization: actionsAuthorizationMock.create() as unknown as ActionsAuthorization, + connectorTokenClient: connectorTokenClientMock.create(), + getEventLogClient: jest.fn(), + }); + }); + + it('filters action types by feature ID', async () => { + mockedLicenseState.isLicenseValidForActionType.mockReturnValue({ isValid: true }); + + actionTypeRegistry.register({ + id: 'my-action-type', + name: 'My action type', + minimumLicenseRequired: 'basic', + supportedFeatureIds: ['alerting'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + executor, + }); + + actionTypeRegistry.register({ + id: 'my-action-type-2', + name: 'My action type 2', + minimumLicenseRequired: 'basic', + supportedFeatureIds: ['cases'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + executor, + }); + + expect(await actionsClient.listTypes({ featureId: 'alerting' })).toEqual([ + { + id: 'my-action-type', + name: 'My action type', + minimumLicenseRequired: 'basic', + enabled: true, + enabledInConfig: true, + enabledInLicense: true, + supportedFeatureIds: ['alerting'], + isSystemActionType: false, + }, + ]); + }); + + it('filters out system action types when not defining options', async () => { + mockedLicenseState.isLicenseValidForActionType.mockReturnValue({ isValid: true }); + + actionTypeRegistry.register({ + id: 'my-action-type', + name: 'My action type', + minimumLicenseRequired: 'basic', + supportedFeatureIds: ['alerting'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + executor, + }); + + actionTypeRegistry.register({ + id: 'my-action-type-2', + name: 'My action type 2', + minimumLicenseRequired: 'basic', + supportedFeatureIds: ['cases'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + executor, + }); + + actionTypeRegistry.register({ + id: '.cases', + name: 'Cases', + minimumLicenseRequired: 'platinum', + supportedFeatureIds: ['alerting'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + isSystemActionType: true, + executor, + }); + + expect(await actionsClient.listTypes({})).toEqual([ + { + id: 'my-action-type', + name: 'My action type', + minimumLicenseRequired: 'basic', + enabled: true, + enabledInConfig: true, + enabledInLicense: true, + supportedFeatureIds: ['alerting'], + isSystemActionType: false, + }, + { + id: 'my-action-type-2', + name: 'My action type 2', + isSystemActionType: false, + minimumLicenseRequired: 'basic', + supportedFeatureIds: ['cases'], + enabled: true, + enabledInConfig: true, + enabledInLicense: true, + }, + ]); + }); + + it('return system action types when defining options', async () => { + mockedLicenseState.isLicenseValidForActionType.mockReturnValue({ isValid: true }); + + actionTypeRegistry.register({ + id: 'my-action-type', + name: 'My action type', + minimumLicenseRequired: 'basic', + supportedFeatureIds: ['alerting'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + executor, + }); + + actionTypeRegistry.register({ + id: '.cases', + name: 'Cases', + minimumLicenseRequired: 'platinum', + supportedFeatureIds: ['alerting'], + validate: { + config: { schema: schema.object({}) }, + secrets: { schema: schema.object({}) }, + params: { schema: schema.object({}) }, + }, + isSystemActionType: true, + executor, + }); + + expect(await actionsClient.listTypes({ includeSystemActionTypes: true })).toEqual([ + { + id: 'my-action-type', + name: 'My action type', + minimumLicenseRequired: 'basic', + enabled: true, + enabledInConfig: true, + enabledInLicense: true, + supportedFeatureIds: ['alerting'], + isSystemActionType: false, + }, + { + id: '.cases', + name: 'Cases', + isSystemActionType: true, + minimumLicenseRequired: 'platinum', + supportedFeatureIds: ['alerting'], + enabled: true, + enabledInConfig: true, + enabledInLicense: true, + }, + ]); + }); +}); diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/list_types.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/list_types.ts new file mode 100644 index 0000000000000..cf218eba89355 --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/list_types.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import Boom from '@hapi/boom'; +import { ActionsClientContext } from '../../../../actions_client'; +import { ConnectorType } from '../../types'; +import { listTypesParamsSchema } from './schemas'; +import { ListTypesParams } from './types'; + +export async function listTypes( + context: ActionsClientContext, + options: ListTypesParams +): Promise { + try { + listTypesParamsSchema.validate(options); + } catch (error) { + throw Boom.badRequest(`Error validating params - ${error.message}`); + } + + const { featureId, includeSystemActionTypes } = options; + + const connectorTypes = context.actionTypeRegistry.list(featureId); + + const filteredConnectorTypes = includeSystemActionTypes + ? connectorTypes + : connectorTypes.filter((type) => !Boolean(type.isSystemActionType)); + + return filteredConnectorTypes; +} diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/schemas/index.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/schemas/index.ts new file mode 100644 index 0000000000000..afc2a2e545ac1 --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/schemas/index.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export { listTypesParamsSchema } from './list_types_params_schema'; diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/schemas/list_types_params_schema.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/schemas/list_types_params_schema.ts new file mode 100644 index 0000000000000..848345c79ff31 --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/schemas/list_types_params_schema.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { schema } from '@kbn/config-schema'; + +export const listTypesParamsSchema = schema.object({ + featureId: schema.maybe(schema.string()), + includeSystemActionTypes: schema.maybe(schema.boolean()), +}); diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/types/index.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/types/index.ts new file mode 100644 index 0000000000000..763aba62f135d --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/types/index.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export type { ListTypesParams } from './list_types_params'; diff --git a/x-pack/plugins/actions/server/application/connector/methods/list_types/types/list_types_params.ts b/x-pack/plugins/actions/server/application/connector/methods/list_types/types/list_types_params.ts new file mode 100644 index 0000000000000..ac6d8b292964c --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/methods/list_types/types/list_types_params.ts @@ -0,0 +1,16 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { TypeOf } from '@kbn/config-schema'; +import { listTypesParamsSchema } from '../schemas'; + +type ListTypesParamsType = TypeOf; + +export interface ListTypesParams { + featureId?: ListTypesParamsType['featureId']; + includeSystemActionTypes?: ListTypesParamsType['includeSystemActionTypes']; +} diff --git a/x-pack/plugins/actions/server/application/connector/schemas/connector_type_schema.ts b/x-pack/plugins/actions/server/application/connector/schemas/connector_type_schema.ts new file mode 100644 index 0000000000000..e5556ab5c4a33 --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/schemas/connector_type_schema.ts @@ -0,0 +1,26 @@ +/* + * 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 { schema } from '@kbn/config-schema'; + +export const connectorTypeSchema = schema.object({ + id: schema.string(), + name: schema.string(), + enabled: schema.boolean(), + enabledInConfig: schema.boolean(), + enabledInLicense: schema.boolean(), + minimumLicenseRequired: schema.oneOf([ + schema.literal('basic'), + schema.literal('standard'), + schema.literal('gold'), + schema.literal('platinum'), + schema.literal('enterprise'), + schema.literal('trial'), + ]), + supportedFeatureIds: schema.arrayOf(schema.string()), + isSystemActionType: schema.boolean(), +}); diff --git a/x-pack/plugins/actions/server/application/connector/schemas/index.ts b/x-pack/plugins/actions/server/application/connector/schemas/index.ts index f2a1bc4c6096a..b3cfc462c4208 100644 --- a/x-pack/plugins/actions/server/application/connector/schemas/index.ts +++ b/x-pack/plugins/actions/server/application/connector/schemas/index.ts @@ -6,3 +6,4 @@ */ export * from './connector_schema'; +export * from './connector_type_schema'; diff --git a/x-pack/plugins/actions/server/application/connector/types/connector_type.ts b/x-pack/plugins/actions/server/application/connector/types/connector_type.ts new file mode 100644 index 0000000000000..64be01365a8ba --- /dev/null +++ b/x-pack/plugins/actions/server/application/connector/types/connector_type.ts @@ -0,0 +1,22 @@ +/* + * 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 { TypeOf } from '@kbn/config-schema'; +import { connectorTypeSchema } from '../schemas'; + +type ConnectorTypeSchemaType = TypeOf; + +export interface ConnectorType { + id: ConnectorTypeSchemaType['id']; + name: ConnectorTypeSchemaType['name']; + enabled: ConnectorTypeSchemaType['enabled']; + enabledInConfig: ConnectorTypeSchemaType['enabledInConfig']; + enabledInLicense: ConnectorTypeSchemaType['enabledInLicense']; + minimumLicenseRequired: ConnectorTypeSchemaType['minimumLicenseRequired']; + supportedFeatureIds: ConnectorTypeSchemaType['supportedFeatureIds']; + isSystemActionType: ConnectorTypeSchemaType['isSystemActionType']; +} diff --git a/x-pack/plugins/actions/server/application/connector/types/index.ts b/x-pack/plugins/actions/server/application/connector/types/index.ts index ab87e9a5baaad..973513ec7b5cb 100644 --- a/x-pack/plugins/actions/server/application/connector/types/index.ts +++ b/x-pack/plugins/actions/server/application/connector/types/index.ts @@ -6,3 +6,4 @@ */ export type { Connector, FindConnectorResult } from './connector'; +export type { ConnectorType } from './connector_type'; diff --git a/x-pack/plugins/actions/server/data/connector/search_connectors_so.ts b/x-pack/plugins/actions/server/data/connector/search_connectors_so.ts index b44b109e9265f..09d3ae3b532d9 100644 --- a/x-pack/plugins/actions/server/data/connector/search_connectors_so.ts +++ b/x-pack/plugins/actions/server/data/connector/search_connectors_so.ts @@ -14,6 +14,7 @@ export const searchConnectorsSo = async ({ }: SearchConnectorsSoParams) => { return scopedClusterClient.asInternalUser.search({ index: kibanaIndices, + ignore_unavailable: true, body: { aggs, size: 0, diff --git a/x-pack/plugins/actions/server/mocks.ts b/x-pack/plugins/actions/server/mocks.ts index 14ae64391177f..ad26114cf7d07 100644 --- a/x-pack/plugins/actions/server/mocks.ts +++ b/x-pack/plugins/actions/server/mocks.ts @@ -12,7 +12,7 @@ import { } from '@kbn/core/server/mocks'; import { encryptedSavedObjectsMock } from '@kbn/encrypted-saved-objects-plugin/server/mocks'; import { Logger } from '@kbn/core/server'; -import { actionsClientMock } from './actions_client.mock'; +import { actionsClientMock } from './actions_client/actions_client.mock'; import { PluginSetupContract, PluginStartContract, renderActionParameterTemplates } from './plugin'; import { Services } from './types'; import { actionsAuthorizationMock } from './authorization/actions_authorization.mock'; diff --git a/x-pack/plugins/actions/server/plugin.ts b/x-pack/plugins/actions/server/plugin.ts index 32fd0d2d37fb1..b8b88b05049ca 100644 --- a/x-pack/plugins/actions/server/plugin.ts +++ b/x-pack/plugins/actions/server/plugin.ts @@ -42,7 +42,7 @@ import { MonitoringCollectionSetup } from '@kbn/monitoring-collection-plugin/ser import { ActionsConfig, getValidatedConfig } from './config'; import { resolveCustomHosts } from './lib/custom_host_settings'; -import { ActionsClient } from './actions_client'; +import { ActionsClient } from './actions_client/actions_client'; import { ActionTypeRegistry } from './action_type_registry'; import { createEphemeralExecutionEnqueuerFunction, diff --git a/x-pack/plugins/actions/server/routes/connector/get_all/get_all.test.ts b/x-pack/plugins/actions/server/routes/connector/get_all/get_all.test.ts index 06491cfeb8ef2..223a2d56c0843 100644 --- a/x-pack/plugins/actions/server/routes/connector/get_all/get_all.test.ts +++ b/x-pack/plugins/actions/server/routes/connector/get_all/get_all.test.ts @@ -10,7 +10,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../../../lib/license_state.mock'; import { mockHandlerArguments } from '../../legacy/_mock_handler_arguments'; import { verifyAccessAndContext } from '../../verify_access_and_context'; -import { actionsClientMock } from '../../../actions_client.mock'; +import { actionsClientMock } from '../../../actions_client/actions_client.mock'; jest.mock('../../verify_access_and_context', () => ({ verifyAccessAndContext: jest.fn(), diff --git a/x-pack/plugins/actions/server/routes/connector/list_types/index.ts b/x-pack/plugins/actions/server/routes/connector/list_types/index.ts new file mode 100644 index 0000000000000..668942c40ae90 --- /dev/null +++ b/x-pack/plugins/actions/server/routes/connector/list_types/index.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export { listTypesRoute } from './list_types'; diff --git a/x-pack/plugins/actions/server/routes/connector_types.test.ts b/x-pack/plugins/actions/server/routes/connector/list_types/list_types.test.ts similarity index 91% rename from x-pack/plugins/actions/server/routes/connector_types.test.ts rename to x-pack/plugins/actions/server/routes/connector/list_types/list_types.test.ts index 4c5a7089b75c4..91419ac562324 100644 --- a/x-pack/plugins/actions/server/routes/connector_types.test.ts +++ b/x-pack/plugins/actions/server/routes/connector/list_types/list_types.test.ts @@ -5,15 +5,15 @@ * 2.0. */ -import { connectorTypesRoute } from './connector_types'; import { httpServiceMock } from '@kbn/core/server/mocks'; -import { licenseStateMock } from '../lib/license_state.mock'; -import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; import { LicenseType } from '@kbn/licensing-plugin/server'; -import { actionsClientMock } from '../mocks'; -import { verifyAccessAndContext } from './verify_access_and_context'; +import { licenseStateMock } from '../../../lib/license_state.mock'; +import { mockHandlerArguments } from '../../legacy/_mock_handler_arguments'; +import { listTypesRoute } from './list_types'; +import { verifyAccessAndContext } from '../../verify_access_and_context'; +import { actionsClientMock } from '../../../mocks'; -jest.mock('./verify_access_and_context', () => ({ +jest.mock('../../verify_access_and_context', () => ({ verifyAccessAndContext: jest.fn(), })); @@ -22,12 +22,12 @@ beforeEach(() => { (verifyAccessAndContext as jest.Mock).mockImplementation((license, handler) => handler); }); -describe('connectorTypesRoute', () => { +describe('listTypesRoute', () => { it('lists action types with proper parameters', async () => { const licenseState = licenseStateMock.create(); const router = httpServiceMock.createRouter(); - connectorTypesRoute(router, licenseState); + listTypesRoute(router, licenseState); const [config, handler] = router.get.mock.calls[0]; @@ -89,7 +89,7 @@ describe('connectorTypesRoute', () => { const licenseState = licenseStateMock.create(); const router = httpServiceMock.createRouter(); - connectorTypesRoute(router, licenseState); + listTypesRoute(router, licenseState); const [config, handler] = router.get.mock.calls[0]; @@ -168,7 +168,7 @@ describe('connectorTypesRoute', () => { const licenseState = licenseStateMock.create(); const router = httpServiceMock.createRouter(); - connectorTypesRoute(router, licenseState); + listTypesRoute(router, licenseState); const [config, handler] = router.get.mock.calls[0]; @@ -211,7 +211,7 @@ describe('connectorTypesRoute', () => { throw new Error('OMG'); }); - connectorTypesRoute(router, licenseState); + listTypesRoute(router, licenseState); const [config, handler] = router.get.mock.calls[0]; diff --git a/x-pack/plugins/actions/server/routes/connector/list_types/list_types.ts b/x-pack/plugins/actions/server/routes/connector/list_types/list_types.ts new file mode 100644 index 0000000000000..078c51743c4d9 --- /dev/null +++ b/x-pack/plugins/actions/server/routes/connector/list_types/list_types.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import { IRouter } from '@kbn/core/server'; +import { ConnectorTypesResponseV1 } from '../../../../common/routes/connector/response'; +import { + connectorTypesQuerySchemaV1, + ConnectorTypesRequestQueryV1, +} from '../../../../common/routes/connector/apis/connector_types'; +import { transformListTypesResponseV1 } from './transforms'; +import { ActionsRequestHandlerContext } from '../../../types'; +import { BASE_ACTION_API_PATH } from '../../../../common'; +import { ILicenseState } from '../../../lib'; +import { verifyAccessAndContext } from '../../verify_access_and_context'; + +export const listTypesRoute = ( + router: IRouter, + licenseState: ILicenseState +) => { + router.get( + { + path: `${BASE_ACTION_API_PATH}/connector_types`, + validate: { + query: connectorTypesQuerySchemaV1, + }, + }, + router.handleLegacyErrors( + verifyAccessAndContext(licenseState, async function (context, req, res) { + const actionsClient = (await context.actions).getActionsClient(); + + // Assert versioned inputs + const query: ConnectorTypesRequestQueryV1 = req.query; + + const connectorTypes = await actionsClient.listTypes({ featureId: query?.feature_id }); + + const responseBody: ConnectorTypesResponseV1[] = + transformListTypesResponseV1(connectorTypes); + + return res.ok({ body: responseBody }); + }) + ) + ); +}; diff --git a/x-pack/plugins/actions/server/routes/connector/list_types/transforms/index.ts b/x-pack/plugins/actions/server/routes/connector/list_types/transforms/index.ts new file mode 100644 index 0000000000000..35e5f1db443c2 --- /dev/null +++ b/x-pack/plugins/actions/server/routes/connector/list_types/transforms/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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +export { transformListTypesResponse } from './transform_list_types_response/latest'; +export { transformListTypesResponse as transformListTypesResponseV1 } from './transform_list_types_response/v1'; diff --git a/x-pack/plugins/actions/server/routes/connector/list_types/transforms/transform_list_types_response/latest.ts b/x-pack/plugins/actions/server/routes/connector/list_types/transforms/transform_list_types_response/latest.ts new file mode 100644 index 0000000000000..5fd887263233c --- /dev/null +++ b/x-pack/plugins/actions/server/routes/connector/list_types/transforms/transform_list_types_response/latest.ts @@ -0,0 +1,8 @@ +/* + * 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. + */ + +export { transformListTypesResponse } from './v1'; diff --git a/x-pack/plugins/actions/server/routes/connector/list_types/transforms/transform_list_types_response/v1.ts b/x-pack/plugins/actions/server/routes/connector/list_types/transforms/transform_list_types_response/v1.ts new file mode 100644 index 0000000000000..e32bec2f9e1a1 --- /dev/null +++ b/x-pack/plugins/actions/server/routes/connector/list_types/transforms/transform_list_types_response/v1.ts @@ -0,0 +1,35 @@ +/* + * 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 { ConnectorType } from '../../../../../application/connector/types'; +import { ConnectorTypesResponseV1 } from '../../../../../../common/routes/connector/response'; + +export const transformListTypesResponse = ( + results: ConnectorType[] +): ConnectorTypesResponseV1[] => { + return results.map( + ({ + id, + name, + enabled, + enabledInConfig, + enabledInLicense, + minimumLicenseRequired, + supportedFeatureIds, + isSystemActionType, + }) => ({ + id, + name, + enabled, + enabled_in_config: enabledInConfig, + enabled_in_license: enabledInLicense, + minimum_license_required: minimumLicenseRequired, + supported_feature_ids: supportedFeatureIds, + is_system_action_type: isSystemActionType, + }) + ); +}; diff --git a/x-pack/plugins/actions/server/routes/connector_types.ts b/x-pack/plugins/actions/server/routes/connector_types.ts deleted file mode 100644 index d54b35a7a99df..0000000000000 --- a/x-pack/plugins/actions/server/routes/connector_types.ts +++ /dev/null @@ -1,59 +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 { IRouter } from '@kbn/core/server'; -import { schema } from '@kbn/config-schema'; -import { ILicenseState } from '../lib'; -import { ActionType, BASE_ACTION_API_PATH, RewriteResponseCase } from '../../common'; -import { ActionsRequestHandlerContext } from '../types'; -import { verifyAccessAndContext } from './verify_access_and_context'; - -const querySchema = schema.object({ - feature_id: schema.maybe(schema.string()), -}); - -const rewriteBodyRes: RewriteResponseCase = (results) => { - return results.map( - ({ - enabledInConfig, - enabledInLicense, - minimumLicenseRequired, - supportedFeatureIds, - isSystemActionType, - ...res - }) => ({ - ...res, - enabled_in_config: enabledInConfig, - enabled_in_license: enabledInLicense, - minimum_license_required: minimumLicenseRequired, - supported_feature_ids: supportedFeatureIds, - is_system_action_type: isSystemActionType, - }) - ); -}; - -export const connectorTypesRoute = ( - router: IRouter, - licenseState: ILicenseState -) => { - router.get( - { - path: `${BASE_ACTION_API_PATH}/connector_types`, - validate: { - query: querySchema, - }, - }, - router.handleLegacyErrors( - verifyAccessAndContext(licenseState, async function (context, req, res) { - const actionsClient = (await context.actions).getActionsClient(); - return res.ok({ - body: rewriteBodyRes(await actionsClient.listTypes({ featureId: req.query?.feature_id })), - }); - }) - ) - ); -}; diff --git a/x-pack/plugins/actions/server/routes/create.test.ts b/x-pack/plugins/actions/server/routes/create.test.ts index 2161e68e3706b..dd1317f57cd27 100644 --- a/x-pack/plugins/actions/server/routes/create.test.ts +++ b/x-pack/plugins/actions/server/routes/create.test.ts @@ -9,9 +9,9 @@ import { createActionRoute, bodySchema } from './create'; import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; -import { actionsClientMock } from '../actions_client.mock'; import { verifyAccessAndContext } from './verify_access_and_context'; import { omit } from 'lodash'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; jest.mock('./verify_access_and_context', () => ({ verifyAccessAndContext: jest.fn(), diff --git a/x-pack/plugins/actions/server/routes/execute.test.ts b/x-pack/plugins/actions/server/routes/execute.test.ts index 6bcab72fbc869..12960aeae47e6 100644 --- a/x-pack/plugins/actions/server/routes/execute.test.ts +++ b/x-pack/plugins/actions/server/routes/execute.test.ts @@ -10,7 +10,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; import { asHttpRequestExecutionSource } from '../lib'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; import { ActionTypeExecutorResult } from '../types'; import { verifyAccessAndContext } from './verify_access_and_context'; diff --git a/x-pack/plugins/actions/server/routes/get.test.ts b/x-pack/plugins/actions/server/routes/get.test.ts index 76dda602945c9..a52cea1d49f6d 100644 --- a/x-pack/plugins/actions/server/routes/get.test.ts +++ b/x-pack/plugins/actions/server/routes/get.test.ts @@ -9,7 +9,7 @@ import { getActionRoute } from './get'; import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; import { verifyAccessAndContext } from './verify_access_and_context'; jest.mock('./verify_access_and_context', () => ({ diff --git a/x-pack/plugins/actions/server/routes/get_global_execution_kpi.test.ts b/x-pack/plugins/actions/server/routes/get_global_execution_kpi.test.ts index 838a1bf69789f..066d558bcfd59 100644 --- a/x-pack/plugins/actions/server/routes/get_global_execution_kpi.test.ts +++ b/x-pack/plugins/actions/server/routes/get_global_execution_kpi.test.ts @@ -8,7 +8,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; import { getGlobalExecutionKPIRoute } from './get_global_execution_kpi'; import { verifyAccessAndContext } from './verify_access_and_context'; diff --git a/x-pack/plugins/actions/server/routes/get_global_execution_logs.test.ts b/x-pack/plugins/actions/server/routes/get_global_execution_logs.test.ts index 1c309e14dae09..4654885a49bcb 100644 --- a/x-pack/plugins/actions/server/routes/get_global_execution_logs.test.ts +++ b/x-pack/plugins/actions/server/routes/get_global_execution_logs.test.ts @@ -9,7 +9,7 @@ import { getGlobalExecutionLogRoute } from './get_global_execution_logs'; import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; import { IExecutionLogResult } from '../../common'; import { verifyAccessAndContext } from './verify_access_and_context'; diff --git a/x-pack/plugins/actions/server/routes/get_oauth_access_token.test.ts b/x-pack/plugins/actions/server/routes/get_oauth_access_token.test.ts index ff13b021a209f..ae06068273ca3 100644 --- a/x-pack/plugins/actions/server/routes/get_oauth_access_token.test.ts +++ b/x-pack/plugins/actions/server/routes/get_oauth_access_token.test.ts @@ -11,7 +11,7 @@ import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; import { verifyAccessAndContext } from './verify_access_and_context'; import { actionsConfigMock } from '../actions_config.mock'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; jest.mock('./verify_access_and_context', () => ({ verifyAccessAndContext: jest.fn(), diff --git a/x-pack/plugins/actions/server/routes/index.ts b/x-pack/plugins/actions/server/routes/index.ts index d46ce9dd5cc51..e5dce0ac3b6c7 100644 --- a/x-pack/plugins/actions/server/routes/index.ts +++ b/x-pack/plugins/actions/server/routes/index.ts @@ -8,13 +8,13 @@ import { IRouter } from '@kbn/core/server'; import { UsageCounter } from '@kbn/usage-collection-plugin/server'; import { getAllConnectorsRoute } from './connector/get_all'; +import { listTypesRoute } from './connector/list_types'; import { ILicenseState } from '../lib'; import { ActionsRequestHandlerContext } from '../types'; import { createActionRoute } from './create'; import { deleteActionRoute } from './delete'; import { executeActionRoute } from './execute'; import { getActionRoute } from './get'; -import { connectorTypesRoute } from './connector_types'; import { updateActionRoute } from './update'; import { getOAuthAccessToken } from './get_oauth_access_token'; import { defineLegacyRoutes } from './legacy'; @@ -39,7 +39,7 @@ export function defineRoutes(opts: RouteOptions) { getActionRoute(router, licenseState); getAllConnectorsRoute(router, licenseState); updateActionRoute(router, licenseState); - connectorTypesRoute(router, licenseState); + listTypesRoute(router, licenseState); executeActionRoute(router, licenseState); getGlobalExecutionLogRoute(router, licenseState); getGlobalExecutionKPIRoute(router, licenseState); diff --git a/x-pack/plugins/actions/server/routes/legacy/_mock_handler_arguments.ts b/x-pack/plugins/actions/server/routes/legacy/_mock_handler_arguments.ts index 07ac40b7e52e1..73906fa0a63e3 100644 --- a/x-pack/plugins/actions/server/routes/legacy/_mock_handler_arguments.ts +++ b/x-pack/plugins/actions/server/routes/legacy/_mock_handler_arguments.ts @@ -9,15 +9,16 @@ import { KibanaRequest, KibanaResponseFactory } from '@kbn/core/server'; import { identity } from 'lodash'; import type { MethodKeysOf } from '@kbn/utility-types'; import { httpServerMock } from '@kbn/core/server/mocks'; -import { ActionType } from '../../../common'; -import { ActionsClientMock, actionsClientMock } from '../../actions_client.mock'; import { ActionsRequestHandlerContext } from '../../types'; +import { actionsClientMock } from '../../mocks'; +import { ActionsClientMock } from '../../actions_client/actions_client.mock'; +import { ConnectorType } from '../../application/connector/types'; export function mockHandlerArguments( { actionsClient = actionsClientMock.create(), listTypes: listTypesRes = [], - }: { actionsClient?: ActionsClientMock; listTypes?: ActionType[] }, + }: { actionsClient?: ActionsClientMock; listTypes?: ConnectorType[] }, request: unknown, response?: Array> ): [ActionsRequestHandlerContext, KibanaRequest, KibanaResponseFactory] { diff --git a/x-pack/plugins/actions/server/routes/legacy/create.test.ts b/x-pack/plugins/actions/server/routes/legacy/create.test.ts index 0d285244342a6..e711f73265f53 100644 --- a/x-pack/plugins/actions/server/routes/legacy/create.test.ts +++ b/x-pack/plugins/actions/server/routes/legacy/create.test.ts @@ -9,7 +9,7 @@ import { createActionRoute } from './create'; import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../../lib/license_state.mock'; import { mockHandlerArguments } from './_mock_handler_arguments'; -import { actionsClientMock } from '../../actions_client.mock'; +import { actionsClientMock } from '../../actions_client/actions_client.mock'; import { verifyAccessAndContext } from '../verify_access_and_context'; import { trackLegacyRouteUsage } from '../../lib/track_legacy_route_usage'; import { usageCountersServiceMock } from '@kbn/usage-collection-plugin/server/usage_counters/usage_counters_service.mock'; diff --git a/x-pack/plugins/actions/server/routes/legacy/execute.test.ts b/x-pack/plugins/actions/server/routes/legacy/execute.test.ts index 1f9e7bb7566da..53e7d038dfea5 100644 --- a/x-pack/plugins/actions/server/routes/legacy/execute.test.ts +++ b/x-pack/plugins/actions/server/routes/legacy/execute.test.ts @@ -10,7 +10,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../../lib/license_state.mock'; import { mockHandlerArguments } from './_mock_handler_arguments'; import { verifyApiAccess, ActionTypeDisabledError, asHttpRequestExecutionSource } from '../../lib'; -import { actionsClientMock } from '../../actions_client.mock'; +import { actionsClientMock } from '../../actions_client/actions_client.mock'; import { ActionTypeExecutorResult } from '../../types'; import { trackLegacyRouteUsage } from '../../lib/track_legacy_route_usage'; import { usageCountersServiceMock } from '@kbn/usage-collection-plugin/server/usage_counters/usage_counters_service.mock'; diff --git a/x-pack/plugins/actions/server/routes/legacy/get.test.ts b/x-pack/plugins/actions/server/routes/legacy/get.test.ts index be5cc1c819e3a..6a19400da0fb5 100644 --- a/x-pack/plugins/actions/server/routes/legacy/get.test.ts +++ b/x-pack/plugins/actions/server/routes/legacy/get.test.ts @@ -10,7 +10,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../../lib/license_state.mock'; import { verifyApiAccess } from '../../lib'; import { mockHandlerArguments } from './_mock_handler_arguments'; -import { actionsClientMock } from '../../actions_client.mock'; +import { actionsClientMock } from '../../actions_client/actions_client.mock'; import { trackLegacyRouteUsage } from '../../lib/track_legacy_route_usage'; import { usageCountersServiceMock } from '@kbn/usage-collection-plugin/server/usage_counters/usage_counters_service.mock'; diff --git a/x-pack/plugins/actions/server/routes/legacy/get_all.test.ts b/x-pack/plugins/actions/server/routes/legacy/get_all.test.ts index f7cdb56082a10..e999c769f3dbb 100644 --- a/x-pack/plugins/actions/server/routes/legacy/get_all.test.ts +++ b/x-pack/plugins/actions/server/routes/legacy/get_all.test.ts @@ -10,7 +10,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../../lib/license_state.mock'; import { verifyApiAccess } from '../../lib'; import { mockHandlerArguments } from './_mock_handler_arguments'; -import { actionsClientMock } from '../../actions_client.mock'; +import { actionsClientMock } from '../../actions_client/actions_client.mock'; import { trackLegacyRouteUsage } from '../../lib/track_legacy_route_usage'; import { usageCountersServiceMock } from '@kbn/usage-collection-plugin/server/usage_counters/usage_counters_service.mock'; diff --git a/x-pack/plugins/actions/server/routes/legacy/update.test.ts b/x-pack/plugins/actions/server/routes/legacy/update.test.ts index 9158b4165a660..304b504636c91 100644 --- a/x-pack/plugins/actions/server/routes/legacy/update.test.ts +++ b/x-pack/plugins/actions/server/routes/legacy/update.test.ts @@ -10,7 +10,7 @@ import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../../lib/license_state.mock'; import { verifyApiAccess, ActionTypeDisabledError } from '../../lib'; import { mockHandlerArguments } from './_mock_handler_arguments'; -import { actionsClientMock } from '../../actions_client.mock'; +import { actionsClientMock } from '../../actions_client/actions_client.mock'; import { trackLegacyRouteUsage } from '../../lib/track_legacy_route_usage'; import { usageCountersServiceMock } from '@kbn/usage-collection-plugin/server/usage_counters/usage_counters_service.mock'; diff --git a/x-pack/plugins/actions/server/routes/update.test.ts b/x-pack/plugins/actions/server/routes/update.test.ts index ac9f3dc45f660..aef179264ac48 100644 --- a/x-pack/plugins/actions/server/routes/update.test.ts +++ b/x-pack/plugins/actions/server/routes/update.test.ts @@ -9,7 +9,7 @@ import { bodySchema, updateActionRoute } from './update'; import { httpServiceMock } from '@kbn/core/server/mocks'; import { licenseStateMock } from '../lib/license_state.mock'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; import { verifyAccessAndContext } from './verify_access_and_context'; jest.mock('./verify_access_and_context', () => ({ diff --git a/x-pack/plugins/actions/server/routes/verify_access_and_context.test.ts b/x-pack/plugins/actions/server/routes/verify_access_and_context.test.ts index 4b07216172473..e079634fbfeff 100644 --- a/x-pack/plugins/actions/server/routes/verify_access_and_context.test.ts +++ b/x-pack/plugins/actions/server/routes/verify_access_and_context.test.ts @@ -8,7 +8,7 @@ import { licenseStateMock } from '../lib/license_state.mock'; import { verifyApiAccess, ActionTypeDisabledError } from '../lib'; import { mockHandlerArguments } from './legacy/_mock_handler_arguments'; -import { actionsClientMock } from '../actions_client.mock'; +import { actionsClientMock } from '../actions_client/actions_client.mock'; import { verifyAccessAndContext } from './verify_access_and_context'; jest.mock('../lib/verify_api_access', () => ({ diff --git a/x-pack/plugins/alerting/server/alerts_client/alerts_client.test.ts b/x-pack/plugins/alerting/server/alerts_client/alerts_client.test.ts index 601732a607900..24503e4951e56 100644 --- a/x-pack/plugins/alerting/server/alerts_client/alerts_client.test.ts +++ b/x-pack/plugins/alerting/server/alerts_client/alerts_client.test.ts @@ -14,6 +14,7 @@ import { RuleNotifyWhen, } from '../types'; import * as LegacyAlertsClientModule from './legacy_alerts_client'; +import { LegacyAlertsClient } from './legacy_alerts_client'; import { Alert } from '../alert/alert'; import { AlertsClient, AlertsClientParams } from './alerts_client'; import { GetSummarizedAlertsParams, ProcessAndLogAlertsOpts } from './types'; @@ -673,6 +674,186 @@ describe('Alerts Client', () => { }); }); + test('should not update ongoing alerts in existing index when they are not in the processed alerts', async () => { + const activeAlert = { + state: { foo: true, start: '2023-03-28T12:27:28.159Z', duration: '0' }, + meta: { + flapping: false, + flappingHistory: [true, false], + maintenanceWindowIds: [], + lastScheduledActions: { group: 'default', date: new Date() }, + uuid: 'abc', + }, + }; + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const activeAlertObj = new Alert<{}, {}, 'default'>('1', activeAlert as any); + activeAlertObj.scheduleActions('default', {}); + const spy = jest + .spyOn(LegacyAlertsClient.prototype, 'getProcessedAlerts') + .mockReturnValueOnce({ + '1': activeAlertObj, // return only the first (tracked) alert + }) + .mockReturnValueOnce({}); + + clusterClient.search.mockResolvedValue({ + took: 10, + timed_out: false, + _shards: { failed: 0, successful: 1, total: 1, skipped: 0 }, + hits: { + total: { + relation: 'eq', + value: 1, + }, + hits: [ + { + _id: 'abc', + _index: '.internal.alerts-test.alerts-default-000001', + _source: { + '@timestamp': '2023-03-28T12:27:28.159Z', + event: { + action: 'active', + kind: 'signal', + }, + kibana: { + alert: { + action_group: 'default', + duration: { + us: '0', + }, + flapping: false, + flapping_history: [true], + instance: { + id: '1', + }, + rule: { + category: 'My test rule', + consumer: 'bar', + execution: { + uuid: '5f6aa57d-3e22-484e-bae8-cbed868f4d28', + }, + name: 'rule-name', + parameters: { + bar: true, + }, + producer: 'alerts', + revision: 0, + rule_type_id: 'test.rule-type', + tags: ['rule-', '-tags'], + uuid: '1', + }, + start: '2023-03-28T12:27:28.159Z', + status: 'active', + time_range: { + gte: '2023-03-28T12:27:28.159Z', + }, + uuid: 'abc', + workflow_status: 'open', + }, + space_ids: ['default'], + version: '8.8.0', + }, + tags: ['rule-', '-tags'], + }, + }, + ], + }, + }); + const alertsClient = new AlertsClient<{}, {}, {}, 'default', 'recovered'>(alertsClientParams); + + await alertsClient.initializeExecution({ + maxAlerts, + ruleLabel: `test: rule-name`, + flappingSettings: DEFAULT_FLAPPING_SETTINGS, + activeAlertsFromState: { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + '1': activeAlert as any, + }, + recoveredAlertsFromState: {}, + }); + + // Report 1 new alert and 1 active alert + const alertExecutorService = alertsClient.factory(); + alertExecutorService.create('1').scheduleActions('default'); + alertExecutorService.create('2').scheduleActions('default'); // will be skipped as getProcessedAlerts does not return it + + alertsClient.processAndLogAlerts(processAndLogAlertsOpts); + + await alertsClient.persistAlerts(); + + expect(spy).toHaveBeenCalledTimes(2); + expect(spy).toHaveBeenNthCalledWith(1, 'active'); + expect(spy).toHaveBeenNthCalledWith(2, 'recovered'); + + expect(logger.error).toHaveBeenCalledWith( + "Error writing alert(2) to .alerts-test.alerts-default - alert(2) doesn't exist in active alerts" + ); + spy.mockRestore(); + + expect(clusterClient.bulk).toHaveBeenCalledWith({ + index: '.alerts-test.alerts-default', + refresh: 'wait_for', + require_alias: true, + body: [ + { + index: { + _id: 'abc', + _index: '.internal.alerts-test.alerts-default-000001', + require_alias: false, + }, + }, + // ongoing alert doc + { + '@timestamp': date, + event: { + action: 'active', + kind: 'signal', + }, + kibana: { + alert: { + action_group: 'default', + duration: { + us: '0', + }, + flapping: false, + flapping_history: [true, false], + instance: { + id: '1', + }, + maintenance_window_ids: [], + rule: { + category: 'My test rule', + consumer: 'bar', + execution: { + uuid: '5f6aa57d-3e22-484e-bae8-cbed868f4d28', + }, + name: 'rule-name', + parameters: { + bar: true, + }, + producer: 'alerts', + revision: 0, + rule_type_id: 'test.rule-type', + tags: ['rule-', '-tags'], + uuid: '1', + }, + start: '2023-03-28T12:27:28.159Z', + status: 'active', + time_range: { + gte: '2023-03-28T12:27:28.159Z', + }, + uuid: 'abc', + workflow_status: 'open', + }, + space_ids: ['default'], + version: '8.9.0', + }, + tags: ['rule-', '-tags'], + }, + ], + }); + }); + test('should recover recovered alerts in existing index', async () => { clusterClient.search.mockResolvedValue({ took: 10, diff --git a/x-pack/plugins/alerting/server/alerts_client/alerts_client.ts b/x-pack/plugins/alerting/server/alerts_client/alerts_client.ts index b79291ff7794b..1153f871a60ec 100644 --- a/x-pack/plugins/alerting/server/alerts_client/alerts_client.ts +++ b/x-pack/plugins/alerting/server/alerts_client/alerts_client.ts @@ -271,8 +271,8 @@ export class AlertsClient< const { alertsToReturn, recoveredAlertsToReturn } = this.legacyAlertsClient.getAlertsToSerialize(false); - const activeAlerts = this.legacyAlertsClient.getProcessedAlerts('activeCurrent'); - const recoveredAlerts = this.legacyAlertsClient.getProcessedAlerts('recoveredCurrent'); + const activeAlerts = this.legacyAlertsClient.getProcessedAlerts('active'); + const recoveredAlerts = this.legacyAlertsClient.getProcessedAlerts('recovered'); // TODO - Lifecycle alerts set some other fields based on alert status // Example: workflow status - default to 'open' if not set @@ -281,41 +281,47 @@ export class AlertsClient< const activeAlertsToIndex: Array = []; for (const id of keys(alertsToReturn)) { // See if there's an existing active alert document - if ( - this.fetchedAlerts.data.hasOwnProperty(id) && - this.fetchedAlerts.data[id].kibana.alert.status === 'active' - ) { - activeAlertsToIndex.push( - buildOngoingAlert< - AlertData, - LegacyState, - LegacyContext, - ActionGroupIds, - RecoveryActionGroupId - >({ - alert: this.fetchedAlerts.data[id], - legacyAlert: activeAlerts[id], - rule: this.rule, - timestamp: currentTime, - payload: this.reportedAlerts[id], - kibanaVersion: this.options.kibanaVersion, - }) - ); + if (!!activeAlerts[id]) { + if ( + this.fetchedAlerts.data.hasOwnProperty(id) && + this.fetchedAlerts.data[id].kibana.alert.status === 'active' + ) { + activeAlertsToIndex.push( + buildOngoingAlert< + AlertData, + LegacyState, + LegacyContext, + ActionGroupIds, + RecoveryActionGroupId + >({ + alert: this.fetchedAlerts.data[id], + legacyAlert: activeAlerts[id], + rule: this.rule, + timestamp: currentTime, + payload: this.reportedAlerts[id], + kibanaVersion: this.options.kibanaVersion, + }) + ); + } else { + activeAlertsToIndex.push( + buildNewAlert< + AlertData, + LegacyState, + LegacyContext, + ActionGroupIds, + RecoveryActionGroupId + >({ + legacyAlert: activeAlerts[id], + rule: this.rule, + timestamp: currentTime, + payload: this.reportedAlerts[id], + kibanaVersion: this.options.kibanaVersion, + }) + ); + } } else { - activeAlertsToIndex.push( - buildNewAlert< - AlertData, - LegacyState, - LegacyContext, - ActionGroupIds, - RecoveryActionGroupId - >({ - legacyAlert: activeAlerts[id], - rule: this.rule, - timestamp: currentTime, - payload: this.reportedAlerts[id], - kibanaVersion: this.options.kibanaVersion, - }) + this.options.logger.error( + `Error writing alert(${id}) to ${this.indexTemplateAndPattern.alias} - alert(${id}) doesn't exist in active alerts` ); } } diff --git a/x-pack/plugins/apm/public/assistant_functions/get_apm_services_list.ts b/x-pack/plugins/apm/public/assistant_functions/get_apm_services_list.ts index fdbcfb94da650..83f1c53d5ca70 100644 --- a/x-pack/plugins/apm/public/assistant_functions/get_apm_services_list.ts +++ b/x-pack/plugins/apm/public/assistant_functions/get_apm_services_list.ts @@ -7,6 +7,7 @@ import { i18n } from '@kbn/i18n'; import type { RegisterFunctionDefinition } from '@kbn/observability-ai-assistant-plugin/common/types'; +import { ServiceHealthStatus } from '../../common/service_health_status'; import { callApmApi } from '../services/rest/create_call_apm_api'; import { NON_EMPTY_STRING } from '../utils/non_empty_string_ref'; @@ -28,6 +29,7 @@ export function registerGetApmServicesListFunction({ ), parameters: { type: 'object', + additionalProperties: false, properties: { 'service.environment': { ...NON_EMPTY_STRING, @@ -44,6 +46,21 @@ export function registerGetApmServicesListFunction({ description: 'The end of the time range, in Elasticsearch date math, like `now-24h`.', }, + healthStatus: { + type: 'array', + description: 'Filter service list by health status', + additionalProperties: false, + additionalItems: false, + items: { + type: 'string', + enum: [ + ServiceHealthStatus.unknown, + ServiceHealthStatus.healthy, + ServiceHealthStatus.warning, + ServiceHealthStatus.critical, + ], + }, + }, }, required: ['start', 'end'], } as const, diff --git a/x-pack/plugins/apm/server/feature.ts b/x-pack/plugins/apm/server/feature.ts index 490c75c658ad9..b34a202376b2a 100644 --- a/x-pack/plugins/apm/server/feature.ts +++ b/x-pack/plugins/apm/server/feature.ts @@ -13,11 +13,17 @@ import { LicensingApiRequestHandlerContext, } from '@kbn/licensing-plugin/server'; import { APM_INDEX_SETTINGS_SAVED_OBJECT_TYPE } from '@kbn/apm-data-access-plugin/server/saved_objects/apm_indices'; +import { OBSERVABILITY_THRESHOLD_RULE_TYPE_ID } from '@kbn/observability-plugin/common/constants'; import { ApmRuleType, APM_SERVER_FEATURE_ID, } from '../common/rules/apm_rule_types'; +const ruleTypes = [ + ...Object.values(ApmRuleType), + OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, +]; + export const APM_FEATURE = { id: APM_SERVER_FEATURE_ID, name: i18n.translate('xpack.apm.featureRegistry.apmFeatureName', { @@ -30,7 +36,7 @@ export const APM_FEATURE = { management: { insightsAndAlerting: ['triggersActions'], }, - alerting: Object.values(ApmRuleType), + alerting: ruleTypes, // see x-pack/plugins/features/common/feature_kibana_privileges.ts privileges: { all: { @@ -43,10 +49,10 @@ export const APM_FEATURE = { }, alerting: { alert: { - all: Object.values(ApmRuleType), + all: ruleTypes, }, rule: { - all: Object.values(ApmRuleType), + all: ruleTypes, }, }, management: { @@ -64,10 +70,10 @@ export const APM_FEATURE = { }, alerting: { alert: { - read: Object.values(ApmRuleType), + read: ruleTypes, }, rule: { - read: Object.values(ApmRuleType), + read: ruleTypes, }, }, management: { diff --git a/x-pack/plugins/apm/server/routes/assistant_functions/route.ts b/x-pack/plugins/apm/server/routes/assistant_functions/route.ts index 1d02003c5e46c..486fdb57fca84 100644 --- a/x-pack/plugins/apm/server/routes/assistant_functions/route.ts +++ b/x-pack/plugins/apm/server/routes/assistant_functions/route.ts @@ -213,6 +213,14 @@ const getApmServicesListRoute = createApmServerRoute({ }), t.partial({ 'service.environment': environmentRt.props.environment, + healthStatus: t.array( + t.union([ + t.literal(ServiceHealthStatus.unknown), + t.literal(ServiceHealthStatus.healthy), + t.literal(ServiceHealthStatus.warning), + t.literal(ServiceHealthStatus.critical), + ]) + ), }), ]), }), @@ -223,6 +231,8 @@ const getApmServicesListRoute = createApmServerRoute({ const { params } = resources; const { query } = params; + const { healthStatus } = query; + const [apmEventClient, apmAlertsClient, mlClient, randomSampler] = await Promise.all([ getApmEventClient(resources), @@ -253,7 +263,7 @@ const getApmServicesListRoute = createApmServerRoute({ mlClient, }); - const mappedItems = serviceItems.items.map((item): ApmServicesListItem => { + let mappedItems = serviceItems.items.map((item): ApmServicesListItem => { return { 'service.name': item.serviceName, 'agent.name': item.agentName, @@ -264,6 +274,12 @@ const getApmServicesListRoute = createApmServerRoute({ }; }); + if (healthStatus && healthStatus.length) { + mappedItems = mappedItems.filter((item): boolean => + healthStatus.includes(item.healthStatus) + ); + } + return { content: mappedItems, }; diff --git a/x-pack/plugins/cases/server/client/mocks.ts b/x-pack/plugins/cases/server/client/mocks.ts index f912ce26f581e..8fd0a61c35f30 100644 --- a/x-pack/plugins/cases/server/client/mocks.ts +++ b/x-pack/plugins/cases/server/client/mocks.ts @@ -11,7 +11,7 @@ import type { ISavedObjectsSerializer } from '@kbn/core-saved-objects-server'; import { createFileServiceMock } from '@kbn/files-plugin/server/mocks'; import { securityMock } from '@kbn/security-plugin/server/mocks'; -import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client.mock'; +import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client/actions_client.mock'; import { makeLensEmbeddableFactory } from '@kbn/lens-plugin/server/embeddable/make_lens_embeddable_factory'; import { serializerMock } from '@kbn/core-saved-objects-base-server-mocks'; diff --git a/x-pack/plugins/cloud_security_posture/public/pages/vulnerabilities/vulnerabilities.tsx b/x-pack/plugins/cloud_security_posture/public/pages/vulnerabilities/vulnerabilities.tsx index d0b6412eaa393..a9b8fdaa2f190 100644 --- a/x-pack/plugins/cloud_security_posture/public/pages/vulnerabilities/vulnerabilities.tsx +++ b/x-pack/plugins/cloud_security_posture/public/pages/vulnerabilities/vulnerabilities.tsx @@ -279,9 +279,7 @@ const VulnerabilitiesDataGrid = ({ [pageSize, setUrlQuery] ); - const showVulnerabilityFlyout = flyoutVulnerabilityIndex - ? flyoutVulnerabilityIndex > invalidIndex - : undefined; + const showVulnerabilityFlyout = flyoutVulnerabilityIndex > invalidIndex; if (data?.page.length === 0) { return ; diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/select_connector/select_connector.tsx b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/select_connector/select_connector.tsx index 83371d415ad84..ce8cb3c699478 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/select_connector/select_connector.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/select_connector/select_connector.tsx @@ -228,7 +228,7 @@ export const SelectConnector: React.FC = () => { {filteredConnectors.map((connector) => ( { diff --git a/x-pack/plugins/fleet/common/types/models/epm.ts b/x-pack/plugins/fleet/common/types/models/epm.ts index b5484c7cd1a15..c05acb3de8b9f 100644 --- a/x-pack/plugins/fleet/common/types/models/epm.ts +++ b/x-pack/plugins/fleet/common/types/models/epm.ts @@ -383,7 +383,7 @@ export interface RegistryDataStreamRoutingRules { rules: Array<{ target_dataset: string; if: string; - namespace: string; + namespace?: string; }>; } diff --git a/x-pack/plugins/fleet/cypress/e2e/agent_policy.cy.ts b/x-pack/plugins/fleet/cypress/e2e/agent_policy.cy.ts index 63da2cbbfa389..916590c05c0b6 100644 --- a/x-pack/plugins/fleet/cypress/e2e/agent_policy.cy.ts +++ b/x-pack/plugins/fleet/cypress/e2e/agent_policy.cy.ts @@ -5,7 +5,8 @@ * 2.0. */ import { TOAST_CLOSE_BTN } from '../screens/navigation'; - +import { setupFleetServer } from '../tasks/fleet_server'; +import { AGENT_FLYOUT, AGENT_POLICY_DETAILS_PAGE } from '../screens/fleet'; describe('Edit agent policy', () => { beforeEach(() => { cy.intercept('/api/fleet/agent_policies/policy-1', { @@ -59,4 +60,68 @@ describe('Edit agent policy', () => { expect(interception.request.body.description).to.equal('desc'); }); }); + + it('should show correct fleet server host for custom URL', () => { + setupFleetServer(); + + cy.intercept('/api/fleet/agent_policies/policy-1', { + item: { + id: 'policy-1', + name: 'Agent policy 1', + description: 'desc', + namespace: 'default', + monitoring_enabled: ['logs', 'metrics'], + status: 'active', + fleet_server_host_id: 'fleet-server-1', + package_policies: [], + }, + }); + + const apiKey = { + id: 'key-1', + active: true, + api_key_id: 'PefGQYoB0MXWbqVD6jhr', + api_key: 'this-is-the-api-key', + name: 'key-1', + policy_id: 'policy-1', + created_at: '2023-08-29T14:51:10.473Z', + }; + + cy.intercept('/api/fleet/enrollment_api_keys?**', { + items: [apiKey], + total: 1, + page: 1, + perPage: 10000, + }); + cy.intercept('/api/fleet/enrollment_api_keys/key-1', { + item: apiKey, + }); + cy.intercept('/api/fleet/fleet_server_hosts', { + items: [ + { + id: 'fleet-default-fleet-server-host', + name: 'Default', + is_default: true, + host_urls: ['https://192.168.1.23:8220'], + is_preconfigured: true, + }, + { + id: 'fleet-server-1', + name: 'custom host', + host_urls: ['https://xxx.yyy.zzz:443'], + is_default: false, + is_preconfigured: false, + }, + ], + page: 1, + perPage: 10000, + total: 2, + }); + cy.visit('/app/fleet/policies/policy-1'); + + cy.getBySel(AGENT_POLICY_DETAILS_PAGE.ADD_AGENT_LINK).click(); + cy.getBySel(AGENT_FLYOUT.KUBERNETES_PLATFORM_TYPE).click(); + cy.contains('https://xxx.yyy.zzz:443'); + cy.contains('this-is-the-api-key'); + }); }); diff --git a/x-pack/plugins/fleet/cypress/screens/fleet.ts b/x-pack/plugins/fleet/cypress/screens/fleet.ts index 3b8ffcc63b6f6..af799b6066600 100644 --- a/x-pack/plugins/fleet/cypress/screens/fleet.ts +++ b/x-pack/plugins/fleet/cypress/screens/fleet.ts @@ -88,6 +88,7 @@ export const AGENT_FLYOUT = { MANAGED_TAB: 'managedTab', CONFIRM_AGENT_ENROLLMENT_BUTTON: 'ConfirmAgentEnrollmentButton', INCOMING_DATA_CONFIRMED_CALL_OUT: 'IncomingDataConfirmedCallOut', + KUBERNETES_PLATFORM_TYPE: 'platformTypeKubernetes', }; export const AGENT_POLICIES_CREATE_AGENT_POLICY_FLYOUT = { @@ -228,3 +229,7 @@ export const FLEET_SERVER_SETUP = { export const API_KEYS = { REVOKE_KEY_BUTTON: 'enrollmentTokenTable.revokeBtn', }; + +export const AGENT_POLICY_DETAILS_PAGE = { + ADD_AGENT_LINK: 'addAgentLink', +}; diff --git a/x-pack/plugins/fleet/cypress/tasks/fleet_server.ts b/x-pack/plugins/fleet/cypress/tasks/fleet_server.ts index 8ec8e75c1d13f..2b696f7d7edfb 100644 --- a/x-pack/plugins/fleet/cypress/tasks/fleet_server.ts +++ b/x-pack/plugins/fleet/cypress/tasks/fleet_server.ts @@ -9,22 +9,27 @@ import { createAgentDoc } from './agents'; const FLEET_SERVER_POLICY_ID = 'fleet-server-policy'; // Create a Fleet server policy -export function setupFleetServer() { - let policyId: string; +export async function setupFleetServer() { + const policyId: string = FLEET_SERVER_POLICY_ID; let kibanaVersion: string; cy.request({ method: 'POST', url: '/api/fleet/agent_policies', headers: { 'kbn-xsrf': 'xx' }, + failOnStatusCode: false, body: { id: FLEET_SERVER_POLICY_ID, name: 'Fleet Server policy', namespace: 'default', has_fleet_server: true, }, - }).then((response: any) => { - policyId = response.body.item.id; + }).then((response) => { + // 409 is expected if the policy already exists + // this allows the test to be run repeatedly in dev + if (response.status > 299 && response.status !== 409) { + throw new Error(`Failed to create Fleet Server policy: ${response.body.message}`); + } }); cy.getKibanaVersion().then((version) => { diff --git a/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/create_package_policy_page/multi_page_layout/components/page_steps/install_agent/install_agent_managed.tsx b/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/create_package_policy_page/multi_page_layout/components/page_steps/install_agent/install_agent_managed.tsx index 8b4ff121f3e2a..e78f0407baf91 100644 --- a/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/create_package_policy_page/multi_page_layout/components/page_steps/install_agent/install_agent_managed.tsx +++ b/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/create_package_policy_page/multi_page_layout/components/page_steps/install_agent/install_agent_managed.tsx @@ -78,6 +78,7 @@ export const InstallElasticAgentManagedPageStep: React.FC selectedApiKeyId: enrollmentAPIKey.id, isComplete: commandCopied || !!enrolledAgentIds.length, fullCopyButton: true, + fleetServerHost: fleetServerHosts?.[0], onCopy: () => setCommandCopied(true), }), ]; diff --git a/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/details_page/components/header/right_content.tsx b/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/details_page/components/header/right_content.tsx index b07af445532a0..3ec77353fd211 100644 --- a/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/details_page/components/header/right_content.tsx +++ b/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/details_page/components/header/right_content.tsx @@ -69,7 +69,7 @@ export const HeaderRightContent: React.FunctionComponent + {isFleetServerPolicy ? ( void; onDownload?: () => void; + fleetServerHost?: string; } export const KubernetesInstructions: React.FunctionComponent = ({ enrollmentAPIKey, onCopy, onDownload, + fleetServerHost, }) => { const core = useStartServices(); - const settings = useGetSettings(); const { notifications } = core; const [yaml, setYaml] = useState(''); - const [fleetServer, setFleetServer] = useState(); const [copyButtonClicked, setCopyButtonClicked] = useState(false); const [downloadButtonClicked, setDownloadButtonClicked] = useState(false); @@ -59,13 +59,10 @@ export const KubernetesInstructions: React.FunctionComponent = ({ useEffect(() => { async function fetchK8sManifest() { try { - const fleetServerHosts = settings.data?.item.fleet_server_hosts; - let host = ''; - if (fleetServerHosts !== undefined && fleetServerHosts.length !== 0) { - setFleetServer(fleetServerHosts[0]); - host = fleetServerHosts[0]; - } - const query = { fleetServer: host, enrolToken: enrollmentAPIKey }; + const query = { + enrolToken: enrollmentAPIKey, + ...(fleetServerHost && { fleetServer: fleetServerHost }), + }; const res = await sendGetK8sManifest(query); if (res.error) { throw res.error; @@ -85,7 +82,7 @@ export const KubernetesInstructions: React.FunctionComponent = ({ } } fetchK8sManifest(); - }, [notifications.toasts, enrollmentAPIKey, settings.data?.item.fleet_server_hosts]); + }, [notifications.toasts, enrollmentAPIKey, fleetServerHost]); const downloadDescription = ( = ({ ); + const searchParams = new URLSearchParams({ + ...(fleetServerHost && { fleetServer: fleetServerHost }), + ...(enrollmentAPIKey && { enrolToken: enrollmentAPIKey }), + }); + const downloadLink = core.http.basePath.prepend( - `${agentPolicyRouteService.getK8sFullDownloadPath()}?fleetServer=${fleetServer}&enrolToken=${enrollmentAPIKey}` + `${agentPolicyRouteService.getK8sFullDownloadPath()}${searchParams.toString()}` ); const k8sDownloadYaml = ( diff --git a/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/compute_steps.tsx b/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/compute_steps.tsx index 08c967e98e04f..912ad1e4ae42d 100644 --- a/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/compute_steps.tsx +++ b/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/compute_steps.tsx @@ -273,6 +273,7 @@ export const ManagedSteps: React.FunctionComponent = ({ selectedApiKeyId, isK8s, cloudSecurityIntegration, + fleetServerHost: fleetServerHosts?.[0], enrollToken, }) ); @@ -310,16 +311,17 @@ export const ManagedSteps: React.FunctionComponent = ({ setSelectedPolicyId, refreshAgentPolicies, selectionType, - isK8s, cloudSecurityIntegration, - installManagedCommands, apiKeyData, - enrolledAgentIds, mode, setMode, enrollToken, + installManagedCommands, + isK8s, + fleetServerHosts, onClickViewAgents, link, + enrolledAgentIds, agentDataConfirmed, installedPackagePolicy, ]); diff --git a/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/install_managed_agent_step.tsx b/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/install_managed_agent_step.tsx index 6c2ff29894925..2a9c0536f3389 100644 --- a/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/install_managed_agent_step.tsx +++ b/x-pack/plugins/fleet/public/components/agent_enrollment_flyout/steps/install_managed_agent_step.tsx @@ -25,6 +25,7 @@ export const InstallManagedAgentStep = ({ isK8s, cloudSecurityIntegration, enrollToken, + fleetServerHost, isComplete, fullCopyButton, onCopy, @@ -34,6 +35,7 @@ export const InstallManagedAgentStep = ({ isK8s?: K8sMode; cloudSecurityIntegration?: CloudSecurityIntegration | undefined; enrollToken?: string; + fleetServerHost?: string; installCommand: CommandsByPlatform; isComplete?: boolean; fullCopyButton?: boolean; @@ -55,6 +57,7 @@ export const InstallManagedAgentStep = ({ enrollToken={enrollToken} onCopy={onCopy} fullCopyButton={fullCopyButton} + fleetServerHost={fleetServerHost} /> ) : ( diff --git a/x-pack/plugins/fleet/public/components/enrollment_instructions/install_section.tsx b/x-pack/plugins/fleet/public/components/enrollment_instructions/install_section.tsx index b4f90212d8625..44a251fefd7bc 100644 --- a/x-pack/plugins/fleet/public/components/enrollment_instructions/install_section.tsx +++ b/x-pack/plugins/fleet/public/components/enrollment_instructions/install_section.tsx @@ -19,6 +19,7 @@ interface Props { isK8s: K8sMode | undefined; cloudSecurityIntegration: CloudSecurityIntegration | undefined; enrollToken?: string; + fleetServerHost?: string; fullCopyButton?: boolean; isManaged?: boolean; onCopy?: () => void; @@ -29,6 +30,7 @@ export const InstallSection: React.FunctionComponent = ({ isK8s, cloudSecurityIntegration, enrollToken, + fleetServerHost, fullCopyButton = false, isManaged = true, onCopy, @@ -50,6 +52,7 @@ export const InstallSection: React.FunctionComponent = ({ hasK8sIntegrationMultiPage={isK8s === 'IS_KUBERNETES_MULTIPAGE'} isManaged={isManaged} enrollToken={enrollToken} + fleetServerHost={fleetServerHost} /> ); diff --git a/x-pack/plugins/fleet/public/components/platform_selector.tsx b/x-pack/plugins/fleet/public/components/platform_selector.tsx index a41194b472cbd..12011cb5a6449 100644 --- a/x-pack/plugins/fleet/public/components/platform_selector.tsx +++ b/x-pack/plugins/fleet/public/components/platform_selector.tsx @@ -43,6 +43,7 @@ interface Props { hasFleetServer?: boolean; enrollToken?: string | undefined; fullCopyButton?: boolean; + fleetServerHost?: string; onCopy?: () => void; } @@ -64,6 +65,7 @@ export const PlatformSelector: React.FunctionComponent = ({ isManaged, enrollToken, hasFleetServer, + fleetServerHost, fullCopyButton, onCopy, }) => { @@ -205,6 +207,7 @@ export const PlatformSelector: React.FunctionComponent = ({ onCopy={onCopy} onDownload={onCopy} enrollmentAPIKey={enrollToken} + fleetServerHost={fleetServerHost} /> diff --git a/x-pack/plugins/fleet/server/collectors/agent_collectors.ts b/x-pack/plugins/fleet/server/collectors/agent_collectors.ts index 40d1b7f4d2724..109f2d5d36c0b 100644 --- a/x-pack/plugins/fleet/server/collectors/agent_collectors.ts +++ b/x-pack/plugins/fleet/server/collectors/agent_collectors.ts @@ -75,11 +75,6 @@ export interface AgentData { version: string; count: number; }>; - components_status: Array<{ - id: string; - status: string; - count: number; - }>; } const DEFAULT_AGENT_DATA = { @@ -87,7 +82,6 @@ const DEFAULT_AGENT_DATA = { agents_per_policy: [], agents_per_version: [], agents_per_os: [], - components_status: [], }; export const getAgentData = async ( @@ -141,25 +135,6 @@ export const getAgentData = async ( ], }, }, - components: { - nested: { - path: 'components', - }, - aggs: { - components_status: { - multi_terms: { - terms: [ - { - field: 'components.id', - }, - { - field: 'components.status', - }, - ], - }, - }, - }, - }, }, }, { signal: abortController.signal } @@ -215,20 +190,11 @@ export const getAgentData = async ( count: bucket.doc_count, })); - const componentsStatus = ( - (response?.aggregations?.components as any).components_status?.buckets ?? [] - ).map((bucket: any) => ({ - id: bucket.key[0], - status: bucket.key[1], - count: bucket.doc_count, - })); - return { agent_checkin_status: statuses, agents_per_policy: agentsPerPolicy, agents_per_version: agentsPerVersion, agents_per_os: agentsPerOS, - components_status: componentsStatus, }; } catch (error) { if (error.statusCode === 404) { diff --git a/x-pack/plugins/fleet/server/integration_tests/fleet_usage_telemetry.test.ts b/x-pack/plugins/fleet/server/integration_tests/fleet_usage_telemetry.test.ts index 06c612e48c13a..2aeb7a0e1a963 100644 --- a/x-pack/plugins/fleet/server/integration_tests/fleet_usage_telemetry.test.ts +++ b/x-pack/plugins/fleet/server/integration_tests/fleet_usage_telemetry.test.ts @@ -434,23 +434,6 @@ describe('fleet usage telemetry', () => { count: 1, }, ], - components_status: [ - { - id: 'beat/metrics-monitoring', - status: 'HEALTHY', - count: 2, - }, - { - id: 'filestream-monitoring', - status: 'HEALTHY', - count: 1, - }, - { - id: 'filestream-monitoring', - status: 'UNHEALTHY', - count: 1, - }, - ], fleet_server_config: { policies: [ { diff --git a/x-pack/plugins/fleet/server/plugin.ts b/x-pack/plugins/fleet/server/plugin.ts index 8a663247819ef..9603eb2b47064 100644 --- a/x-pack/plugins/fleet/server/plugin.ts +++ b/x-pack/plugins/fleet/server/plugin.ts @@ -600,7 +600,7 @@ export class FleetPlugin }; } - public async stop() { + public stop() { appContextService.stop(); this.policyWatcher?.stop(); licenseService.stop(); diff --git a/x-pack/plugins/fleet/server/services/agent_policy.ts b/x-pack/plugins/fleet/server/services/agent_policy.ts index e76a8c12a94dc..e3e4a5bd577d6 100644 --- a/x-pack/plugins/fleet/server/services/agent_policy.ts +++ b/x-pack/plugins/fleet/server/services/agent_policy.ts @@ -611,7 +611,23 @@ class AgentPolicyService { ); } - // Get updated agent policy + // Tamper protection is dependent on endpoint package policy + // Match tamper protection setting to the original policy + if (baseAgentPolicy.is_protected) { + await this._update( + soClient, + esClient, + newAgentPolicy.id, + { is_protected: true }, + options?.user, + { + bumpRevision: false, + removeProtection: false, + } + ); + } + + // Get updated agent policy with package policies and adjusted tamper protection const updatedAgentPolicy = await this.get(soClient, newAgentPolicy.id, true); if (!updatedAgentPolicy) { throw new Error('Copied agent policy not found'); diff --git a/x-pack/plugins/fleet/server/services/telemetry/fleet_usages_schema.ts b/x-pack/plugins/fleet/server/services/telemetry/fleet_usages_schema.ts index 1f134011add45..616d30ad3d4b1 100644 --- a/x-pack/plugins/fleet/server/services/telemetry/fleet_usages_schema.ts +++ b/x-pack/plugins/fleet/server/services/telemetry/fleet_usages_schema.ts @@ -286,29 +286,4 @@ export const fleetUsagesSchema: RootSchema = { }, }, }, - components_status: { - type: 'array', - items: { - properties: { - id: { - type: 'keyword', - _meta: { - description: 'Component Id', - }, - }, - status: { - type: 'keyword', - _meta: { - description: 'Component Status', - }, - }, - count: { - type: 'long', - _meta: { - description: 'Number of this component with this status', - }, - }, - }, - }, - }, }; diff --git a/x-pack/plugins/index_management/__jest__/client_integration/helpers/http_requests.ts b/x-pack/plugins/index_management/__jest__/client_integration/helpers/http_requests.ts index 0a054fccdfcc1..82ee841eb7398 100644 --- a/x-pack/plugins/index_management/__jest__/client_integration/helpers/http_requests.ts +++ b/x-pack/plugins/index_management/__jest__/client_integration/helpers/http_requests.ts @@ -97,8 +97,11 @@ const registerHttpRequestMockHelpers = ( const setLoadIndexSettingsResponse = (response?: HttpResponse, error?: ResponseError) => mockResponse('GET', `${API_BASE_PATH}/settings/:name`, response, error); - const setLoadIndexMappingResponse = (response?: HttpResponse, error?: ResponseError) => - mockResponse('GET', `${API_BASE_PATH}/mapping/:name`, response, error); + const setLoadIndexMappingResponse = ( + indexName: string, + response?: HttpResponse, + error?: ResponseError + ) => mockResponse('GET', `${API_BASE_PATH}/mapping/${indexName}`, response, error); const setLoadIndexStatsResponse = (response?: HttpResponse, error?: ResponseError) => mockResponse('GET', `${API_BASE_PATH}/stats/:name`, response, error); diff --git a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.helpers.ts b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.helpers.ts index 43d436c495799..e31e368628c86 100644 --- a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.helpers.ts +++ b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.helpers.ts @@ -38,6 +38,12 @@ export interface IndexDetailsPageTestBed extends TestBed { getHeader: () => string; clickIndexDetailsTab: (tab: IndexDetailsSection) => Promise; getActiveTabContent: () => string; + mappings: { + getCodeBlockContent: () => string; + getDocsLinkHref: () => string; + isErrorDisplayed: () => boolean; + clickErrorReloadButton: () => Promise; + }; clickBackToIndicesButton: () => Promise; discoverLinkExists: () => boolean; contextMenu: { @@ -91,6 +97,24 @@ export const setup = async ( return find('indexDetailsContent').text(); }; + const mappings = { + getCodeBlockContent: () => { + return find('indexDetailsMappingsCodeBlock').text(); + }, + getDocsLinkHref: () => { + return find('indexDetailsMappingsDocsLink').prop('href'); + }, + isErrorDisplayed: () => { + return exists('indexDetailsMappingsError'); + }, + clickErrorReloadButton: async () => { + await act(async () => { + find('indexDetailsMappingsReloadButton').simulate('click'); + }); + component.update(); + }, + }; + const clickBackToIndicesButton = async () => { await act(async () => { find('indexDetailsBackToIndicesButton').simulate('click'); @@ -142,6 +166,7 @@ export const setup = async ( getHeader, clickIndexDetailsTab, getActiveTabContent, + mappings, clickBackToIndicesButton, discoverLinkExists, contextMenu, diff --git a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.ts b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.ts index 7b144fd0bad40..e4b4c33489262 100644 --- a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.ts +++ b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.ts @@ -9,7 +9,7 @@ import { setupEnvironment } from '../helpers'; import { IndexDetailsPageTestBed, setup } from './index_details_page.helpers'; import { act } from 'react-dom/test-utils'; import { IndexDetailsSection } from '../../../public/application/sections/home/index_list/details_page'; -import { testIndexMock, testIndexName } from './mocks'; +import { testIndexMappings, testIndexMock, testIndexName } from './mocks'; import { API_BASE_PATH, INTERNAL_API_BASE_PATH } from '../../../common'; describe('', () => { @@ -22,6 +22,7 @@ describe('', () => { ({ httpSetup, httpRequestsMockHelpers } = mockEnvironment); // testIndexName is configured in initialEntries of the memory router httpRequestsMockHelpers.setLoadIndexDetailsResponse(testIndexName, testIndexMock); + httpRequestsMockHelpers.setLoadIndexMappingResponse(testIndexName, testIndexMappings); await act(async () => { testBed = await setup(httpSetup, { @@ -84,10 +85,59 @@ describe('', () => { expect(tabContent).toEqual('Documents'); }); - it('mappings tab', async () => { - await testBed.actions.clickIndexDetailsTab(IndexDetailsSection.Mappings); - const tabContent = testBed.actions.getActiveTabContent(); - expect(tabContent).toEqual('Mappings'); + describe('mappings tab', () => { + it('loads mappings from the API', async () => { + await testBed.actions.clickIndexDetailsTab(IndexDetailsSection.Mappings); + expect(httpSetup.get).toHaveBeenLastCalledWith(`${API_BASE_PATH}/mapping/${testIndexName}`, { + asSystemRequest: undefined, + body: undefined, + query: undefined, + version: undefined, + }); + }); + + it('displays the mappings in the code block', async () => { + await testBed.actions.clickIndexDetailsTab(IndexDetailsSection.Mappings); + + const tabContent = testBed.actions.mappings.getCodeBlockContent(); + expect(tabContent).toEqual(JSON.stringify(testIndexMappings, null, 2)); + }); + + it('sets the docs link href from the documenation service', async () => { + await testBed.actions.clickIndexDetailsTab(IndexDetailsSection.Mappings); + const docsLinkHref = testBed.actions.mappings.getDocsLinkHref(); + // the url from the mocked docs mock + expect(docsLinkHref).toEqual( + 'https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/mapping.html' + ); + }); + + describe('error loading mappings', () => { + beforeEach(async () => { + httpRequestsMockHelpers.setLoadIndexMappingResponse(testIndexName, undefined, { + statusCode: 400, + message: `Was not able to load mappings`, + }); + await act(async () => { + testBed = await setup(httpSetup); + }); + + testBed.component.update(); + await testBed.actions.clickIndexDetailsTab(IndexDetailsSection.Mappings); + }); + + it('there is an error prompt', async () => { + expect(testBed.actions.mappings.isErrorDisplayed()).toBe(true); + }); + + it('resends a request when reload button is clicked', async () => { + // already sent 3 requests while setting up the component + const numberOfRequests = 3; + expect(httpSetup.get).toHaveBeenCalledTimes(numberOfRequests); + await testBed.actions.mappings.clickErrorReloadButton(); + expect(httpSetup.get).toHaveBeenCalledTimes(numberOfRequests + 1); + }); + }); }); it('settings tab', async () => { diff --git a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/mocks.ts b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/mocks.ts index 5e165fe0702e6..bda26b3c2368c 100644 --- a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/mocks.ts +++ b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/mocks.ts @@ -29,3 +29,15 @@ export const testIndexMock: Index = { }, isFollowerIndex: false, }; + +export const testIndexMappings = { + mappings: { + dynamic: 'false', + dynamic_templates: [], + properties: { + '@timestamp': { + type: 'date', + }, + }, + }, +}; diff --git a/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page.tsx b/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page.tsx index 6d91b3a7991a1..5464e3ebf0ac2 100644 --- a/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page.tsx +++ b/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page.tsx @@ -18,12 +18,14 @@ import { } from '@elastic/eui'; import { SectionLoading } from '@kbn/es-ui-shared-plugin/public'; +import { css } from '@emotion/react'; import { Index } from '../../../../../../common'; import { loadIndex } from '../../../../services'; import { DiscoverLink } from '../../../../lib/discover_link'; import { Section } from '../../home'; import { DetailsPageError } from './details_page_error'; import { ManageIndexButton } from './manage_index_button'; +import { DetailsPageMappings } from './details_page_mappings'; export enum IndexDetailsSection { Overview = 'overview', @@ -164,7 +166,12 @@ export const DetailsPage: React.FunctionComponent< -
+
Documents
} />
Mappings
} + path={`/${Section.Indices}/:indexName/${IndexDetailsSection.Mappings}`} + component={DetailsPageMappings} />
- - -
-
{JSON.stringify(index, null, 2)}
-
); }; diff --git a/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page_mappings.tsx b/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page_mappings.tsx new file mode 100644 index 0000000000000..ca8556599f224 --- /dev/null +++ b/x-pack/plugins/index_management/public/application/sections/home/index_list/details_page/details_page_mappings.tsx @@ -0,0 +1,168 @@ +/* + * 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, { FunctionComponent } from 'react'; +import { + EuiButton, + EuiCodeBlock, + EuiFlexGroup, + EuiFlexItem, + EuiIcon, + EuiLink, + EuiPageTemplate, + EuiPanel, + EuiSpacer, + EuiText, + EuiTitle, +} from '@elastic/eui'; +import { css } from '@emotion/react'; +import { RouteComponentProps } from 'react-router-dom'; +import { FormattedMessage } from '@kbn/i18n-react'; +import { SectionLoading } from '@kbn/es-ui-shared-plugin/public'; +import { useLoadIndexMappings, documentationService } from '../../../../services'; + +export const DetailsPageMappings: FunctionComponent> = ({ + match: { + params: { indexName }, + }, +}) => { + const { isLoading, data, error, resendRequest } = useLoadIndexMappings(indexName); + + if (isLoading) { + return ( + + + + ); + } + if (error) { + return ( + + + + } + body={ + <> + + + + + + + + + } + /> + ); + } + + return ( + // using "rowReverse" to keep docs links on the top of the mappings code block on smaller screen + + + + + + + + + +

+ +

+
+
+
+ + +

+ +

+
+ + + + +
+
+ + + + + {JSON.stringify(data, null, 2)} + + + +
+ ); +}; diff --git a/x-pack/plugins/index_management/public/application/services/api.ts b/x-pack/plugins/index_management/public/application/services/api.ts index b19382364722c..829e4dda357b0 100644 --- a/x-pack/plugins/index_management/public/application/services/api.ts +++ b/x-pack/plugins/index_management/public/application/services/api.ts @@ -315,7 +315,14 @@ export function useLoadNodesPlugins() { export function loadIndex(indexName: string) { return sendRequest({ - path: `${INTERNAL_API_BASE_PATH}/indices/${indexName}`, + path: `${INTERNAL_API_BASE_PATH}/indices/${encodeURIComponent(indexName)}`, + method: 'get', + }); +} + +export function useLoadIndexMappings(indexName: string) { + return useRequest({ + path: `${API_BASE_PATH}/mapping/${encodeURIComponent(indexName)}`, method: 'get', }); } diff --git a/x-pack/plugins/index_management/public/application/services/index.ts b/x-pack/plugins/index_management/public/application/services/index.ts index 5cb65c04b6c9d..5d3cd1f52efe6 100644 --- a/x-pack/plugins/index_management/public/application/services/index.ts +++ b/x-pack/plugins/index_management/public/application/services/index.ts @@ -25,6 +25,7 @@ export { simulateIndexTemplate, useLoadNodesPlugins, loadIndex, + useLoadIndexMappings, } from './api'; export { sortTable } from './sort_table'; @@ -32,3 +33,4 @@ export { sortTable } from './sort_table'; export { UiMetricService } from './ui_metric'; export { HttpService } from './http'; export { NotificationService } from './notification'; +export { documentationService } from './documentation'; diff --git a/x-pack/plugins/infra/public/components/asset_details/hooks/use_page_header.tsx b/x-pack/plugins/infra/public/components/asset_details/hooks/use_page_header.tsx index 07baa3c5f589b..6e0cbf9ad2150 100644 --- a/x-pack/plugins/infra/public/components/asset_details/hooks/use_page_header.tsx +++ b/x-pack/plugins/infra/public/components/asset_details/hooks/use_page_header.tsx @@ -4,26 +4,88 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ - -import { useEuiTheme, EuiIcon, type EuiPageHeaderProps } from '@elastic/eui'; +import { + useEuiTheme, + EuiIcon, + type EuiPageHeaderProps, + type EuiBreadcrumbsProps, + EuiFlexGroup, + EuiFlexItem, +} from '@elastic/eui'; import { css } from '@emotion/react'; import { useLinkProps } from '@kbn/observability-shared-plugin/public'; import React, { useCallback, useMemo } from 'react'; import { capitalize } from 'lodash'; +import { useHistory, useLocation } from 'react-router-dom'; +import { FormattedMessage } from '@kbn/i18n-react'; +import { useKibanaContextForPlugin } from '../../../hooks/use_kibana'; import { APM_HOST_FILTER_FIELD } from '../constants'; import { LinkToAlertsRule, LinkToApmServices, LinkToNodeDetails } from '../links'; -import { FlyoutTabIds, type LinkOptions, type Tab, type TabIds } from '../types'; +import { FlyoutTabIds, type RouteState, type LinkOptions, type Tab, type TabIds } from '../types'; import { useAssetDetailsRenderPropsContext } from './use_asset_details_render_props'; import { useDateRangeProviderContext } from './use_date_range'; import { useTabSwitcherContext } from './use_tab_switcher'; type TabItem = NonNullable['tabs']>[number]; -export const usePageHeader = (tabs: Tab[], links?: LinkOptions[]) => { +export const usePageHeader = (tabs: Tab[] = [], links: LinkOptions[] = []) => { const { rightSideItems } = useRightSideItems(links); const { tabEntries } = useTabs(tabs); + const { breadcrumbs } = useTemplateHeaderBreadcrumbs(); + + return { rightSideItems, tabEntries, breadcrumbs }; +}; + +export const useTemplateHeaderBreadcrumbs = () => { + const history = useHistory(); + const location = useLocation(); + const { + services: { + application: { navigateToApp }, + }, + } = useKibanaContextForPlugin(); + + const onClick = (e: React.MouseEvent) => { + if (location.state) { + navigateToApp(location.state.originAppId, { + replace: true, + path: `${location.state.originPathname}${location.state.originSearch}`, + }); + } else { + history.goBack(); + } + e.preventDefault(); + }; + + const breadcrumbs: EuiBreadcrumbsProps['breadcrumbs'] = + // If there is a state object in location, it's persisted in case the page is opened in a new tab or after page refresh + // With that, we can show the return button. Otherwise, it will be hidden (ex: the user opened a shared URL or opened the page from their bookmarks) + location.state || history.length > 1 + ? [ + { + text: ( + + + + + + + + + ), + color: 'primary', + 'aria-current': false, + 'data-test-subj': 'infraAssetDetailsReturnButton', + href: '#', + onClick, + }, + ] + : []; - return { rightSideItems, tabEntries }; + return { breadcrumbs }; }; const useRightSideItems = (links?: LinkOptions[]) => { diff --git a/x-pack/plugins/infra/public/components/asset_details/links/link_to_node_details.tsx b/x-pack/plugins/infra/public/components/asset_details/links/link_to_node_details.tsx index 4b0e8a52d400c..87297b247bb35 100644 --- a/x-pack/plugins/infra/public/components/asset_details/links/link_to_node_details.tsx +++ b/x-pack/plugins/infra/public/components/asset_details/links/link_to_node_details.tsx @@ -8,7 +8,7 @@ import React from 'react'; import { FormattedMessage } from '@kbn/i18n-react'; import { EuiButtonEmpty } from '@elastic/eui'; import { useLinkProps } from '@kbn/observability-shared-plugin/public'; -import { getNodeDetailUrl } from '../../../pages/link_to'; +import { useNodeDetailsRedirect } from '../../../pages/link_to'; import type { InventoryItemType } from '../../../../common/inventory_models/types'; export interface LinkToNodeDetailsProps { @@ -22,13 +22,16 @@ export const LinkToNodeDetails = ({ assetType, dateRangeTimestamp, }: LinkToNodeDetailsProps) => { + const { getNodeDetailUrl } = useNodeDetailsRedirect(); const nodeDetailMenuItemLinkProps = useLinkProps({ ...getNodeDetailUrl({ nodeType: assetType, nodeId: asset.id, - from: dateRangeTimestamp.from, - to: dateRangeTimestamp.to, - assetName: asset.name, + search: { + from: dateRangeTimestamp.from, + to: dateRangeTimestamp.to, + assetName: asset.name, + }, }), }); diff --git a/x-pack/plugins/infra/public/components/asset_details/template/page.tsx b/x-pack/plugins/infra/public/components/asset_details/template/page.tsx index bbf23196bf7ee..b08458731d813 100644 --- a/x-pack/plugins/infra/public/components/asset_details/template/page.tsx +++ b/x-pack/plugins/infra/public/components/asset_details/template/page.tsx @@ -18,7 +18,7 @@ import type { ContentTemplateProps } from '../types'; export const Page = ({ header: { tabs = [], links = [] } }: ContentTemplateProps) => { const { asset, loading } = useAssetDetailsRenderPropsContext(); - const { rightSideItems, tabEntries } = usePageHeader(tabs, links); + const { rightSideItems, tabEntries, breadcrumbs } = usePageHeader(tabs, links); const { headerHeight } = useKibanaHeader(); return loading ? ( @@ -49,6 +49,7 @@ export const Page = ({ header: { tabs = [], links = [] } }: ContentTemplateProps pageTitle={asset.name} tabs={tabEntries} rightSideItems={rightSideItems} + breadcrumbs={breadcrumbs} /> diff --git a/x-pack/plugins/infra/public/components/asset_details/types.ts b/x-pack/plugins/infra/public/components/asset_details/types.ts index b17c2c988eb27..548068d93e661 100644 --- a/x-pack/plugins/infra/public/components/asset_details/types.ts +++ b/x-pack/plugins/infra/public/components/asset_details/types.ts @@ -6,6 +6,7 @@ */ import { TimeRange } from '@kbn/es-query'; +import { Search } from 'history'; import type { InventoryItemType } from '../../../common/inventory_models/types'; export interface Asset { @@ -79,4 +80,10 @@ export interface ContentTemplateProps { header: Pick; } +export interface RouteState { + originAppId: string; + originPathname?: string; + originSearch?: Search; +} + export type DataViewOrigin = 'logs' | 'metrics'; diff --git a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/container/container_metrics_table.test.tsx b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/container/container_metrics_table.test.tsx index 2395e3bca195a..0698aa9d651da 100644 --- a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/container/container_metrics_table.test.tsx +++ b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/container/container_metrics_table.test.tsx @@ -21,6 +21,16 @@ import { createLazyContainerMetricsTable } from './create_lazy_container_metrics import IntegratedContainerMetricsTable from './integrated_container_metrics_table'; import { metricByField } from './use_container_metrics_table'; +jest.mock('../../../pages/link_to', () => ({ + useNodeDetailsRedirect: jest.fn(() => ({ + getNodeDetailUrl: jest.fn(() => ({ + app: 'metrics', + pathname: 'link-to/container-detail/example-01', + search: { from: '1546340400000', to: '1546344000000' }, + })), + })), +})); + describe('ContainerMetricsTable', () => { const timerange = { from: 'now-15m', diff --git a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/host/host_metrics_table.test.tsx b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/host/host_metrics_table.test.tsx index 970ec38707b16..c076038d50249 100644 --- a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/host/host_metrics_table.test.tsx +++ b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/host/host_metrics_table.test.tsx @@ -21,6 +21,16 @@ import { HostMetricsTable } from './host_metrics_table'; import IntegratedHostMetricsTable from './integrated_host_metrics_table'; import { metricByField } from './use_host_metrics_table'; +jest.mock('../../../pages/link_to', () => ({ + useNodeDetailsRedirect: jest.fn(() => ({ + getNodeDetailUrl: jest.fn(() => ({ + app: 'metrics', + pathname: 'link-to/host-detail/example-01', + search: { from: '1546340400000', to: '1546344000000' }, + })), + })), +})); + describe('HostMetricsTable', () => { const timerange = { from: 'now-15m', diff --git a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/pod/pod_metrics_table.test.tsx b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/pod/pod_metrics_table.test.tsx index 10487aa5aae06..27f60b1906003 100644 --- a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/pod/pod_metrics_table.test.tsx +++ b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/pod/pod_metrics_table.test.tsx @@ -21,6 +21,16 @@ import IntegratedPodMetricsTable from './integrated_pod_metrics_table'; import { PodMetricsTable } from './pod_metrics_table'; import { metricByField } from './use_pod_metrics_table'; +jest.mock('../../../pages/link_to', () => ({ + useNodeDetailsRedirect: jest.fn(() => ({ + getNodeDetailUrl: jest.fn(() => ({ + app: 'metrics', + pathname: 'link-to/pod-detail/example-01', + search: { from: '1546340400000', to: '1546344000000' }, + })), + })), +})); + describe('PodMetricsTable', () => { const timerange = { from: 'now-15m', diff --git a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/shared/components/metrics_node_details_link.tsx b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/shared/components/metrics_node_details_link.tsx index d70db66756ffa..fd8868f0218af 100644 --- a/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/shared/components/metrics_node_details_link.tsx +++ b/x-pack/plugins/infra/public/components/infrastructure_node_metrics_tables/shared/components/metrics_node_details_link.tsx @@ -10,7 +10,7 @@ import { EuiLink } from '@elastic/eui'; import React from 'react'; import { useLinkProps } from '@kbn/observability-shared-plugin/public'; import type { InventoryItemType } from '../../../../../common/inventory_models/types'; -import { getNodeDetailUrl } from '../../../../pages/link_to'; +import { useNodeDetailsRedirect } from '../../../../pages/link_to'; import type { MetricsExplorerTimeOptions } from '../../../../pages/metrics/metrics_explorer/hooks/use_metrics_explorer_options'; type ExtractStrict = Extract; @@ -28,12 +28,15 @@ export const MetricsNodeDetailsLink = ({ nodeType, timerange, }: MetricsNodeDetailsLinkProps) => { + const { getNodeDetailUrl } = useNodeDetailsRedirect(); const linkProps = useLinkProps( getNodeDetailUrl({ nodeType, nodeId: id, - from: parse(timerange.from)?.valueOf(), - to: parse(timerange.to)?.valueOf(), + search: { + from: parse(timerange.from)?.valueOf(), + to: parse(timerange.to)?.valueOf(), + }, }) ); diff --git a/x-pack/plugins/infra/public/pages/link_to/index.ts b/x-pack/plugins/infra/public/pages/link_to/index.ts index 0991c6dba1936..aae22218a4f83 100644 --- a/x-pack/plugins/infra/public/pages/link_to/index.ts +++ b/x-pack/plugins/infra/public/pages/link_to/index.ts @@ -8,4 +8,5 @@ export { LinkToLogsPage } from './link_to_logs'; export { LinkToMetricsPage } from './link_to_metrics'; export { RedirectToNodeLogs } from './redirect_to_node_logs'; -export { getNodeDetailUrl, RedirectToNodeDetail } from './redirect_to_node_detail'; +export { RedirectToNodeDetail } from './redirect_to_node_detail'; +export { useNodeDetailsRedirect } from './use_node_details_redirect'; diff --git a/x-pack/plugins/infra/public/pages/link_to/query_params.ts b/x-pack/plugins/infra/public/pages/link_to/query_params.ts index e071ec0a82e34..a80f163993588 100644 --- a/x-pack/plugins/infra/public/pages/link_to/query_params.ts +++ b/x-pack/plugins/infra/public/pages/link_to/query_params.ts @@ -33,3 +33,8 @@ export const getNodeNameFromLocation = (location: Location) => { const nameParam = getParamFromQueryString(getQueryStringFromLocation(location), 'assetName'); return nameParam; }; + +export const getStateFromLocation = (location: Location) => { + const nameParam = getParamFromQueryString(getQueryStringFromLocation(location), 'state'); + return nameParam; +}; diff --git a/x-pack/plugins/infra/public/pages/link_to/redirect_to_node_detail.tsx b/x-pack/plugins/infra/public/pages/link_to/redirect_to_node_detail.tsx index 8045c95fe78d6..1bd8aa3b793c5 100644 --- a/x-pack/plugins/infra/public/pages/link_to/redirect_to_node_detail.tsx +++ b/x-pack/plugins/infra/public/pages/link_to/redirect_to_node_detail.tsx @@ -6,24 +6,24 @@ */ import React from 'react'; -import { Redirect, RouteComponentProps } from 'react-router-dom'; - -import { LinkDescriptor } from '@kbn/observability-shared-plugin/public'; +import { Redirect, useLocation, useRouteMatch } from 'react-router-dom'; import { replaceMetricTimeInQueryString } from '../metrics/metric_detail/hooks/use_metrics_time'; -import { getFromFromLocation, getToFromLocation, getNodeNameFromLocation } from './query_params'; +import { + getFromFromLocation, + getToFromLocation, + getNodeNameFromLocation, + getStateFromLocation, +} from './query_params'; import { InventoryItemType } from '../../../common/inventory_models/types'; +import { RouteState } from '../../components/asset_details/types'; + +export const RedirectToNodeDetail = () => { + const { + params: { nodeType, nodeId }, + } = useRouteMatch<{ nodeType: InventoryItemType; nodeId: string }>(); -type RedirectToNodeDetailProps = RouteComponentProps<{ - nodeId: string; - nodeType: InventoryItemType; -}>; + const location = useLocation(); -export const RedirectToNodeDetail = ({ - match: { - params: { nodeId, nodeType }, - }, - location, -}: RedirectToNodeDetailProps) => { const searchString = replaceMetricTimeInQueryString( getFromFromLocation(location), getToFromLocation(location) @@ -38,33 +38,21 @@ export const RedirectToNodeDetail = ({ } } - return ; -}; + let state: RouteState | undefined; + try { + const stateFromLocation = getStateFromLocation(location); + state = stateFromLocation ? JSON.parse(stateFromLocation) : undefined; + } catch (err) { + state = undefined; + } -export const getNodeDetailUrl = ({ - nodeType, - nodeId, - to, - from, - assetName, -}: { - nodeType: InventoryItemType; - nodeId: string; - to?: number; - from?: number; - assetName?: string; -}): LinkDescriptor => { - return { - app: 'metrics', - pathname: `link-to/${nodeType}-detail/${nodeId}`, - search: { - ...(assetName ? { assetName } : undefined), - ...(to && from - ? { - to: `${to}`, - from: `${from}`, - } - : undefined), - }, - }; + return ( + + ); }; diff --git a/x-pack/plugins/infra/public/pages/link_to/use_node_details_redirect.test.tsx b/x-pack/plugins/infra/public/pages/link_to/use_node_details_redirect.test.tsx new file mode 100644 index 0000000000000..81b13a652b7eb --- /dev/null +++ b/x-pack/plugins/infra/public/pages/link_to/use_node_details_redirect.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React from 'react'; +import { renderHook } from '@testing-library/react-hooks'; +import { useNodeDetailsRedirect } from './use_node_details_redirect'; +import { coreMock } from '@kbn/core/public/mocks'; +import { KibanaContextProvider } from '@kbn/kibana-react-plugin/public'; + +const coreStartMock = coreMock.createStart(); + +jest.mock('react-router-dom', () => ({ + ...jest.requireActual('react-router-dom'), + useLocation: jest.fn(() => ({ + pathname: '', + search: '', + })), +})); + +const wrapper = ({ children }: { children: React.ReactNode }): JSX.Element => ( + {children} +); + +describe('useNodeDetailsRedirect', () => { + it('should return the LinkProperties', () => { + const { result } = renderHook(() => useNodeDetailsRedirect(), { wrapper }); + + const fromDateStrig = '2019-01-01T11:00:00Z'; + const toDateStrig = '2019-01-01T12:00:00Z'; + + expect( + result.current.getNodeDetailUrl({ + nodeType: 'host', + nodeId: 'example-01', + search: { + from: new Date(fromDateStrig).getTime(), + to: new Date(toDateStrig).getTime(), + }, + }) + ).toStrictEqual({ + app: 'metrics', + pathname: 'link-to/host-detail/example-01', + search: { from: '1546340400000', to: '1546344000000' }, + }); + }); +}); diff --git a/x-pack/plugins/infra/public/pages/link_to/use_node_details_redirect.ts b/x-pack/plugins/infra/public/pages/link_to/use_node_details_redirect.ts new file mode 100644 index 0000000000000..ea4726b2e6816 --- /dev/null +++ b/x-pack/plugins/infra/public/pages/link_to/use_node_details_redirect.ts @@ -0,0 +1,71 @@ +/* + * 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 { useCallback } from 'react'; +import { useLocation } from 'react-router-dom'; +import type { LinkDescriptor } from '@kbn/observability-shared-plugin/public'; +import useObservable from 'react-use/lib/useObservable'; +import type { InventoryItemType } from '../../../common/inventory_models/types'; +import type { RouteState } from '../../components/asset_details/types'; +import { useKibanaContextForPlugin } from '../../hooks/use_kibana'; + +interface QueryParams { + from?: number; + to?: number; + assetName?: string; +} + +export const useNodeDetailsRedirect = () => { + const location = useLocation(); + const { + services: { + application: { currentAppId$ }, + }, + } = useKibanaContextForPlugin(); + + const appId = useObservable(currentAppId$); + const getNodeDetailUrl = useCallback( + ({ + nodeType, + nodeId, + search, + }: { + nodeType: InventoryItemType; + nodeId: string; + search: QueryParams; + }): LinkDescriptor => { + const { to, from, ...rest } = search; + + return { + app: 'metrics', + pathname: `link-to/${nodeType}-detail/${nodeId}`, + search: { + ...rest, + ...(to && from + ? { + to: `${to}`, + from: `${from}`, + } + : undefined), + // While we don't have a shared state between all page in infra, this makes it possible to restore a page state when returning to the previous route + ...(location.search || location.pathname + ? { + state: JSON.stringify({ + originAppId: appId, + originSearch: location.search, + originPathname: location.pathname, + } as RouteState), + } + : undefined), + }, + }; + }, + [location.pathname, appId, location.search] + ); + + return { getNodeDetailUrl }; +}; diff --git a/x-pack/plugins/infra/public/pages/metrics/hosts/components/table/entry_title.tsx b/x-pack/plugins/infra/public/pages/metrics/hosts/components/table/entry_title.tsx index b853ca3c8f9b1..2019d2efa1c4e 100644 --- a/x-pack/plugins/infra/public/pages/metrics/hosts/components/table/entry_title.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/hosts/components/table/entry_title.tsx @@ -6,9 +6,8 @@ */ import React from 'react'; import { EuiFlexGroup, EuiFlexItem, EuiIcon, EuiLink, EuiToolTip, IconType } from '@elastic/eui'; -import { TimeRange } from '@kbn/es-query'; import { useLinkProps } from '@kbn/observability-shared-plugin/public'; -import { encode } from '@kbn/rison'; +import { useNodeDetailsRedirect } from '../../../../link_to'; import type { CloudProvider, HostNodeRow } from '../../hooks/use_hosts_table'; const cloudIcons: Record = { @@ -20,20 +19,24 @@ const cloudIcons: Record = { interface EntryTitleProps { onClick: () => void; - time: TimeRange; + dateRangeTs: { from: number; to: number }; title: HostNodeRow['title']; } -export const EntryTitle = ({ onClick, time, title }: EntryTitleProps) => { +export const EntryTitle = ({ onClick, dateRangeTs, title }: EntryTitleProps) => { const { name, cloudProvider } = title; + const { getNodeDetailUrl } = useNodeDetailsRedirect(); const link = useLinkProps({ - app: 'metrics', - pathname: `/detail/host/${name}`, - search: { - _a: encode({ time: { ...time, interval: '>=1m' } }), - assetName: name, - }, + ...getNodeDetailUrl({ + nodeId: name, + nodeType: 'host', + search: { + from: dateRangeTs.from, + to: dateRangeTs.to, + assetName: name, + }, + }), }); const iconType = (cloudProvider && cloudIcons[cloudProvider]) || cloudIcons.unknownProvider; diff --git a/x-pack/plugins/infra/public/pages/metrics/hosts/hooks/use_hosts_table.tsx b/x-pack/plugins/infra/public/pages/metrics/hosts/hooks/use_hosts_table.tsx index 19ba258e91b11..f70718fa855a6 100644 --- a/x-pack/plugins/infra/public/pages/metrics/hosts/hooks/use_hosts_table.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/hosts/hooks/use_hosts_table.tsx @@ -127,7 +127,7 @@ const sortTableData = export const useHostsTable = () => { const [selectedItems, setSelectedItems] = useState([]); const { hostNodes } = useHostsViewContext(); - const { parsedDateRange } = useUnifiedSearchContext(); + const { getDateRangeAsTimestamp } = useUnifiedSearchContext(); const [{ detailsItemId, pagination, sorting }, setProperties] = useHostsTableUrlState(); const { services: { @@ -236,7 +236,7 @@ export const useHostsTable = () => { render: (title: HostNodeRow['title']) => ( reportHostEntryClick(title)} /> ), @@ -343,7 +343,7 @@ export const useHostsTable = () => { width: '120px', }, ], - [detailsItemId, parsedDateRange, reportHostEntryClick, setProperties] + [detailsItemId, getDateRangeAsTimestamp, reportHostEntryClick, setProperties] ); const selection: EuiTableSelectionType = { diff --git a/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/layout.tsx b/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/layout.tsx index 14d0ab3c55939..4cca6263362ae 100644 --- a/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/layout.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/layout.tsx @@ -99,8 +99,11 @@ export const Layout = React.memo(({ currentView, reload, interval, nodes, loadin const dataBounds = calculateBoundsFromNodes(nodes); const bounds = autoBounds ? dataBounds : boundsOverride; - /* eslint-disable-next-line react-hooks/exhaustive-deps */ - const formatter = useCallback(createInventoryMetricFormatter(options.metric), [options.metric]); + + const formatter = useCallback( + (val: string | number) => createInventoryMetricFormatter(options.metric)(val), + [options.metric] + ); const { onViewChange } = useWaffleViewState(); useEffect(() => { diff --git a/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/node_details/overlay.tsx b/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/node_details/overlay.tsx index 74fd472629198..ed2f3bc7cba1d 100644 --- a/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/node_details/overlay.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/node_details/overlay.tsx @@ -23,7 +23,7 @@ import { PropertiesTab } from './tabs/properties'; import { AnomaliesTab } from './tabs/anomalies/anomalies'; import { OsqueryTab } from './tabs/osquery'; import { OVERLAY_Y_START, OVERLAY_BOTTOM_MARGIN } from './tabs/shared'; -import { getNodeDetailUrl } from '../../../../link_to'; +import { useNodeDetailsRedirect } from '../../../../link_to'; import { findInventoryModel } from '../../../../../../common/inventory_models'; import { navigateToUptime } from '../../lib/navigate_to_uptime'; import { InfraClientCoreStart, InfraClientStartDeps } from '../../../../../types'; @@ -51,6 +51,7 @@ export const NodeContextPopover = ({ const inventoryModel = findInventoryModel(nodeType); const nodeDetailFrom = currentTime - inventoryModel.metrics.defaultTimeRangeInSeconds * 1000; const { application, share } = useKibana().services; + const { getNodeDetailUrl } = useNodeDetailsRedirect(); const uiCapabilities = application?.capabilities; const canCreateAlerts = useMemo( () => Boolean(uiCapabilities?.infrastructure?.save), @@ -81,9 +82,11 @@ export const NodeContextPopover = ({ ...getNodeDetailUrl({ nodeType, nodeId: node.id, - from: nodeDetailFrom, - to: currentTime, - assetName: node.name, + search: { + from: nodeDetailFrom, + to: currentTime, + assetName: node.name, + }, }), }); const apmField = nodeType === 'host' ? 'host.hostname' : inventoryModel.fields.id; diff --git a/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/waffle/node_context_menu.tsx b/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/waffle/node_context_menu.tsx index 43de39a14c665..fec97c5fc0720 100644 --- a/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/waffle/node_context_menu.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/inventory_view/components/waffle/node_context_menu.tsx @@ -24,7 +24,7 @@ import { import { useKibanaContextForPlugin } from '../../../../../hooks/use_kibana'; import { AlertFlyout } from '../../../../../alerting/inventory/components/alert_flyout'; import { InfraWaffleMapNode, InfraWaffleMapOptions } from '../../../../../lib/lib'; -import { getNodeDetailUrl } from '../../../../link_to'; +import { useNodeDetailsRedirect } from '../../../../link_to'; import { findInventoryModel, findInventoryFields } from '../../../../../../common/inventory_models'; import { InventoryItemType } from '../../../../../../common/inventory_models/types'; import { navigateToUptime } from '../../lib/navigate_to_uptime'; @@ -38,6 +38,7 @@ interface Props { export const NodeContextMenu: React.FC = withTheme( ({ options, currentTime, node, nodeType }) => { + const { getNodeDetailUrl } = useNodeDetailsRedirect(); const [flyoutVisible, setFlyoutVisible] = useState(false); const inventoryModel = findInventoryModel(nodeType); const nodeDetailFrom = currentTime - inventoryModel.metrics.defaultTimeRangeInSeconds * 1000; @@ -79,8 +80,11 @@ export const NodeContextMenu: React.FC = withTheme ...getNodeDetailUrl({ nodeType, nodeId: node.id, - from: nodeDetailFrom, - to: currentTime, + search: { + from: nodeDetailFrom, + to: currentTime, + assetName: node.name, + }, }), }); const apmTracesMenuItemLinkProps = useLinkProps({ diff --git a/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/node_details_page.tsx b/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/node_details_page.tsx index 339374678ab7f..0ef201b612f2f 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/node_details_page.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metric_detail/components/node_details_page.tsx @@ -9,6 +9,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import dateMath from '@kbn/datemath'; import moment from 'moment'; import { EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; +import { useTemplateHeaderBreadcrumbs } from '../../../../components/asset_details/hooks/use_page_header'; import { useSourceContext } from '../../../../containers/metrics_source'; import { InventoryMetric, InventoryItemType } from '../../../../../common/inventory_models/types'; import { useNodeDetails } from '../hooks/use_node_details'; @@ -54,6 +55,7 @@ const parseRange = (range: MetricsTimeInput) => { export const NodeDetailsPage = (props: Props) => { const { metricIndicesExist } = useSourceContext(); + const { breadcrumbs } = useTemplateHeaderBreadcrumbs(); const [parsedTimeRange, setParsedTimeRange] = useState(parseRange(props.timeRange)); const { metrics, loading, makeRequest, error } = useNodeDetails( props.requiredMetrics, @@ -96,6 +98,7 @@ export const NodeDetailsPage = (props: Props) => { onRefresh={refetch} />, ], + breadcrumbs, }} > diff --git a/x-pack/plugins/infra/public/pages/metrics/metric_detail/index.tsx b/x-pack/plugins/infra/public/pages/metrics/metric_detail/index.tsx index 36a7d3d853eb7..f1290cdc83cb3 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metric_detail/index.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metric_detail/index.tsx @@ -8,6 +8,7 @@ import { EuiErrorBoundary } from '@elastic/eui'; import React from 'react'; import { useRouteMatch } from 'react-router-dom'; +import { useMetricsBreadcrumbs } from '../../../hooks/use_metrics_breadcrumbs'; import type { InventoryItemType } from '../../../../common/inventory_models/types'; import { AssetDetailPage } from './asset_detail_page'; import { MetricsTimeProvider } from './hooks/use_metrics_time'; @@ -15,11 +16,17 @@ import { MetricDetailPage } from './metric_detail_page'; export const MetricDetail = () => { const { - params: { type: nodeType }, + params: { type: nodeType, node: nodeName }, } = useRouteMatch<{ type: InventoryItemType; node: string }>(); const PageContent = () => (nodeType === 'host' ? : ); + useMetricsBreadcrumbs([ + { + text: nodeName, + }, + ]); + return ( diff --git a/x-pack/plugins/infra/public/pages/metrics/metric_detail/metric_detail_page.tsx b/x-pack/plugins/infra/public/pages/metrics/metric_detail/metric_detail_page.tsx index 6823147c8b6b0..1f049814a23d3 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metric_detail/metric_detail_page.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metric_detail/metric_detail_page.tsx @@ -7,10 +7,9 @@ import { i18n } from '@kbn/i18n'; import React, { useState } from 'react'; -import { useLinkProps } from '@kbn/observability-shared-plugin/public'; import { useRouteMatch } from 'react-router-dom'; -import { useMetadata } from '../../../components/asset_details/hooks/use_metadata'; import { useMetricsBreadcrumbs } from '../../../hooks/use_metrics_breadcrumbs'; +import { useMetadata } from '../../../components/asset_details/hooks/use_metadata'; import { useSourceContext } from '../../../containers/metrics_source'; import { InfraLoadingPanel } from '../../../components/loading'; import { findInventoryModel } from '../../../../common/inventory_models'; @@ -19,7 +18,6 @@ import { NodeDetailsPage } from './components/node_details_page'; import type { InventoryItemType } from '../../../../common/inventory_models/types'; import { useMetricsTimeContext } from './hooks/use_metrics_time'; import { MetricsPageTemplate } from '../page_template'; -import { inventoryTitle } from '../../../translations'; export const MetricDetailPage = () => { const { @@ -57,16 +55,7 @@ export const MetricDetailPage = () => { [sideNav] ); - const inventoryLinkProps = useLinkProps({ - app: 'metrics', - pathname: '/inventory', - }); - useMetricsBreadcrumbs([ - { - ...inventoryLinkProps, - text: inventoryTitle, - }, { text: name, }, diff --git a/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.test.tsx b/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.test.tsx index 8f9106ed04539..248be6093585a 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.test.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.test.tsx @@ -6,7 +6,7 @@ */ import React from 'react'; -import { MetricsExplorerChartContextMenu, createNodeDetailLink, Props } from './chart_context_menu'; +import { MetricsExplorerChartContextMenu, Props } from './chart_context_menu'; import { ReactWrapper, mount } from 'enzyme'; import { options, @@ -40,6 +40,16 @@ const mountComponentWithProviders = (props: Props): ReactWrapper => { ); }; +jest.mock('../../../link_to', () => ({ + useNodeDetailsRedirect: jest.fn(() => ({ + getNodeDetailUrl: jest.fn(() => ({ + app: 'metrics', + pathname: 'link-to/pod-detail/example-01', + search: { from: '1546340400000', to: '1546344000000' }, + })), + })), +})); + describe('MetricsExplorerChartContextMenu', () => { describe('component', () => { it('should just work', async () => { @@ -153,17 +163,4 @@ describe('MetricsExplorerChartContextMenu', () => { expect(component.find('button').length).toBe(1); }); }); - - describe('helpers', () => { - test('createNodeDetailLink()', () => { - const fromDateStrig = '2019-01-01T11:00:00Z'; - const toDateStrig = '2019-01-01T12:00:00Z'; - const link = createNodeDetailLink('host', 'example-01', fromDateStrig, toDateStrig); - expect(link).toStrictEqual({ - app: 'metrics', - pathname: 'link-to/host-detail/example-01', - search: { from: '1546340400000', to: '1546344000000' }, - }); - }); - }); }); diff --git a/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.tsx b/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.tsx index ac91f16ff040c..0888424c8f2db 100644 --- a/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.tsx +++ b/x-pack/plugins/infra/public/pages/metrics/metrics_explorer/components/chart_context_menu.tsx @@ -26,7 +26,7 @@ import { MetricsExplorerChartOptions, } from '../hooks/use_metrics_explorer_options'; import { createTSVBLink } from './helpers/create_tsvb_link'; -import { getNodeDetailUrl } from '../../../link_to/redirect_to_node_detail'; +import { useNodeDetailsRedirect } from '../../../link_to'; import { InventoryItemType } from '../../../../../common/inventory_models/types'; import { HOST_FIELD, POD_FIELD, CONTAINER_FIELD } from '../../../../../common/constants'; @@ -62,20 +62,6 @@ const dateMathExpressionToEpoch = (dateMathExpression: string, roundUp = false): return dateObj.valueOf(); }; -export const createNodeDetailLink = ( - nodeType: InventoryItemType, - nodeId: string, - from: string, - to: string -) => { - return getNodeDetailUrl({ - nodeType, - nodeId, - from: dateMathExpressionToEpoch(from), - to: dateMathExpressionToEpoch(to, true), - }); -}; - export const MetricsExplorerChartContextMenu: React.FC = ({ onFilter, options, @@ -85,6 +71,7 @@ export const MetricsExplorerChartContextMenu: React.FC = ({ uiCapabilities, chartOptions, }: Props) => { + const { getNodeDetailUrl } = useNodeDetailsRedirect(); const [isPopoverOpen, setPopoverState] = useState(false); const [flyoutVisible, setFlyoutVisible] = useState(false); const supportFiltering = options.groupBy != null && onFilter != null; @@ -120,7 +107,16 @@ export const MetricsExplorerChartContextMenu: React.FC = ({ const nodeType = source && options.groupBy && fieldToNodeType(source, options.groupBy); const nodeDetailLinkProps = useLinkProps({ app: 'metrics', - ...(nodeType ? createNodeDetailLink(nodeType, series.id, timeRange.from, timeRange.to) : {}), + ...(nodeType + ? getNodeDetailUrl({ + nodeType, + nodeId: series.id, + search: { + from: dateMathExpressionToEpoch(timeRange.from), + to: dateMathExpressionToEpoch(timeRange.to, true), + }, + }) + : {}), }); const tsvbLinkProps = useLinkProps({ ...createTSVBLink(source, options, series, timeRange, chartOptions), diff --git a/x-pack/plugins/infra/server/features.ts b/x-pack/plugins/infra/server/features.ts index e9fec4a5b4f5d..9698e4c2de3c3 100644 --- a/x-pack/plugins/infra/server/features.ts +++ b/x-pack/plugins/infra/server/features.ts @@ -8,6 +8,7 @@ import { i18n } from '@kbn/i18n'; import { DEFAULT_APP_CATEGORIES } from '@kbn/core/server'; import { logViewSavedObjectName } from '@kbn/logs-shared-plugin/server'; +import { OBSERVABILITY_THRESHOLD_RULE_TYPE_ID } from '@kbn/observability-plugin/common/constants'; import { LOG_DOCUMENT_COUNT_RULE_TYPE_ID } from '../common/alerting/logs/log_threshold/types'; import { METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID, @@ -16,6 +17,12 @@ import { import { LOGS_FEATURE_ID, METRICS_FEATURE_ID } from '../common/constants'; import { infraSourceConfigurationSavedObjectName } from './lib/sources/saved_object_type'; +const metricRuleTypes = [ + METRIC_THRESHOLD_ALERT_TYPE_ID, + METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID, + OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, +]; + export const METRICS_FEATURE = { id: METRICS_FEATURE_ID, name: i18n.translate('xpack.infra.featureRegistry.linkInfrastructureTitle', { @@ -28,7 +35,7 @@ export const METRICS_FEATURE = { management: { insightsAndAlerting: ['triggersActions'], }, - alerting: [METRIC_THRESHOLD_ALERT_TYPE_ID, METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID], + alerting: metricRuleTypes, privileges: { all: { app: ['infra', 'metrics', 'kibana'], @@ -40,10 +47,10 @@ export const METRICS_FEATURE = { }, alerting: { rule: { - all: [METRIC_THRESHOLD_ALERT_TYPE_ID, METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID], + all: metricRuleTypes, }, alert: { - all: [METRIC_THRESHOLD_ALERT_TYPE_ID, METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID], + all: metricRuleTypes, }, }, management: { @@ -61,10 +68,10 @@ export const METRICS_FEATURE = { }, alerting: { rule: { - read: [METRIC_THRESHOLD_ALERT_TYPE_ID, METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID], + read: metricRuleTypes, }, alert: { - read: [METRIC_THRESHOLD_ALERT_TYPE_ID, METRIC_INVENTORY_THRESHOLD_ALERT_TYPE_ID], + read: metricRuleTypes, }, }, management: { @@ -75,6 +82,8 @@ export const METRICS_FEATURE = { }, }; +const logsRuleTypes = [LOG_DOCUMENT_COUNT_RULE_TYPE_ID, OBSERVABILITY_THRESHOLD_RULE_TYPE_ID]; + export const LOGS_FEATURE = { id: LOGS_FEATURE_ID, name: i18n.translate('xpack.infra.featureRegistry.linkLogsTitle', { @@ -87,7 +96,7 @@ export const LOGS_FEATURE = { management: { insightsAndAlerting: ['triggersActions'], }, - alerting: [LOG_DOCUMENT_COUNT_RULE_TYPE_ID], + alerting: logsRuleTypes, privileges: { all: { app: ['infra', 'logs', 'kibana'], @@ -99,10 +108,10 @@ export const LOGS_FEATURE = { }, alerting: { rule: { - all: [LOG_DOCUMENT_COUNT_RULE_TYPE_ID], + all: logsRuleTypes, }, alert: { - all: [LOG_DOCUMENT_COUNT_RULE_TYPE_ID], + all: logsRuleTypes, }, }, management: { @@ -116,10 +125,10 @@ export const LOGS_FEATURE = { api: ['infra', 'rac'], alerting: { rule: { - read: [LOG_DOCUMENT_COUNT_RULE_TYPE_ID], + read: logsRuleTypes, }, alert: { - read: [LOG_DOCUMENT_COUNT_RULE_TYPE_ID], + read: logsRuleTypes, }, }, management: { diff --git a/x-pack/plugins/lists/server/routes/list_index/create_list_index_route.ts b/x-pack/plugins/lists/server/routes/list_index/create_list_index_route.ts index 9116e5d338e5e..0b22c8f4f6d17 100644 --- a/x-pack/plugins/lists/server/routes/list_index/create_list_index_route.ts +++ b/x-pack/plugins/lists/server/routes/list_index/create_list_index_route.ts @@ -11,7 +11,7 @@ import { LIST_INDEX } from '@kbn/securitysolution-list-constants'; import { createListIndexResponse } from '../../../common/api'; import type { ListsPluginRouter } from '../../types'; -import { buildSiemResponse, removeLegacyTemplatesIfExist } from '../utils'; +import { buildSiemResponse } from '../utils'; import { getListClient } from '..'; export const createListIndexRoute = (router: ListsPluginRouter): void => { @@ -43,8 +43,6 @@ export const createListIndexRoute = (router: ListsPluginRouter): void => { await lists.setListItemTemplate(); } - await removeLegacyTemplatesIfExist(lists); - if (listDataStreamExists && listItemDataStreamExists) { return siemResponse.error({ body: `data stream: "${lists.getListName()}" and "${lists.getListItemName()}" already exists`, diff --git a/x-pack/plugins/lists/server/routes/list_index/delete_list_index_route.ts b/x-pack/plugins/lists/server/routes/list_index/delete_list_index_route.ts index 2c8a2fb3212ce..b5acc7f7ad624 100644 --- a/x-pack/plugins/lists/server/routes/list_index/delete_list_index_route.ts +++ b/x-pack/plugins/lists/server/routes/list_index/delete_list_index_route.ts @@ -12,7 +12,7 @@ import { LIST_INDEX } from '@kbn/securitysolution-list-constants'; import { ListClient } from '../../services/lists/list_client'; import type { ListsPluginRouter } from '../../types'; import { deleteListIndexResponse } from '../../../common/api'; -import { buildSiemResponse, removeLegacyTemplatesIfExist } from '../utils'; +import { buildSiemResponse } from '../utils'; import { getListClient } from '..'; /** @@ -66,11 +66,17 @@ export const deleteListIndexRoute = (router: ListsPluginRouter): void => { // ensure data streams deleted if exist await deleteDataStreams(lists, listDataStreamExists, listItemDataStreamExists); - // ensure indices deleted if exist and were not migrated - await deleteIndices(lists, listIndexExists, listItemIndexExists); + // we need to call this section only if any of these indices exist + // to delete indices, ILM policies and legacy templates + // ILM policies and legacy templates do not exist on serverless, + // so by checking if any of index exists we ensure it is stateful + if (listIndexExists || listItemIndexExists) { + await deleteIndices(lists, listIndexExists, listItemIndexExists); + await lists.deleteLegacyListTemplateIfExists(); + await lists.deleteLegacyListItemTemplateIfExists(); + } await deleteIndexTemplates(lists); - await removeLegacyTemplatesIfExist(lists); const [validated, errors] = validate({ acknowledged: true }, deleteListIndexResponse); if (errors != null) { diff --git a/x-pack/plugins/lists/server/routes/utils/index.ts b/x-pack/plugins/lists/server/routes/utils/index.ts index dd349bc5ec6e9..f035ae5dbfe9b 100644 --- a/x-pack/plugins/lists/server/routes/utils/index.ts +++ b/x-pack/plugins/lists/server/routes/utils/index.ts @@ -5,7 +5,6 @@ * 2.0. */ -export * from './remove_templates_if_exist'; export * from './get_error_message_exception_list_item'; export * from './get_error_message_exception_list'; export * from './get_list_client'; diff --git a/x-pack/plugins/lists/server/routes/utils/remove_templates_if_exist.ts b/x-pack/plugins/lists/server/routes/utils/remove_templates_if_exist.ts deleted file mode 100644 index ac761b5779048..0000000000000 --- a/x-pack/plugins/lists/server/routes/utils/remove_templates_if_exist.ts +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { ListClient } from '../../services/lists/list_client'; - -export const removeLegacyTemplatesIfExist = async (lists: ListClient): Promise => { - try { - const legacyTemplateExists = await lists.getLegacyListTemplateExists(); - const legacyTemplateListItemsExists = await lists.getLegacyListItemTemplateExists(); - - // Check if the old legacy lists and items template exists and remove it - if (legacyTemplateExists) { - await lists.deleteLegacyListTemplate(); - } - if (legacyTemplateListItemsExists) { - await lists.deleteLegacyListItemTemplate(); - } - } catch (err) { - // 410 error is for ES serverless, this API doesn't exist there any more, so _template request returns 410 error - if (err.statusCode !== 404 && err.statusCode !== 410) { - throw err; - } - } -}; diff --git a/x-pack/plugins/lists/server/services/lists/list_client.ts b/x-pack/plugins/lists/server/services/lists/list_client.ts index d0b72313b7fd6..826e4a545d80d 100644 --- a/x-pack/plugins/lists/server/services/lists/list_client.ts +++ b/x-pack/plugins/lists/server/services/lists/list_client.ts @@ -331,6 +331,10 @@ export class ListClient { if (await this.getListPolicyExists()) { await this.deleteListPolicy(); } + + // as migration will be called eventually for every instance of Kibana, it's more efficient to delete + // legacy index template if it exists during migration + await this.deleteLegacyListTemplateIfExists(); }; /** @@ -353,6 +357,10 @@ export class ListClient { if (await this.getListItemPolicyExists()) { await this.deleteListItemPolicy(); } + + // as migration will be called eventually for every instance of Kibana, it's more efficient to delete + // legacy index template if it exists during migration + await this.deleteLegacyListItemTemplateIfExists(); }; /** @@ -588,6 +596,23 @@ export class ListClient { return deleteTemplate(esClient, listName); }; + /** + * Checks if legacy lists template exists and delete it + */ + public deleteLegacyListTemplateIfExists = async (): Promise => { + try { + const legacyTemplateExists = await this.getLegacyListTemplateExists(); + + if (legacyTemplateExists) { + await this.deleteLegacyListTemplate(); + } + } catch (err) { + if (err.statusCode !== 404) { + throw err; + } + } + }; + /** * Delete the list item boot strap index for ILM policies. * @returns The contents of the bootstrap response from Elasticsearch @@ -598,6 +623,23 @@ export class ListClient { return deleteTemplate(esClient, listItemName); }; + /** + * Checks if legacy list item template exists and delete it + */ + public deleteLegacyListItemTemplateIfExists = async (): Promise => { + try { + const legacyTemplateListItemsExists = await this.getLegacyListItemTemplateExists(); + + if (legacyTemplateListItemsExists) { + await this.deleteLegacyListItemTemplate(); + } + } catch (err) { + if (err.statusCode !== 404) { + throw err; + } + } + }; + /** * Given a list item id, this will delete the single list item * @returns The list item if found, otherwise null diff --git a/x-pack/plugins/ml/public/application/access_denied/access_denied.tsx b/x-pack/plugins/ml/public/application/access_denied/access_denied.tsx index 73eacf41f06ea..28c00e2794269 100644 --- a/x-pack/plugins/ml/public/application/access_denied/access_denied.tsx +++ b/x-pack/plugins/ml/public/application/access_denied/access_denied.tsx @@ -9,13 +9,7 @@ import React, { type FC } from 'react'; import { FormattedMessage } from '@kbn/i18n-react'; -import { - EuiEmptyPrompt, - EuiFlexGroup, - EuiFlexItem, - EuiPageContent_Deprecated as EuiPageContent, - EuiSpacer, -} from '@elastic/eui'; +import { EuiPageTemplate } from '@elastic/eui'; import { createPermissionFailureMessage } from '../capabilities/check_capabilities'; import { MlCapabilitiesKey } from '../../../common/types/capabilities'; import { HelpMenu } from '../components/help_menu'; @@ -35,39 +29,34 @@ export const AccessDeniedCallout: FC = ({ missingCapab return ( <> - - - - - - - - } - body={ -
- - {errorMessages ? ( -
    - {errorMessages.map((v) => ( -
  • {v}
  • - ))} -
- ) : null} -
- } + + -
-
-
+ + } + body={ +
+ + {errorMessages ? ( +
    + {errorMessages.map((v) => ( +
  • {v}
  • + ))} +
+ ) : null} +
+ } + /> ); diff --git a/x-pack/plugins/ml/public/application/components/custom_urls/custom_url_editor/utils.ts b/x-pack/plugins/ml/public/application/components/custom_urls/custom_url_editor/utils.ts index a676f3236e930..158c334ae6f5d 100644 --- a/x-pack/plugins/ml/public/application/components/custom_urls/custom_url_editor/utils.ts +++ b/x-pack/plugins/ml/public/application/components/custom_urls/custom_url_editor/utils.ts @@ -7,6 +7,7 @@ import type * as estypes from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; import moment, { type Moment } from 'moment'; +import { cloneDeep } from 'lodash'; import type { SerializableRecord } from '@kbn/utility-types'; import rison from '@kbn/rison'; import url from 'url'; @@ -459,8 +460,8 @@ async function getAnomalyDetectionJobTestUrl(job: Job, customUrl: MlUrlConfig): // No anomalies yet for this job, so do a preview of the search // configured in the job datafeed to obtain sample docs. - let { datafeed_config: datafeedConfig } = job; - let jobConfig = job; + let jobConfig = cloneDeep(job); + let { datafeed_config: datafeedConfig } = jobConfig; try { // attempt load the non-combined job and datafeed so they can be used in the datafeed preview const [{ jobs }, { datafeeds }] = await Promise.all([ diff --git a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/source_selection/source_selection.tsx b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/source_selection/source_selection.tsx index d4987b17aeb59..29498b5ec8ef5 100644 --- a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/source_selection/source_selection.tsx +++ b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/source_selection/source_selection.tsx @@ -5,20 +5,12 @@ * 2.0. */ -import React, { useState, FC } from 'react'; - -import { - EuiCallOut, - EuiSpacer, - EuiPageBody, - EuiPageContent_Deprecated as EuiPageContent, -} from '@elastic/eui'; - +import React, { FC, useState } from 'react'; +import { EuiCallOut, EuiPageBody, EuiPanel, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { getNestedProperty } from '@kbn/ml-nested-property'; import { SavedObjectFinder } from '@kbn/saved-objects-finder-plugin/public'; import type { SavedObjectCommon } from '@kbn/saved-objects-finder-plugin/common'; - import { useMlKibana, useNavigateToPath } from '../../../../../contexts/kibana'; import { useToastNotificationService } from '../../../../../services/toast_notification_service'; import { @@ -110,7 +102,7 @@ export const SourceSelection: FC = () => { return (
- + {isCcsCallOut && ( <> { uiSettings, }} /> - +
); diff --git a/x-pack/plugins/ml/public/application/jobs/new_job/pages/index_or_search/page.tsx b/x-pack/plugins/ml/public/application/jobs/new_job/pages/index_or_search/page.tsx index d29654f8e9f8d..d9c0200961caa 100644 --- a/x-pack/plugins/ml/public/application/jobs/new_job/pages/index_or_search/page.tsx +++ b/x-pack/plugins/ml/public/application/jobs/new_job/pages/index_or_search/page.tsx @@ -6,7 +6,7 @@ */ import React, { FC } from 'react'; -import { EuiPageBody, EuiPageContent_Deprecated as EuiPageContent } from '@elastic/eui'; +import { EuiPageBody, EuiPanel } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n-react'; import { SavedObjectFinder } from '@kbn/saved-objects-finder-plugin/public'; @@ -39,7 +39,7 @@ export const Page: FC = ({ nextStepPath }) => { defaultMessage="Select data view or saved search" /> - + = ({ nextStepPath }) => { uiSettings, }} /> - +
); diff --git a/x-pack/plugins/ml/public/application/jobs/new_job/pages/new_job/page.tsx b/x-pack/plugins/ml/public/application/jobs/new_job/pages/new_job/page.tsx index 29b6c781c7d24..62c5841a94ff1 100644 --- a/x-pack/plugins/ml/public/application/jobs/new_job/pages/new_job/page.tsx +++ b/x-pack/plugins/ml/public/application/jobs/new_job/pages/new_job/page.tsx @@ -6,10 +6,7 @@ */ import React, { FC, useEffect, Fragment, useMemo } from 'react'; -import { - EuiPageContentHeader_Deprecated as EuiPageContentHeader, - EuiPageContentHeaderSection_Deprecated as EuiPageContentHeaderSection, -} from '@elastic/eui'; +import { EuiText } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n-react'; import { getTimeFilterRange, useTimefilter } from '@kbn/ml-date-picker'; @@ -234,15 +231,13 @@ export const Page: FC = ({ existingJobsAndGroups, jobType }) => {
- - - - - + + + ( - <> - - - - - } - body={ -

- -

- } - /> -
- + + + + } + body={ +

+ +

+ } + /> ); diff --git a/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx b/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx index 6941e53cd68b2..2ce2e9ddd9d56 100644 --- a/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx +++ b/x-pack/plugins/ml/public/application/management/jobs_list/components/jobs_list_page/jobs_list_page.tsx @@ -5,7 +5,7 @@ * 2.0. */ -import React, { useEffect, useState, FC, useCallback, useMemo } from 'react'; +import React, { FC, useCallback, useEffect, useMemo, useState } from 'react'; import { Router } from '@kbn/shared-ux-router'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n-react'; @@ -13,11 +13,10 @@ import { CoreStart } from '@kbn/core/public'; import { EuiButtonEmpty, - EuiPageContentBody_Deprecated as EuiPageContentBody, - EuiPageHeader, - EuiSpacer, EuiFlexGroup, EuiFlexItem, + EuiPageTemplate, + EuiSpacer, } from '@elastic/eui'; import type { UsageCollectionSetup } from '@kbn/usage-collection-plugin/public'; @@ -29,7 +28,7 @@ import { RedirectAppLinks, } from '@kbn/kibana-react-plugin/public'; import type { SharePluginStart } from '@kbn/share-plugin/public'; -import type { SpacesPluginStart, SpacesContextProps } from '@kbn/spaces-plugin/public'; +import type { SpacesContextProps, SpacesPluginStart } from '@kbn/spaces-plugin/public'; import type { FieldFormatsStart } from '@kbn/field-formats-plugin/public'; import { PLUGIN_ID } from '../../../../../../common/constants/app'; @@ -132,7 +131,7 @@ export const JobsListPage: FC<{ > - ]} bottomBorder + paddingSize={'none'} /> - @@ -183,7 +184,7 @@ export const JobsListPage: FC<{ - + diff --git a/x-pack/plugins/ml/public/application/settings/anomaly_detection_settings.tsx b/x-pack/plugins/ml/public/application/settings/anomaly_detection_settings.tsx index e068a29763fa0..4a19bc96c8c67 100644 --- a/x-pack/plugins/ml/public/application/settings/anomaly_detection_settings.tsx +++ b/x-pack/plugins/ml/public/application/settings/anomaly_detection_settings.tsx @@ -12,7 +12,6 @@ import { EuiButtonEmpty, EuiFlexGroup, EuiFlexItem, - EuiPageContentHeader_Deprecated as EuiPageContentHeader, EuiSpacer, EuiText, EuiTextColor, @@ -78,16 +77,14 @@ export const AnomalyDetectionSettings: FC = () => { return ( - - -

- -

-
-
+ +

+ +

+
diff --git a/x-pack/plugins/monitoring/common/formatting.ts b/x-pack/plugins/monitoring/common/formatting.ts index 5c52121cd8c0a..2fbc92c2da138 100644 --- a/x-pack/plugins/monitoring/common/formatting.ts +++ b/x-pack/plugins/monitoring/common/formatting.ts @@ -12,6 +12,7 @@ export const SMALL_FLOAT = '0.[00]'; export const LARGE_BYTES = '0,0.0 b'; export const SMALL_BYTES = '0.0 b'; export const LARGE_ABBREVIATED = '0,0.[0]a'; +export const LARGE = '0,0'; export const ROUNDED_FLOAT = '00.[00]'; /** diff --git a/x-pack/plugins/monitoring/public/components/chart/horizontal_legend.js b/x-pack/plugins/monitoring/public/components/chart/horizontal_legend.js index 7592b58d6beab..290158947df35 100644 --- a/x-pack/plugins/monitoring/public/components/chart/horizontal_legend.js +++ b/x-pack/plugins/monitoring/public/components/chart/horizontal_legend.js @@ -52,8 +52,10 @@ export class HorizontalLegend extends React.Component { return this.displayValue(row.tickFormatter(value)); } - if (isFunction(this.props.tickFormatter)) { - return this.displayValue(this.props.tickFormatter(value)); + const formatter = this.props.legendFormatter || this.props.tickFormatter; + + if (isFunction(formatter)) { + return this.displayValue(formatter(value)); } return this.displayValue(value); } diff --git a/x-pack/plugins/monitoring/public/components/chart/monitoring_timeseries.js b/x-pack/plugins/monitoring/public/components/chart/monitoring_timeseries.js index 9d70e896a1461..fdc6b5767c68b 100644 --- a/x-pack/plugins/monitoring/public/components/chart/monitoring_timeseries.js +++ b/x-pack/plugins/monitoring/public/components/chart/monitoring_timeseries.js @@ -11,8 +11,8 @@ import numeral from '@elastic/numeral'; import { getColor } from './get_color'; import { TimeseriesVisualization } from './timeseries_visualization'; -function formatTicksFor(series) { - const format = get(series, 'metric.format', '0,0.0'); +function formatTicksFor(series, formatProperty = 'metric.format') { + const format = get(series, formatProperty, '0,0.0'); const units = get(series, 'metric.units', ''); return function formatTicks(val) { @@ -38,12 +38,15 @@ export function MonitoringTimeseries({ series, onBrush }) { const firstSeries = first(series); const timeRange = get(firstSeries, 'timeRange'); const formatTicks = formatTicksFor(firstSeries); + const legendFormatter = + firstSeries.metric.legendFormat && formatTicksFor(firstSeries, 'metric.legendFormat'); return ( ); diff --git a/x-pack/plugins/monitoring/server/lib/details/__snapshots__/get_metrics.test.js.snap b/x-pack/plugins/monitoring/server/lib/details/__snapshots__/get_metrics.test.js.snap index 76720137cab3f..870e531eb6809 100644 --- a/x-pack/plugins/monitoring/server/lib/details/__snapshots__/get_metrics.test.js.snap +++ b/x-pack/plugins/monitoring/server/lib/details/__snapshots__/get_metrics.test.js.snap @@ -371,6 +371,7 @@ Object { "hasCalculation": false, "isDerivative": true, "label": "Total Shards", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Search Rate", @@ -752,6 +753,7 @@ Object { "hasCalculation": true, "isDerivative": false, "label": "Indexing Latency", + "legendFormat": undefined, "metricAgg": "sum", "technicalPreview": undefined, "units": "ms", @@ -1128,6 +1130,7 @@ Object { "hasCalculation": false, "isDerivative": false, "label": "Max", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Client Response Time", @@ -1505,6 +1508,7 @@ Object { "hasCalculation": false, "isDerivative": false, "label": "CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "%", @@ -1881,6 +1885,7 @@ Object { "hasCalculation": false, "isDerivative": false, "label": "Fixed Bitsets", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Index Memory - Lucene", @@ -2251,6 +2256,7 @@ Object { "hasCalculation": false, "isDerivative": false, "label": "Version Map", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Index Memory", diff --git a/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/handle_response.test.js.snap b/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/handle_response.test.js.snap index 462943c8c9b93..550cd46bed087 100644 --- a/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/handle_response.test.js.snap +++ b/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/handle_response.test.js.snap @@ -47,6 +47,7 @@ Array [ "hasCalculation": true, "isDerivative": true, "label": "Cgroup CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "CPU Utilization", @@ -68,6 +69,7 @@ Array [ "hasCalculation": false, "isDerivative": true, "label": "Cgroup Throttling", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Cgroup CPU Performance", @@ -89,6 +91,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "%", @@ -109,6 +112,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Disk Free Space", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "", @@ -129,6 +133,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Used Heap", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "JVM Heap", @@ -150,6 +155,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "1m", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "System Load", @@ -184,6 +190,7 @@ Array [ "hasCalculation": false, "isDerivative": true, "label": "Cgroup Throttling", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Cgroup CPU Performance", @@ -205,6 +212,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "%", @@ -225,6 +233,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Disk Free Space", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "", @@ -245,6 +254,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Used Heap", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "JVM Heap", @@ -266,6 +276,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "1m", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "System Load", @@ -345,6 +356,7 @@ Array [ "hasCalculation": true, "isDerivative": true, "label": "Cgroup CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "CPU Utilization", @@ -366,6 +378,7 @@ Array [ "hasCalculation": false, "isDerivative": true, "label": "Cgroup Throttling", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Cgroup CPU Performance", @@ -387,6 +400,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "%", @@ -407,6 +421,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Disk Free Space", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "", @@ -427,6 +442,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Used Heap", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "JVM Heap", @@ -448,6 +464,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "1m", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "System Load", @@ -482,6 +499,7 @@ Array [ "hasCalculation": false, "isDerivative": true, "label": "Cgroup Throttling", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "Cgroup CPU Performance", @@ -503,6 +521,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "%", @@ -523,6 +542,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Disk Free Space", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "", @@ -543,6 +563,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "Used Heap", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "JVM Heap", @@ -564,6 +585,7 @@ Array [ "hasCalculation": false, "isDerivative": false, "label": "1m", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "System Load", diff --git a/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/map_nodes_metrics.test.js.snap b/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/map_nodes_metrics.test.js.snap index 6890c98b5f15b..5df82851d3c5b 100644 --- a/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/map_nodes_metrics.test.js.snap +++ b/x-pack/plugins/monitoring/server/lib/elasticsearch/nodes/get_nodes/__snapshots__/map_nodes_metrics.test.js.snap @@ -12,6 +12,7 @@ Object { "hasCalculation": false, "isDerivative": false, "label": "CPU Utilization", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "units": "%", @@ -32,6 +33,7 @@ Object { "hasCalculation": false, "isDerivative": false, "label": "Used Heap", + "legendFormat": undefined, "metricAgg": "max", "technicalPreview": undefined, "title": "JVM Heap", diff --git a/x-pack/plugins/monitoring/server/lib/metrics/__snapshots__/metrics.test.js.snap b/x-pack/plugins/monitoring/server/lib/metrics/__snapshots__/metrics.test.js.snap index e02fb7423c010..6e0623564bab3 100644 --- a/x-pack/plugins/monitoring/server/lib/metrics/__snapshots__/metrics.test.js.snap +++ b/x-pack/plugins/monitoring/server/lib/metrics/__snapshots__/metrics.test.js.snap @@ -44,6 +44,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -97,6 +98,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -150,6 +152,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Error Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -203,6 +206,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -256,6 +260,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Invalid Query", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -309,6 +314,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Method", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -362,6 +368,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Unauthorized", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -415,6 +422,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Unavailable", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -468,6 +476,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Not Modified", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -521,6 +530,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "OK", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -577,6 +587,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": "cpu.stats.periods", @@ -603,6 +614,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Memory Limit", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -629,6 +641,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Memory Utilization (cgroup)", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -655,6 +668,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -681,6 +695,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Allocated Memory", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -707,6 +722,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "GC Next", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -733,6 +749,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Process Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -786,6 +803,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Acked", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -839,6 +857,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Active", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -892,6 +911,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Dropped", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -945,6 +965,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Failed", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -998,6 +1019,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1051,6 +1073,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Error", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1104,6 +1127,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Metric", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1157,6 +1181,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Span", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1210,6 +1235,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Transaction", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1263,6 +1289,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Requested", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1316,6 +1343,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1369,6 +1397,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Closed", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1422,6 +1451,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Concurrency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1475,6 +1505,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Decode", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1528,6 +1559,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Forbidden", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1581,6 +1613,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Internal", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1634,6 +1667,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Method", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1687,6 +1721,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Queue", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1740,6 +1775,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Rate limit", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1793,6 +1829,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Too large", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1846,6 +1883,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Unauthorized", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1899,6 +1937,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Validate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -1952,6 +1991,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Accepted", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2005,6 +2045,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Ok", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2031,6 +2072,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "1m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2057,6 +2099,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "15m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2083,6 +2126,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "5m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2109,6 +2153,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "App Search Engines", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "avg", "periodsField": undefined, @@ -2134,6 +2179,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Bytes Sent", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2187,6 +2233,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Acknowledged", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2240,6 +2287,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Dropped in Output", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2293,6 +2341,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Emitted", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2346,6 +2395,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Bytes Received", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2399,6 +2449,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Receiving", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2452,6 +2503,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Sending", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2505,6 +2557,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Bytes Sent", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2558,6 +2611,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Dropped in Pipeline", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2611,6 +2665,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Queued", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2664,6 +2719,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Failed in Pipeline", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2717,6 +2773,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Retry in Pipeline", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2770,6 +2827,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2796,6 +2854,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2822,6 +2881,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Open Handles", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2848,6 +2908,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Active", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2874,6 +2935,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "GC Next", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2900,6 +2962,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Process Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2926,6 +2989,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Acknowledged", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2952,6 +3016,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Dropped in Output", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -2978,6 +3043,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Emitted", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3004,6 +3070,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Receiving", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3030,6 +3097,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Sending", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3056,6 +3124,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Bytes Received", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3082,6 +3151,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Dropped in Pipeline", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3108,6 +3178,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Queued", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3134,6 +3205,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Failed in Pipeline", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3160,6 +3232,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Retry in Pipeline", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3186,6 +3259,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "New", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3212,6 +3286,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "1m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3238,6 +3313,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "15m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3264,6 +3340,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "5m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3302,6 +3379,7 @@ Object { "getFields": [Function], "isNotSupportedInInternalCollection": undefined, "label": "Ops delay", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -3329,6 +3407,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Fetch delay", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3381,6 +3460,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing Latency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -3407,6 +3487,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Primary Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3434,6 +3515,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3486,6 +3568,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search Latency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -3512,6 +3595,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3539,6 +3623,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Active", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3564,6 +3649,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3590,6 +3676,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Daemon Threads", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3615,6 +3702,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "JVM GC Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3640,6 +3728,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Time spent on JVM garbage collection", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3665,6 +3754,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Committed", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3690,6 +3780,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3716,6 +3807,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Used", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3741,6 +3833,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "1xx", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3767,6 +3860,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "2xx", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3792,6 +3886,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "3xx", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3817,6 +3912,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "4xx", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3842,6 +3938,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "5xx", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3867,6 +3964,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Received", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3893,6 +3991,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "HTTP Bytes Received", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3918,6 +4017,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Sent", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3943,6 +4043,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "HTTP Bytes Sent", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3968,6 +4069,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Open HTTP Connections", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -3993,6 +4095,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "HTTP Connections Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4018,6 +4121,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "JVM Objects Pending Finalization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4043,6 +4147,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Active Threads", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4069,6 +4174,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Thread Creation Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4094,6 +4200,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Document Count", + "legendFormat": "0,0", "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4145,6 +4252,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing Latency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -4172,6 +4280,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing (Primaries)", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4199,6 +4308,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4226,6 +4336,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4253,6 +4364,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Fielddata", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4280,6 +4392,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Fixed Bitsets", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4307,6 +4420,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Query Cache", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4334,6 +4448,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Request Cache", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4361,6 +4476,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Version Map", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4388,6 +4504,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index Writer", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4415,6 +4532,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Merge Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4466,6 +4584,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search Latency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -4492,6 +4611,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Refresh Time", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4518,6 +4638,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Primary Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4545,6 +4666,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4572,6 +4694,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4599,6 +4722,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4626,6 +4750,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4653,6 +4778,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Primaries", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4680,6 +4806,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4707,6 +4834,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Merges (Primaries)", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4734,6 +4862,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Merges", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4761,6 +4890,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Primaries", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4788,6 +4918,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4815,6 +4946,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Store (Primaries)", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4842,6 +4974,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Store", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4869,6 +5002,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index Throttling Time", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4895,6 +5029,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing (Primaries)", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4922,6 +5057,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4949,6 +5085,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "HTTP Connections", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -4974,6 +5111,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Average", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5000,6 +5138,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Action Queue", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5025,6 +5164,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Average Action Queue Duration", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5051,6 +5191,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Longest Action Queue Duration", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5104,6 +5245,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Average", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5157,6 +5299,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Max", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5210,6 +5353,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Client Requests", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5235,6 +5379,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Rule Queue", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5260,6 +5405,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Average Rule Queue Duration", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5286,6 +5432,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Longest Rule Queue Duration", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5312,6 +5459,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Action Executions", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5337,6 +5485,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Action Failures", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5362,6 +5511,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Rule Executions", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5387,6 +5537,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": true, "label": "Rule Failures", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5412,6 +5563,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Max", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5438,6 +5590,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Heap Size Limit", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5464,6 +5617,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Memory Size", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5490,6 +5644,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "15m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5516,6 +5671,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "1m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5542,6 +5698,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "5m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5568,6 +5725,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Event Loop Delay", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5593,6 +5751,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Client Disconnects", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5618,6 +5777,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Client Requests", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5670,6 +5830,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Events Received Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5740,6 +5901,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Event Latency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5792,6 +5954,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Events Emitted Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5817,6 +5980,7 @@ Object { "getDateHistogramSubAggs": [Function], "isNotSupportedInInternalCollection": undefined, "label": "Pipeline Node Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": undefined, "periodsField": undefined, @@ -5842,6 +6006,7 @@ Object { "getDateHistogramSubAggs": [Function], "isNotSupportedInInternalCollection": undefined, "label": "Pipeline Throughput", + "legendFormat": undefined, "mbField": "logstash.node.stats.pipelines.events.out", "metricAgg": undefined, "periodsField": undefined, @@ -5867,6 +6032,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Events Received Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5917,6 +6083,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Event Latency", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -5942,6 +6109,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Events Emitted Rate", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -5967,6 +6135,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Elapsed Periods", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6023,6 +6192,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": "cpu.stat.number_of_elapsed_periods", @@ -6079,6 +6249,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": "cpu.stat.number_of_elapsed_periods", @@ -6104,6 +6275,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Throttling", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6130,6 +6302,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Throttled Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6156,6 +6329,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Usage", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6182,6 +6356,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6207,6 +6382,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Max Heap", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6233,6 +6409,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Used Heap", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6259,6 +6436,7 @@ Object { "getDateHistogramSubAggs": [Function], "isNotSupportedInInternalCollection": undefined, "label": "Pipeline Node Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": undefined, "periodsField": undefined, @@ -6284,6 +6462,7 @@ Object { "getDateHistogramSubAggs": [Function], "isNotSupportedInInternalCollection": undefined, "label": "Pipeline Throughput", + "legendFormat": undefined, "mbField": "logstash.node.stats.pipelines.events.out", "metricAgg": undefined, "periodsField": undefined, @@ -6309,6 +6488,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "15m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6335,6 +6515,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "1m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6361,6 +6542,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "5m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6438,6 +6620,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Max Queue Size", + "legendFormat": undefined, "mbField": "logstash.node.stats.pipelines.queue.max_queue_size_in_bytes", "metricAgg": undefined, "periodsField": undefined, @@ -6514,6 +6697,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Queue Size", + "legendFormat": undefined, "mbField": "logstash.node.stats.pipelines.queue.queue_size_in_bytes", "metricAgg": undefined, "periodsField": undefined, @@ -6540,6 +6724,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Events Queued", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6566,6 +6751,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Elapsed Periods", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6623,6 +6809,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": "cpu.stat.number_of_elapsed_periods", @@ -6680,6 +6867,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": "cpu.stat.number_of_elapsed_periods", @@ -6706,6 +6894,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Throttling", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6733,6 +6922,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Throttled Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6760,6 +6950,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Cgroup Usage", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6787,6 +6978,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "CPU Utilization", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6813,6 +7005,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Disk Free Space", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6864,6 +7057,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -6891,6 +7085,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Fielddata", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6918,6 +7113,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Fixed Bitsets", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6945,6 +7141,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Query Cache", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6972,6 +7169,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Request Cache", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -6999,6 +7197,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Version Map", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7026,6 +7225,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index Writer", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7053,6 +7253,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "GET Queue", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "min": 0, @@ -7081,6 +7282,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "GET Rejections", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "min": 0, @@ -7109,6 +7311,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search Queue", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "min": 0, @@ -7137,6 +7340,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search Rejections", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "min": 0, @@ -7181,6 +7385,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Write Queue", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7245,6 +7450,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Write Rejections", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7272,6 +7478,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index Time", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7299,6 +7506,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Indexing Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7326,6 +7534,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Old", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7353,6 +7562,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Old", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7380,6 +7590,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Young", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7407,6 +7618,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Young", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7434,6 +7646,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Max Heap", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7461,6 +7674,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Used Heap", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7488,6 +7702,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Used Heap", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7515,6 +7730,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "1m", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7567,6 +7783,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "sum", "periodsField": undefined, @@ -7594,6 +7811,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search Total", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7621,6 +7839,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Segment Count", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7647,6 +7866,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Bulk", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7674,6 +7894,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Generic", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7701,6 +7922,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Get", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7728,6 +7950,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7755,6 +7978,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Management", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7782,6 +8006,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7809,6 +8034,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Watcher", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7836,6 +8062,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Bulk", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7863,6 +8090,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Generic", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7890,6 +8118,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Get", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7917,6 +8146,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7944,6 +8174,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Management", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7971,6 +8202,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Search", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -7998,6 +8230,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Watcher", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -8025,6 +8258,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Index Throttling Time", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "min": 0, @@ -8053,6 +8287,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total I/O", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -8080,6 +8315,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Read I/O", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -8107,6 +8343,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Write I/O", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -8134,6 +8371,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Total Shards", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "max", "periodsField": undefined, @@ -8161,6 +8399,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Org Sources", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "avg", "periodsField": undefined, @@ -8187,6 +8426,7 @@ Object { "getDateHistogramSubAggs": undefined, "isNotSupportedInInternalCollection": undefined, "label": "Private Sources", + "legendFormat": undefined, "mbField": undefined, "metricAgg": "avg", "periodsField": undefined, diff --git a/x-pack/plugins/monitoring/server/lib/metrics/classes/metric.ts b/x-pack/plugins/monitoring/server/lib/metrics/classes/metric.ts index 92927fb1fa7c4..dcbe9f75f7c85 100644 --- a/x-pack/plugins/monitoring/server/lib/metrics/classes/metric.ts +++ b/x-pack/plugins/monitoring/server/lib/metrics/classes/metric.ts @@ -25,6 +25,7 @@ interface OptionalMetricOptions { type?: string; isNotSupportedInInternalCollection?: boolean; technicalPreview?: boolean; + legendFormat?: string; } interface DefaultMetricOptions { @@ -40,6 +41,7 @@ export class Metric { public label!: string; public description!: string; public format!: string; + public legendFormat?: string; public units!: string; public timestampField!: string; public app?: string; @@ -101,6 +103,7 @@ export class Metric { 'description', 'units', 'format', + 'legendFormat', 'technicalPreview', ]; diff --git a/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/classes.ts b/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/classes.ts index a70299c3fa42d..c6c49222e20fa 100644 --- a/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/classes.ts +++ b/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/classes.ts @@ -15,7 +15,14 @@ import { NORMALIZED_DERIVATIVE_UNIT } from '../../../../common/constants'; type ElasticsearchMetricOptions = Pick< MetricOptions, - 'format' | 'metricAgg' | 'field' | 'label' | 'description' | 'units' | 'derivative' + | 'format' + | 'metricAgg' + | 'field' + | 'label' + | 'description' + | 'units' + | 'derivative' + | 'legendFormat' > & Partial> & { type: string; min?: number }; diff --git a/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/metrics.ts b/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/metrics.ts index c62a27000c878..6c7fe8c52a84b 100644 --- a/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/metrics.ts +++ b/x-pack/plugins/monitoring/server/lib/metrics/elasticsearch/metrics.ts @@ -27,6 +27,7 @@ import { SMALL_BYTES, LARGE_BYTES, LARGE_ABBREVIATED, + LARGE, } from '../../../../common/formatting'; const indexingRateTitle = i18n.translate('xpack.monitoring.metrics.es.indexingRateTitle', { @@ -1397,6 +1398,7 @@ export const metrics = { }), type: 'index', format: LARGE_ABBREVIATED, + legendFormat: LARGE, metricAgg: 'max', units: '', }), diff --git a/x-pack/plugins/observability/public/components/threshold/components/validation.tsx b/x-pack/plugins/observability/public/components/threshold/components/validation.tsx index 5f63cd6733619..2d72c1e090869 100644 --- a/x-pack/plugins/observability/public/components/threshold/components/validation.tsx +++ b/x-pack/plugins/observability/public/components/threshold/components/validation.tsx @@ -56,7 +56,7 @@ export function validateMetricThreshold({ } & { filterQuery?: string[]; searchConfiguration?: string[] } = {}; validationResult.errors = errors; - if (!searchConfiguration) { + if (!searchConfiguration || !searchConfiguration.index) { errors.searchConfiguration = [ i18n.translate( 'xpack.observability.threshold.rule.alertFlyout.error.invalidSearchConfiguration', diff --git a/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.test.tsx b/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.test.tsx index ca0050118b408..9a4091ee1ca29 100644 --- a/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.test.tsx +++ b/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.test.tsx @@ -7,7 +7,9 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; +import { QueryClientProvider } from '@tanstack/react-query'; import { dataViewPluginMocks } from '@kbn/data-views-plugin/public/mocks'; +import { queryClient } from '@kbn/osquery-plugin/public/query_client'; import { mountWithIntl, nextTick } from '@kbn/test-jest-helpers'; import { Comparator } from '../../../common/threshold_rule/types'; @@ -47,21 +49,23 @@ describe('Expression', () => { searchConfiguration: {}, }; const wrapper = mountWithIntl( - Reflect.set(ruleParams, key, value)} - setRuleProperty={() => {}} - metadata={{ - currentOptions, - adHocDataViewList: [], - }} - dataViews={dataViewMock} - onChangeMetaData={jest.fn()} - /> + + Reflect.set(ruleParams, key, value)} + setRuleProperty={() => {}} + metadata={{ + currentOptions, + adHocDataViewList: [], + }} + dataViews={dataViewMock} + onChangeMetaData={jest.fn()} + /> + ); const update = async () => @@ -107,7 +111,7 @@ describe('Expression', () => { ]); }); - it('should show the error message', async () => { + it('should show an error message when searchSource throws an error', async () => { const currentOptions = { groupBy: 'host.hostname', filterQuery: 'foo', @@ -146,4 +150,72 @@ describe('Expression', () => { errorMessage ); }); + + it('should show no timestamp error when selected data view does not have a timeField', async () => { + const currentOptions = { + groupBy: 'host.hostname', + filterQuery: 'foo', + metrics: [ + { aggregation: 'avg', field: 'system.load.1' }, + { aggregation: 'cardinality', field: 'system.cpu.user.pct' }, + ] as MetricsExplorerMetric[], + }; + const mockedIndex = { + id: 'c34a7c79-a88b-4b4a-ad19-72f6d24104e4', + title: 'metrics-fake_hosts', + fieldFormatMap: {}, + typeMeta: {}, + // We should not provide timeFieldName here to show thresholdRuleDataViewErrorNoTimestamp error + // timeFieldName: '@timestamp', + }; + const mockedDataView = { + getIndexPattern: () => 'mockedIndexPattern', + getName: () => 'mockedName', + ...mockedIndex, + }; + const mockedSearchSource = { + id: 'data_source', + shouldOverwriteDataViewType: false, + requestStartHandlers: [], + inheritOptions: {}, + history: [], + fields: { + index: mockedIndex, + }, + getField: jest.fn(() => mockedDataView), + dependencies: { + aggs: { + types: {}, + }, + }, + }; + const kibanaMock = kibanaStartMock.startContract(); + useKibanaMock.mockReturnValue({ + ...kibanaMock, + services: { + ...kibanaMock.services, + data: { + dataViews: { + create: jest.fn(), + }, + query: { + timefilter: { + timefilter: jest.fn(), + }, + }, + search: { + searchSource: { + create: jest.fn(() => mockedSearchSource), + }, + }, + }, + }, + }); + const { wrapper } = await setup(currentOptions); + expect( + wrapper.find(`[data-test-subj="thresholdRuleDataViewErrorNoTimestamp"]`).first().text() + ).toBe( + 'The selected data view does not have a timestamp field, please select another data view.' + ); + }); }); diff --git a/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.tsx b/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.tsx index 962e4adf3f6c9..66382ddf1c673 100644 --- a/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.tsx +++ b/x-pack/plugins/observability/public/components/threshold/threshold_rule_expression.tsx @@ -12,6 +12,7 @@ import { EuiCallOut, EuiCheckbox, EuiEmptyPrompt, + EuiFormErrorText, EuiFormRow, EuiIcon, EuiLink, @@ -67,6 +68,7 @@ export default function Expressions(props: Props) { const [timeSize, setTimeSize] = useState(1); const [timeUnit, setTimeUnit] = useState('m'); const [dataView, setDataView] = useState(); + const [dataViewTimeFieldError, setDataViewTimeFieldError] = useState(); const [searchSource, setSearchSource] = useState(); const [paramsError, setParamsError] = useState(); const derivedIndexPattern = useMemo( @@ -99,6 +101,25 @@ export default function Expressions(props: Props) { setRuleParams('searchConfiguration', initialSearchConfiguration); setSearchSource(createdSearchSource); setDataView(createdSearchSource.getField('index')); + + if (createdSearchSource.getField('index')) { + const timeFieldName = createdSearchSource.getField('index')?.timeFieldName; + if (!timeFieldName) { + setDataViewTimeFieldError( + i18n.translate( + 'xpack.observability.threshold.rule.alertFlyout.dataViewError.noTimestamp', + { + defaultMessage: + 'The selected data view does not have a timestamp field, please select another data view.', + } + ) + ); + } else { + setDataViewTimeFieldError(undefined); + } + } else { + setDataViewTimeFieldError(undefined); + } } catch (error) { setParamsError(error); } @@ -106,7 +127,7 @@ export default function Expressions(props: Props) { initSearchSource(); // eslint-disable-next-line react-hooks/exhaustive-deps - }, [data.search.searchSource, data.dataViews]); + }, [data.search.searchSource, data.dataViews, dataView]); const options = useMemo(() => { if (metadata?.currentOptions?.metrics) { @@ -363,6 +384,11 @@ export default function Expressions(props: Props) { onChangeMetaData({ ...metadata, adHocDataViewList }); }} /> + {dataViewTimeFieldError && ( + + {dataViewTimeFieldError} + + )}
diff --git a/x-pack/plugins/observability/public/pages/alerts/alerts.tsx b/x-pack/plugins/observability/public/pages/alerts/alerts.tsx index c5b166c3f0dc1..afd71d888143e 100644 --- a/x-pack/plugins/observability/public/pages/alerts/alerts.tsx +++ b/x-pack/plugins/observability/public/pages/alerts/alerts.tsx @@ -33,6 +33,7 @@ import { getAlertSummaryTimeRange } from '../../utils/alert_summary_widget'; import { observabilityAlertFeatureIds } from '../../../common/constants'; import { ALERTS_URL_STORAGE_KEY } from '../../../common/constants'; import { HeaderMenu } from '../overview/components/header_menu/header_menu'; +import { useGetFilteredRuleTypes } from '../../hooks/use_get_filtered_rule_types'; const ALERTS_SEARCH_BAR_ID = 'alerts-search-bar-o11y'; const ALERTS_PER_PAGE = 50; @@ -59,11 +60,13 @@ function InternalAlertsPage() { getAlertSummaryWidget: AlertSummaryWidget, }, } = kibanaServices; - const { ObservabilityPageTemplate, observabilityRuleTypeRegistry } = usePluginContext(); + const { ObservabilityPageTemplate } = usePluginContext(); const alertSearchBarStateProps = useAlertSearchBarStateContainer(ALERTS_URL_STORAGE_KEY, { replace: false, }); + const filteredRuleTypes = useGetFilteredRuleTypes(); + const onBrushEnd: BrushEndListener = (brushEvent) => { const { x } = brushEvent as XYBrushEvent; if (x) { @@ -126,7 +129,7 @@ function InternalAlertsPage() { try { const response = await loadRuleAggregations({ http, - typesFilter: observabilityRuleTypeRegistry.list(), + typesFilter: filteredRuleTypes, }); const { ruleExecutionStatus, ruleMutedStatus, ruleEnabledStatus, ruleSnoozedStatus } = response; diff --git a/x-pack/plugins/observability/public/pages/rule_details/rule_details.tsx b/x-pack/plugins/observability/public/pages/rule_details/rule_details.tsx index fcc562111dfe5..6e14506604a61 100644 --- a/x-pack/plugins/observability/public/pages/rule_details/rule_details.tsx +++ b/x-pack/plugins/observability/public/pages/rule_details/rule_details.tsx @@ -39,6 +39,7 @@ import { } from '../../utils/alert_summary_widget'; import type { AlertStatus } from '../../../common/typings'; import { HeaderMenu } from '../overview/components/header_menu/header_menu'; +import { useGetFilteredRuleTypes } from '../../hooks/use_get_filtered_rule_types'; export type TabId = typeof RULE_DETAILS_ALERTS_TAB | typeof RULE_DETAILS_EXECUTION_TAB; @@ -64,7 +65,7 @@ export function RuleDetailsPage() { getRuleStatusPanel: RuleStatusPanel, }, } = useKibana().services; - const { ObservabilityPageTemplate, observabilityRuleTypeRegistry } = usePluginContext(); + const { ObservabilityPageTemplate } = usePluginContext(); const { ruleId } = useParams(); const { search } = useLocation(); @@ -73,9 +74,9 @@ export function RuleDetailsPage() { const baseTheme = useChartsBaseTheme(); const { rule, isLoading, isError, refetch } = useFetchRule({ ruleId }); - + const filteredRuleTypes = useGetFilteredRuleTypes(); const { ruleTypes } = useFetchRuleTypes({ - filterByRuleTypeIds: observabilityRuleTypeRegistry.list(), + filterByRuleTypeIds: filteredRuleTypes, }); useBreadcrumbs([ diff --git a/x-pack/plugins/observability/public/pages/slo_edit/components/apm_availability/apm_availability_indicator_type_form.tsx b/x-pack/plugins/observability/public/pages/slo_edit/components/apm_availability/apm_availability_indicator_type_form.tsx index 5c6f06051eb3d..377f5e0dc0710 100644 --- a/x-pack/plugins/observability/public/pages/slo_edit/components/apm_availability/apm_availability_indicator_type_form.tsx +++ b/x-pack/plugins/observability/public/pages/slo_edit/components/apm_availability/apm_availability_indicator_type_form.tsx @@ -12,10 +12,12 @@ import { useFormContext } from 'react-hook-form'; import { CreateSLOForm } from '../../types'; import { FieldSelector } from '../apm_common/field_selector'; import { DataPreviewChart } from '../common/data_preview_chart'; +import { GroupByFieldSelector } from '../common/group_by_field_selector'; import { QueryBuilder } from '../common/query_builder'; export function ApmAvailabilityIndicatorTypeForm() { const { watch } = useFormContext(); + const index = watch('indicator.params.index'); return ( @@ -119,6 +121,8 @@ export function ApmAvailabilityIndicatorTypeForm() { + + ); diff --git a/x-pack/plugins/observability/public/pages/slo_edit/components/apm_latency/apm_latency_indicator_type_form.tsx b/x-pack/plugins/observability/public/pages/slo_edit/components/apm_latency/apm_latency_indicator_type_form.tsx index e91080e2910dd..316f17f5072e6 100644 --- a/x-pack/plugins/observability/public/pages/slo_edit/components/apm_latency/apm_latency_indicator_type_form.tsx +++ b/x-pack/plugins/observability/public/pages/slo_edit/components/apm_latency/apm_latency_indicator_type_form.tsx @@ -12,10 +12,12 @@ import { Controller, useFormContext } from 'react-hook-form'; import { CreateSLOForm } from '../../types'; import { FieldSelector } from '../apm_common/field_selector'; import { DataPreviewChart } from '../common/data_preview_chart'; +import { GroupByFieldSelector } from '../common/group_by_field_selector'; import { QueryBuilder } from '../common/query_builder'; export function ApmLatencyIndicatorTypeForm() { const { control, watch, getFieldState } = useFormContext(); + const index = watch('indicator.params.index'); return ( @@ -162,6 +164,8 @@ export function ApmLatencyIndicatorTypeForm() { + + ); diff --git a/x-pack/plugins/observability/public/plugin.mock.tsx b/x-pack/plugins/observability/public/plugin.mock.tsx index 37c183cba815c..81c3aa70cbd37 100644 --- a/x-pack/plugins/observability/public/plugin.mock.tsx +++ b/x-pack/plugins/observability/public/plugin.mock.tsx @@ -6,7 +6,8 @@ */ import React from 'react'; import { mockCasesContract } from '@kbn/cases-plugin/public/mocks'; -import { timefilterServiceMock } from '@kbn/data-plugin/public/query/timefilter/timefilter_service.mock'; +import { chartPluginMock } from '@kbn/charts-plugin/public/mocks'; +import { dataPluginMock } from '@kbn/data-plugin/public/mocks'; const triggersActionsUiStartMock = { createStart() { @@ -64,24 +65,6 @@ const triggersActionsUiStartMock = { }, }; -const data = { - createStart() { - return { - dataViews: { - create: jest.fn(), - }, - query: { - timefilter: timefilterServiceMock.createSetupContract(), - }, - search: { - searchSource: { - create: jest.fn(), - }, - }, - }; - }, -}; - const dataViewEditor = { createStart() { return { @@ -110,8 +93,9 @@ export const observabilityPublicPluginsStartMock = { createStart() { return { cases: mockCasesContract(), + charts: chartPluginMock.createStartContract(), triggersActionsUi: triggersActionsUiStartMock.createStart(), - data: data.createStart(), + data: dataPluginMock.createStartContract(), dataViews: dataViews.createStart(), dataViewEditor: dataViewEditor.createStart(), lens: null, diff --git a/x-pack/plugins/observability/public/utils/kibana_react.mock.ts b/x-pack/plugins/observability/public/utils/kibana_react.mock.ts index c375adb7fc513..1e854540afb5c 100644 --- a/x-pack/plugins/observability/public/utils/kibana_react.mock.ts +++ b/x-pack/plugins/observability/public/utils/kibana_react.mock.ts @@ -19,7 +19,6 @@ export const kibanaStartMock = { ...observabilityPublicPluginsStartMock.createStart(), storage: coreMock.createStorage(), cases: { ...casesPluginMock.createStartContract() }, - charts: { theme: { useChartsTheme: () => {}, useChartsBaseTheme: () => {} } }, }, }; }, diff --git a/x-pack/plugins/observability/server/lib/rules/threshold/register_threshold_rule_type.ts b/x-pack/plugins/observability/server/lib/rules/threshold/register_threshold_rule_type.ts index 823d9eb6efc6f..fa75318530267 100644 --- a/x-pack/plugins/observability/server/lib/rules/threshold/register_threshold_rule_type.ts +++ b/x-pack/plugins/observability/server/lib/rules/threshold/register_threshold_rule_type.ts @@ -136,6 +136,13 @@ export function thresholdRuleType( ), alertOnNoData: schema.maybe(schema.boolean()), alertOnGroupDisappear: schema.maybe(schema.boolean()), + searchConfiguration: schema.object({ + index: schema.string(), + query: schema.object({ + language: schema.string(), + query: schema.string(), + }), + }), }, { unknowns: 'allow' } ), diff --git a/x-pack/plugins/observability/server/lib/rules/threshold/threshold_executor.ts b/x-pack/plugins/observability/server/lib/rules/threshold/threshold_executor.ts index 64180fb8875f0..6429cf164262c 100644 --- a/x-pack/plugins/observability/server/lib/rules/threshold/threshold_executor.ts +++ b/x-pack/plugins/observability/server/lib/rules/threshold/threshold_executor.ts @@ -169,7 +169,7 @@ export const createMetricThresholdExecutor = ({ if (!dataView) { throw new Error('No matched data view'); } else if (!timeFieldName) { - throw new Error('No timestamp field is specified'); + throw new Error('The selected data view does not have a timestamp field'); } const alertResults = await evaluateRule( diff --git a/x-pack/plugins/observability/server/plugin.ts b/x-pack/plugins/observability/server/plugin.ts index 0b0b7207d69ec..d66ab2e73df57 100644 --- a/x-pack/plugins/observability/server/plugin.ts +++ b/x-pack/plugins/observability/server/plugin.ts @@ -28,7 +28,10 @@ import { SpacesPluginSetup } from '@kbn/spaces-plugin/server'; import { UsageCollectionSetup } from '@kbn/usage-collection-plugin/server'; import { ObservabilityConfig } from '.'; import { casesFeatureId, observabilityFeatureId, sloFeatureId } from '../common'; -import { SLO_BURN_RATE_RULE_TYPE_ID } from '../common/constants'; +import { + SLO_BURN_RATE_RULE_TYPE_ID, + OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, +} from '../common/constants'; import { kubernetesGuideConfig, kubernetesGuideId, @@ -70,6 +73,8 @@ interface PluginStart { alerting: PluginStartContract; } +const sloRuleTypes = [SLO_BURN_RATE_RULE_TYPE_ID, OBSERVABILITY_THRESHOLD_RULE_TYPE_ID]; + export class ObservabilityPlugin implements Plugin { private logger: Logger; @@ -192,7 +197,7 @@ export class ObservabilityPlugin implements Plugin { category: DEFAULT_APP_CATEGORIES.observability, app: [sloFeatureId, 'kibana'], catalogue: [sloFeatureId, 'observability'], - alerting: [SLO_BURN_RATE_RULE_TYPE_ID], + alerting: sloRuleTypes, privileges: { all: { app: [sloFeatureId, 'kibana'], @@ -204,10 +209,10 @@ export class ObservabilityPlugin implements Plugin { }, alerting: { rule: { - all: [SLO_BURN_RATE_RULE_TYPE_ID], + all: sloRuleTypes, }, alert: { - all: [SLO_BURN_RATE_RULE_TYPE_ID], + all: sloRuleTypes, }, }, ui: ['read', 'write'], @@ -222,10 +227,10 @@ export class ObservabilityPlugin implements Plugin { }, alerting: { rule: { - read: [SLO_BURN_RATE_RULE_TYPE_ID], + read: sloRuleTypes, }, alert: { - read: [SLO_BURN_RATE_RULE_TYPE_ID], + read: sloRuleTypes, }, }, ui: ['read'], diff --git a/x-pack/plugins/observability/tsconfig.json b/x-pack/plugins/observability/tsconfig.json index 5004d592c588b..3fecda34a9ee5 100644 --- a/x-pack/plugins/observability/tsconfig.json +++ b/x-pack/plugins/observability/tsconfig.json @@ -83,7 +83,8 @@ "@kbn/actions-plugin", "@kbn/core-capabilities-common", "@kbn/deeplinks-analytics", - "@kbn/observability-ai-assistant-plugin" + "@kbn/observability-ai-assistant-plugin", + "@kbn/osquery-plugin" ], "exclude": [ "target/**/*" diff --git a/x-pack/plugins/observability_ai_assistant/kibana.jsonc b/x-pack/plugins/observability_ai_assistant/kibana.jsonc index e0299246377a3..ebe28df3a1141 100644 --- a/x-pack/plugins/observability_ai_assistant/kibana.jsonc +++ b/x-pack/plugins/observability_ai_assistant/kibana.jsonc @@ -7,8 +7,20 @@ "server": true, "browser": true, "configPath": ["xpack", "observabilityAIAssistant"], - "requiredPlugins": ["triggersActionsUi", "actions", "security", "features", "observabilityShared", "taskManager", "lens", "dataViews", "ruleRegistry"], - "requiredBundles": ["kibanaReact", "kibanaUtils", "fieldFormats"], + "requiredPlugins": [ + "actions", + "dataViews", + "features", + "lens", + "licensing", + "observabilityShared", + "ruleRegistry", + "security", + "share", + "taskManager", + "triggersActionsUi" + ], + "requiredBundles": ["fieldFormats", "kibanaReact", "kibanaUtils"], "optionalPlugins": [], "extraPublicDirs": [] } diff --git a/x-pack/plugins/observability_ai_assistant/public/assets/elastic_ai_assistant.png b/x-pack/plugins/observability_ai_assistant/public/assets/elastic_ai_assistant.png new file mode 100644 index 0000000000000..63bd19136f512 Binary files /dev/null and b/x-pack/plugins/observability_ai_assistant/public/assets/elastic_ai_assistant.png differ diff --git a/x-pack/plugins/observability_ai_assistant/public/assets/illustration.svg b/x-pack/plugins/observability_ai_assistant/public/assets/illustration.svg new file mode 100644 index 0000000000000..363c492fec84b --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/assets/illustration.svg @@ -0,0 +1,920 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.stories.tsx b/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.stories.tsx new file mode 100644 index 0000000000000..d49ccdfb3823d --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.stories.tsx @@ -0,0 +1,37 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React from 'react'; +import { ComponentStory } from '@storybook/react'; + +import { + HideExpandConversationListButton as Component, + HideExpandConversationListButtonProps, +} from './hide_expand_conversation_list_button'; + +export default { + component: Component, + title: 'app/Atoms/HideExpandConversationListButton', + argTypes: { + isExpanded: { + control: { + type: 'boolean', + }, + }, + }, +}; + +const Template: ComponentStory = ( + props: HideExpandConversationListButtonProps +) => ; + +const defaultProps = { + isExpanded: true, +}; + +export const HideExpandConversationListButton = Template.bind({}); +HideExpandConversationListButton.args = defaultProps; diff --git a/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.tsx b/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.tsx index 8921380c801e1..b23e4a9abb713 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/buttons/hide_expand_conversation_list_button.tsx @@ -8,9 +8,11 @@ import React from 'react'; import { EuiButtonEmpty } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -export function HideExpandConversationListButton( - props: React.ComponentProps & { isExpanded: boolean } -) { +export type HideExpandConversationListButtonProps = React.ComponentProps & { + isExpanded: boolean; +}; + +export function HideExpandConversationListButton(props: HideExpandConversationListButtonProps) { return ( {props.isExpanded diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_body.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_body.tsx index 0f1039f1c5c93..5cdd3c096fc29 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_body.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_body.tsx @@ -5,6 +5,8 @@ * 2.0. */ +import React, { useEffect, useRef } from 'react'; +import { last } from 'lodash'; import { EuiFlexGroup, EuiFlexItem, @@ -14,22 +16,24 @@ import { EuiSpacer, } from '@elastic/eui'; import { css } from '@emotion/css'; +import { euiThemeVars } from '@kbn/ui-theme'; import type { AuthenticatedUser } from '@kbn/security-plugin/common'; -import React, { useEffect, useRef } from 'react'; -import { last } from 'lodash'; import type { Message } from '../../../common/types'; import type { UseGenAIConnectorsResult } from '../../hooks/use_genai_connectors'; import type { UseKnowledgeBaseResult } from '../../hooks/use_knowledge_base'; import { useTimeline } from '../../hooks/use_timeline'; +import { useLicense } from '../../hooks/use_license'; import { useObservabilityAIAssistantChatService } from '../../hooks/use_observability_ai_assistant_chat_service'; import { MissingCredentialsCallout } from '../missing_credentials_callout'; +import { ExperimentalFeatureBanner } from './experimental_feature_banner'; +import { IncorrectLicensePanel } from './incorrect_license_panel'; import { ChatHeader } from './chat_header'; import { ChatPromptEditor } from './chat_prompt_editor'; import { ChatTimeline } from './chat_timeline'; const containerClassName = css` max-height: 100%; - max-width: 800px; + max-width: ${1200 - 250}px; // page template max width - conversation list width. `; const timelineClassName = css` @@ -40,6 +44,11 @@ const loadingSpinnerContainerClassName = css` align-self: center; `; +const incorrectLicenseContainer = css` + height: 100%; + padding: ${euiThemeVars.euiPanelPaddingModifiers.paddingMedium}; +`; + export function ChatBody({ title, loading, @@ -47,6 +56,7 @@ export function ChatBody({ connectors, knowledgeBase, connectorsManagementHref, + conversationId, currentUser, onChatUpdate, onChatComplete, @@ -64,6 +74,9 @@ export function ChatBody({ onChatComplete: (messages: Message[]) => void; onSaveTitle: (title: string) => void; }) { + const license = useLicense(); + const hasCorrectLicense = license?.hasAtLeast('enterprise'); + const chatService = useObservabilityAIAssistantChatService(); const timeline = useTimeline({ @@ -126,7 +139,24 @@ export function ChatBody({ // eslint-disable-next-line react-hooks/exhaustive-deps }, [timelineContainerRef.current]); - if (connectors.loading || knowledgeBase.status.loading) { + if (!hasCorrectLicense && !conversationId) { + footer = ( + <> + + + + + + + + + + + + + + ); + } else if (connectors.loading || knowledgeBase.status.loading) { footer = ( @@ -162,7 +192,7 @@ export function ChatBody({ @@ -174,12 +204,16 @@ export function ChatBody({ return ( + + + diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_header.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_header.tsx index ea410160408a9..0314380a87657 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_header.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_header.tsx @@ -17,13 +17,13 @@ import { i18n } from '@kbn/i18n'; import { css } from '@emotion/css'; import { AssistantAvatar } from '../assistant_avatar'; import { ConnectorSelectorBase } from '../connector_selector/connector_selector_base'; -import { EMPTY_CONVERSATION_TITLE } from '../../i18n'; +import { EMPTY_CONVERSATION_TITLE, UPGRADE_LICENSE_TITLE } from '../../i18n'; import { KnowledgeBaseCallout } from './knowledge_base_callout'; -import { TechnicalPreviewBadge } from '../technical_preview_badge'; import { useUnmountAndRemountWhenPropChanges } from '../../hooks/use_unmount_and_remount_when_prop_changes'; import type { UseGenAIConnectorsResult } from '../../hooks/use_genai_connectors'; import type { UseKnowledgeBaseResult } from '../../hooks/use_knowledge_base'; +// needed to prevent InlineTextEdit component from expanding container const minWidthClassName = css` min-width: 0; `; @@ -31,19 +31,21 @@ const minWidthClassName = css` export function ChatHeader({ title, loading, - knowledgeBase, + licenseInvalid, connectors, + knowledgeBase, onSaveTitle, }: { title: string; loading: boolean; - knowledgeBase: UseKnowledgeBaseResult; + licenseInvalid: boolean; connectors: UseGenAIConnectorsResult; + knowledgeBase: UseKnowledgeBaseResult; onSaveTitle?: (title: string) => void; }) { const hasTitle = !!title; - const displayedTitle = title || EMPTY_CONVERSATION_TITLE; + const displayedTitle = licenseInvalid ? UPGRADE_LICENSE_TITLE : title || EMPTY_CONVERSATION_TITLE; const theme = useEuiTheme(); @@ -55,53 +57,46 @@ export function ChatHeader({ return ( - + - {loading ? : } + {loading ? : } + - - - - {shouldRender ? ( - - ) : null} + + {shouldRender ? ( + + ) : null} + + + + + - - + + {!licenseInvalid ? : null} - - - - - - ); diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_prompt_editor.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_prompt_editor.tsx index b3c5b6daca72a..3b2ad1cdf292c 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_prompt_editor.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_prompt_editor.tsx @@ -168,7 +168,7 @@ export function ChatPromptEditor({ @@ -177,7 +177,7 @@ export function ChatPromptEditor({ iconType="cross" iconSide="right" size="xs" - disabled={loading} + disabled={loading || disabled} onClick={handleClearSelection} > {i18n.translate('xpack.observabilityAiAssistant.prompt.emptySelection', { @@ -238,6 +238,7 @@ export function ChatPromptEditor({ ) : ( !item.display.hide); + return ( {compact( - items.map((item, index) => - !item.display.hide ? ( - { - onFeedback(item, feedback); - }} - onRegenerateClick={() => { - onRegenerate(item); - }} - onEditSubmit={(message) => { - return onEdit(item, message); - }} - onStopGeneratingClick={onStopGenerating} - /> - ) : null - ) + filteredItems.map((item, index) => ( + { + onFeedback(item, feedback); + }} + onRegenerateClick={() => { + onRegenerate(item); + }} + onEditSubmit={(message) => { + return onEdit(item, message); + }} + onStopGeneratingClick={onStopGenerating} + /> + )) )} + {filteredItems.length === 1 ? : null} ); } diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_welcome_panel.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_welcome_panel.tsx new file mode 100644 index 0000000000000..32fba0b72a828 --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/chat_welcome_panel.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; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React from 'react'; +import { EuiFlexGroup, EuiImage, EuiPanel, EuiText, EuiTitle } from '@elastic/eui'; +import { css } from '@emotion/css'; +import { i18n } from '@kbn/i18n'; +import { euiThemeVars } from '@kbn/ui-theme'; +import ctaImage from '../../assets/elastic_ai_assistant.png'; + +const incorrectLicenseContainer = css` + height: 100%; + padding: ${euiThemeVars.euiPanelPaddingModifiers.paddingMedium}; +`; + +export function ChatWelcomePanel() { + return ( + + + + +

+ {i18n.translate('xpack.observabilityAiAssistant.chatWelcomePanel.title', { + defaultMessage: "Let's work on this together", + })} +

+
+ +

+ {i18n.translate('xpack.observabilityAiAssistant.chatWelcomePanel.body', { + defaultMessage: + 'Elastic AI Assistant is an experimental feature. Make sure to provide feedback when you interact with it.', + })} +

+
+
+
+ ); +} diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/conversation_list.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/conversation_list.tsx index a230a49c5a9fb..08cb45387a9ef 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/chat/conversation_list.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/conversation_list.tsx @@ -5,6 +5,7 @@ * 2.0. */ +import React from 'react'; import { EuiFlexGroup, EuiFlexItem, @@ -18,7 +19,6 @@ import { } from '@elastic/eui'; import { css } from '@emotion/css'; import { i18n } from '@kbn/i18n'; -import React from 'react'; import { NewChatButton } from '../buttons/new_chat_button'; const containerClassName = css` @@ -43,17 +43,16 @@ const newChatButtonWrapperClassName = css` export function ConversationList({ selected, - onClickNewChat, loading, error, conversations, + onClickNewChat, onClickDeleteConversation, }: { selected: string; loading: boolean; error?: any; conversations?: Array<{ id: string; label: string; href?: string }>; - onClickConversation: (conversationId: string) => void; onClickNewChat: () => void; onClickDeleteConversation: (id: string) => void; }) { diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/experimental_feature_banner.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/experimental_feature_banner.tsx new file mode 100644 index 0000000000000..48935a49ccf02 --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/experimental_feature_banner.tsx @@ -0,0 +1,57 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React from 'react'; +import { + EuiButton, + EuiFlexGroup, + EuiFlexItem, + EuiHorizontalRule, + EuiImage, + EuiPanel, +} from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n-react'; +import illustration from '../../assets/illustration.svg'; + +export function ExperimentalFeatureBanner() { + return ( + <> + + + + + + + + Tech Preview }} + /> + + + + + {i18n.translate( + 'xpack.observabilityAiAssistant.experimentalFunctionBanner.feedbackButton', + { defaultMessage: 'Give feedback' } + )} + + + + + + + ); +} diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/incorrect_license_panel.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/incorrect_license_panel.tsx new file mode 100644 index 0000000000000..d728507e1e362 --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/incorrect_license_panel.tsx @@ -0,0 +1,77 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License + * 2.0; you may not use this file except in compliance with the Elastic License + * 2.0. + */ + +import React from 'react'; +import { + EuiButton, + EuiButtonEmpty, + EuiFlexGroup, + EuiFlexItem, + EuiImage, + EuiPanel, + EuiText, + EuiTitle, +} from '@elastic/eui'; +import { css } from '@emotion/css'; +import { i18n } from '@kbn/i18n'; +import { euiThemeVars } from '@kbn/ui-theme'; +import { UPGRADE_LICENSE_TITLE } from '../../i18n'; +import ctaImage from '../../assets/elastic_ai_assistant.png'; +import { useLicenseManagementLocator } from '../../hooks/use_license_management_locator'; + +const incorrectLicenseContainer = css` + height: 100%; + padding: ${euiThemeVars.euiPanelPaddingModifiers.paddingMedium}; +`; + +export function IncorrectLicensePanel() { + const handleNavigateToLicenseManagement = useLicenseManagementLocator(); + + return ( + + + + +

{UPGRADE_LICENSE_TITLE}

+
+ +

+ {i18n.translate('xpack.observabilityAiAssistant.incorrectLicense.body', { + defaultMessage: 'You need a Platinum license to use the Elastic AI Assistant.', + })} +

+
+ + + + + {i18n.translate( + 'xpack.observabilityAiAssistant.incorrectLicense.subscriptionPlansButton', + { + defaultMessage: 'Subscription plans', + } + )} + + + + + {i18n.translate('xpack.observabilityAiAssistant.incorrectLicense.manageLicense', { + defaultMessage: 'Manage license', + })} + + + + +
+
+ ); +} diff --git a/x-pack/plugins/observability_ai_assistant/public/components/chat/knowledge_base_callout.tsx b/x-pack/plugins/observability_ai_assistant/public/components/chat/knowledge_base_callout.tsx index e5eee16503235..b8f3b8bd7ef82 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/chat/knowledge_base_callout.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/chat/knowledge_base_callout.tsx @@ -111,7 +111,7 @@ export function KnowledgeBaseCallout({ knowledgeBase }: { knowledgeBase: UseKnow hasShadow={false} borderRadius="none" color={color} - paddingSize={knowledgeBase.status.value?.ready ? 'none' : 's'} + paddingSize="s" css={{ width: 'max-content' }} > {content} diff --git a/x-pack/plugins/observability_ai_assistant/public/components/insight/insight.tsx b/x-pack/plugins/observability_ai_assistant/public/components/insight/insight.tsx index d695ebc277669..16b5eb36b4787 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/insight/insight.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/insight/insight.tsx @@ -45,14 +45,16 @@ function ChatContent({ const reloadReply = useCallback(() => { setLoading(true); - const nextSubscription = chatService.chat({ messages, connectorId }).subscribe({ - next: (msg) => { - setPendingMessage(() => msg); - }, - complete: () => { - setLoading(false); - }, - }); + const nextSubscription = chatService + .chat({ messages, connectorId, function: 'none' }) + .subscribe({ + next: (msg) => { + setPendingMessage(() => msg); + }, + complete: () => { + setLoading(false); + }, + }); setSubscription(nextSubscription); }, [messages, connectorId, chatService]); diff --git a/x-pack/plugins/observability_ai_assistant/public/components/insight/insight_base.tsx b/x-pack/plugins/observability_ai_assistant/public/components/insight/insight_base.tsx index ff22f15b7c948..bef2c2730a553 100644 --- a/x-pack/plugins/observability_ai_assistant/public/components/insight/insight_base.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/components/insight/insight_base.tsx @@ -21,7 +21,7 @@ import { import { i18n } from '@kbn/i18n'; import React, { useState } from 'react'; import { AssistantAvatar } from '../assistant_avatar'; -import { TechnicalPreviewBadge } from '../technical_preview_badge'; +import { ExperimentalFeatureBanner } from '../chat/experimental_feature_banner'; export interface InsightBaseProps { title: string; @@ -117,15 +117,13 @@ export function InsightBase({
) : null} - - - ) : null } onToggle={onToggle} > + {children} diff --git a/x-pack/plugins/observability_ai_assistant/public/functions/alerts.ts b/x-pack/plugins/observability_ai_assistant/public/functions/alerts.ts index 03ea9a055fcc7..b4c0d0bd1bdfd 100644 --- a/x-pack/plugins/observability_ai_assistant/public/functions/alerts.ts +++ b/x-pack/plugins/observability_ai_assistant/public/functions/alerts.ts @@ -58,11 +58,16 @@ export function registerAlertsFunction({ description: 'a KQL query to filter the data by. If no filter should be applied, leave it empty.', }, + includeRecovered: { + type: 'boolean', + description: + 'Whether to include recovered/closed alerts. Defaults to false, which means only active alerts will be returned', + }, }, required: ['start', 'end'], } as const, }, - ({ arguments: { start, end, featureIds, filter } }, signal) => { + ({ arguments: { start, end, featureIds, filter, includeRecovered } }, signal) => { return service.callApi('POST /internal/observability_ai_assistant/functions/alerts', { params: { body: { @@ -71,6 +76,7 @@ export function registerAlertsFunction({ featureIds: featureIds && featureIds.length > 0 ? featureIds : DEFAULT_FEATURE_IDS.concat(), filter, + includeRecovered, }, }, signal, diff --git a/x-pack/plugins/observability_ai_assistant/public/functions/lens.tsx b/x-pack/plugins/observability_ai_assistant/public/functions/lens.tsx index d5d2c715d0c52..d12b8e3334318 100644 --- a/x-pack/plugins/observability_ai_assistant/public/functions/lens.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/functions/lens.tsx @@ -5,12 +5,13 @@ * 2.0. */ import { EuiLoadingSpinner } from '@elastic/eui'; +import type { DataViewsServicePublic } from '@kbn/data-views-plugin/public/types'; +import { FIELD_FORMAT_IDS } from '@kbn/field-formats-plugin/common'; import { LensAttributesBuilder, XYChart, XYDataLayer } from '@kbn/lens-embeddable-utils'; +import type { LensPublicStart } from '@kbn/lens-plugin/public'; import React from 'react'; import useAsync from 'react-use/lib/useAsync'; -import { FIELD_FORMAT_IDS } from '@kbn/field-formats-plugin/common'; import type { RegisterFunctionDefinition } from '../../common/types'; -import { useKibana } from '../hooks/use_kibana'; import type { ObservabilityAIAssistantPluginStartDependencies, ObservabilityAIAssistantService, @@ -33,20 +34,16 @@ function Lens({ xyDataLayer, start, end, + lens, + dataViews, }: { indexPattern: string; xyDataLayer: XYDataLayer; start: string; end: string; + lens: LensPublicStart; + dataViews: DataViewsServicePublic; }) { - const { - services: { - plugins: { - start: { lens, dataViews }, - }, - }, - } = useKibana(); - const formulaAsync = useAsync(() => { return lens.stateHelperApi(); }, [lens]); @@ -214,7 +211,16 @@ export function registerLensFunction({ }, }); - return ; + return ( + + ); } ); } diff --git a/x-pack/plugins/observability_ai_assistant/public/functions/recall.ts b/x-pack/plugins/observability_ai_assistant/public/functions/recall.ts index 5f1e14af30d15..8f85a9e03a069 100644 --- a/x-pack/plugins/observability_ai_assistant/public/functions/recall.ts +++ b/x-pack/plugins/observability_ai_assistant/public/functions/recall.ts @@ -20,16 +20,24 @@ export function registerRecallFunction({ { name: 'recall', contexts: ['core'], - description: `Use this function to recall earlier learnings. Anything you will summarise can be retrieved again later via this function. The queries you use are very important, as they will decide the context that is included in the conversation. Make sure the query covers the following aspects: - - The user's intent - - Any data (like field names) mentioned in the user's request - - Anything you've inferred from the user's request - - The functions you think might be suitable for answering the user's request. If there are multiple functions that seem suitable, create multiple queries. Use the function name in the query. + description: `Use this function to recall earlier learnings. Anything you will summarise can be retrieved again later via this function. This is semantic/vector search so there's no need for an exact match. - For instance, when the user asks: "can you visualise the average request duration for opbeans-go over the last 7 days?", the queries could be: - - "visualise average request duration for APM service opbeans-go" + Make sure the query covers the following aspects: + - The user's prompt, verbatim + - Anything you've inferred from the user's request, but is not mentioned in the user's request + - The functions you think might be suitable for answering the user's request. If there are multiple functions that seem suitable, create multiple queries. Use the function name in the query. + + Q: "can you visualise the average request duration for opbeans-go over the last 7 days?" + A: -"can you visualise the average request duration for opbeans-go over the last 7 days?" + - "APM service" - "lens function usage" - - "get_apm_timeseries function usage"`, + - "get_apm_timeseries function usage" + + Q: "what alerts are active?" + A: - "what alerts are active?" + - "alerts function usage" + + `, descriptionForUser: 'This function allows the assistant to recall previous learnings.', parameters: { type: 'object', diff --git a/x-pack/plugins/observability_ai_assistant/public/hooks/use_license.ts b/x-pack/plugins/observability_ai_assistant/public/hooks/use_license.ts new file mode 100644 index 0000000000000..c28e7da132569 --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/hooks/use_license.ts @@ -0,0 +1,35 @@ +/* + * 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 { useCallback } from 'react'; +import { Observable } from 'rxjs'; +import useObservable from 'react-use/lib/useObservable'; +import type { ILicense, LicenseType } from '@kbn/licensing-plugin/public'; +import { useObservabilityAIAssistant } from './use_observability_ai_assistant'; + +interface UseLicenseReturnValue { + getLicense: () => ILicense | null; + hasAtLeast: (level: LicenseType) => boolean | undefined; +} + +export const useLicense = (): UseLicenseReturnValue => { + const service = useObservabilityAIAssistant(); + + const license = useObservable(service.getLicense() ?? new Observable(), null); + + return { + getLicense: () => license, + hasAtLeast: useCallback( + (level: LicenseType) => { + if (!license) return; + + return !!license && license.isAvailable && license.isActive && license.hasAtLeast(level); + }, + [license] + ), + }; +}; diff --git a/x-pack/plugins/observability_ai_assistant/public/hooks/use_license_management_locator.ts b/x-pack/plugins/observability_ai_assistant/public/hooks/use_license_management_locator.ts new file mode 100644 index 0000000000000..fe6c636e5286e --- /dev/null +++ b/x-pack/plugins/observability_ai_assistant/public/hooks/use_license_management_locator.ts @@ -0,0 +1,26 @@ +/* + * 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 { useObservabilityAIAssistant } from './use_observability_ai_assistant'; + +const LICENSE_MANAGEMENT_LOCATOR = 'LICENSE_MANAGEMENT_LOCATOR'; + +export const useLicenseManagementLocator = () => { + const service = useObservabilityAIAssistant(); + + const locators = service.getLicenseManagementLocator(); + + const locator = locators.url.locators.get(LICENSE_MANAGEMENT_LOCATOR); + + // license management does not exist on serverless + if (!locator) return; + + return () => + locator.navigate({ + page: 'dashboard', + }); +}; diff --git a/x-pack/plugins/observability_ai_assistant/public/hooks/use_timeline.ts b/x-pack/plugins/observability_ai_assistant/public/hooks/use_timeline.ts index c24f87a60912b..9bc3ea8a4e90b 100644 --- a/x-pack/plugins/observability_ai_assistant/public/hooks/use_timeline.ts +++ b/x-pack/plugins/observability_ai_assistant/public/hooks/use_timeline.ts @@ -10,6 +10,7 @@ import type { AuthenticatedUser } from '@kbn/security-plugin/common'; import { last } from 'lodash'; import { useEffect, useMemo, useRef, useState } from 'react'; import type { Subscription } from 'rxjs'; +import usePrevious from 'react-use/lib/usePrevious'; import { i18n } from '@kbn/i18n'; import { ContextDefinition, @@ -52,12 +53,14 @@ export type UseTimelineResult = Pick< export function useTimeline({ messages, connectors, + conversationId, currentUser, chatService, onChatUpdate, onChatComplete, }: { messages: Message[]; + conversationId?: string; connectors: UseGenAIConnectorsResult; currentUser?: Pick; chatService: ObservabilityAIAssistantChatService; @@ -89,6 +92,13 @@ export function useTimeline({ const [pendingMessage, setPendingMessage] = useState(); + const prevConversationId = usePrevious(conversationId); + useEffect(() => { + if (prevConversationId !== conversationId && pendingMessage?.error) { + setPendingMessage(undefined); + } + }, [conversationId, pendingMessage?.error, prevConversationId]); + function chat(nextMessages: Message[]): Promise { const controller = new AbortController(); @@ -122,8 +132,10 @@ export function useTimeline({ }, error: reject, complete: () => { - if (pendingMessageLocal?.error) { - notifications.toasts.addError(pendingMessageLocal?.error, { + const error = pendingMessageLocal?.error; + + if (error) { + notifications.toasts.addError(error, { title: i18n.translate('xpack.observabilityAiAssistant.failedToLoadResponse', { defaultMessage: 'Failed to load response from the AI Assistant', }), @@ -190,7 +202,7 @@ export function useTimeline({ name, content: JSON.stringify({ message: error.toString(), - error: error.body, + error, }), }, }) diff --git a/x-pack/plugins/observability_ai_assistant/public/i18n.ts b/x-pack/plugins/observability_ai_assistant/public/i18n.ts index 393d4ae7e8f10..533e0fff950b9 100644 --- a/x-pack/plugins/observability_ai_assistant/public/i18n.ts +++ b/x-pack/plugins/observability_ai_assistant/public/i18n.ts @@ -11,3 +11,10 @@ export const EMPTY_CONVERSATION_TITLE = i18n.translate( 'xpack.observabilityAiAssistant.emptyConversationTitle', { defaultMessage: 'New conversation' } ); + +export const UPGRADE_LICENSE_TITLE = i18n.translate( + 'xpack.observabilityAiAssistant.incorrectLicense.title', + { + defaultMessage: 'Upgrade your license', + } +); diff --git a/x-pack/plugins/observability_ai_assistant/public/plugin.tsx b/x-pack/plugins/observability_ai_assistant/public/plugin.tsx index 965a97e4a0a87..6e9eb6dc73196 100644 --- a/x-pack/plugins/observability_ai_assistant/public/plugin.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/plugin.tsx @@ -97,6 +97,8 @@ export class ObservabilityAIAssistantPlugin const service = (this.service = createService({ coreStart, securityStart: pluginsStart.security, + licenseStart: pluginsStart.licensing, + shareStart: pluginsStart.share, enabled: coreStart.application.capabilities.observabilityAIAssistant.show === true, })); diff --git a/x-pack/plugins/observability_ai_assistant/public/routes/conversations/conversation_view.tsx b/x-pack/plugins/observability_ai_assistant/public/routes/conversations/conversation_view.tsx index 557b04bb1fa88..c9331f75244b7 100644 --- a/x-pack/plugins/observability_ai_assistant/public/routes/conversations/conversation_view.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/routes/conversations/conversation_view.tsx @@ -134,14 +134,6 @@ export function ConversationView() { loading={conversations.loading || isUpdatingList} error={conversations.error} conversations={displayedConversations} - onClickConversation={(nextConversationId) => { - observabilityAIAssistantRouter.push('/conversations/{conversationId}', { - path: { - conversationId: nextConversationId, - }, - query: {}, - }); - }} onClickNewChat={() => { observabilityAIAssistantRouter.push('/conversations/new', { path: {}, diff --git a/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.test.ts b/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.test.ts index b857c4daeea03..ba7f5e2216bc8 100644 --- a/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.test.ts +++ b/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.test.ts @@ -156,6 +156,26 @@ describe('createChatService', () => { }); }); + it('propagates content errors', async () => { + respondWithChunks({ + chunks: [ + `data: {"error":{"message":"The server had an error while processing your request. Sorry about that!","type":"server_error","param":null,"code":null}}`, + ], + }); + + const response$ = chat(); + + const value = await lastValueFrom(response$); + + expect(value).toEqual({ + aborted: false, + error: expect.any(Error), + message: { + role: 'assistant', + }, + }); + }); + it('cancels a running http request when aborted', async () => { clientSpy.mockImplementationOnce((endpoint: string, options: HttpFetchOptions) => { options.signal?.addEventListener('abort', () => { diff --git a/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.ts b/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.ts index 3a0a4b0bbe9b1..7f04c25ac0b01 100644 --- a/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.ts +++ b/x-pack/plugins/observability_ai_assistant/public/service/create_chat_service.ts @@ -4,31 +4,33 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ +/* eslint-disable max-classes-per-file*/ +import { Validator, type Schema, type OutputUnit } from '@cfworker/json-schema'; +import { HttpResponse } from '@kbn/core/public'; +import { AbortError } from '@kbn/kibana-utils-plugin/common'; import { IncomingMessage } from 'http'; import { cloneDeep, pick } from 'lodash'; import { BehaviorSubject, - map, - filter as rxJsFilter, - scan, catchError, - of, concatMap, - shareReplay, - finalize, delay, + filter as rxJsFilter, + finalize, + map, + of, + scan, + shareReplay, tap, } from 'rxjs'; -import { HttpResponse } from '@kbn/core/public'; -import { AbortError } from '@kbn/kibana-utils-plugin/common'; import { - type RegisterContextDefinition, - type RegisterFunctionDefinition, - Message, - MessageRole, ContextRegistry, FunctionRegistry, + Message, + MessageRole, + type RegisterContextDefinition, + type RegisterFunctionDefinition, } from '../../common/types'; import { ObservabilityAIAssistantAPIClient } from '../api'; import type { @@ -45,6 +47,14 @@ class TokenLimitReachedError extends Error { } } +class ServerError extends Error {} + +export class FunctionArgsValidationError extends Error { + constructor(public readonly errors: OutputUnit[]) { + super('Function arguments are invalid'); + } +} + export async function createChatService({ signal: setupAbortSignal, registrations, @@ -57,11 +67,14 @@ export async function createChatService({ const contextRegistry: ContextRegistry = new Map(); const functionRegistry: FunctionRegistry = new Map(); + const validators = new Map(); + const registerContext: RegisterContextDefinition = (context) => { contextRegistry.set(context.name, context); }; const registerFunction: RegisterFunctionDefinition = (def, respond, render) => { + validators.set(def.name, new Validator(def.parameters as Schema, '2020-12', false)); functionRegistry.set(def.name, { options: def, respond, render }); }; @@ -90,6 +103,14 @@ export async function createChatService({ registrations.map((fn) => fn({ signal: setupAbortSignal, registerContext, registerFunction })) ); + function validate(name: string, parameters: unknown) { + const validator = validators.get(name)!; + const result = validator.validate(parameters); + if (!result.valid) { + throw new FunctionArgsValidationError(result.errors); + } + } + return { executeFunction: async (name, args, signal) => { const fn = functionRegistry.get(name); @@ -100,7 +121,7 @@ export async function createChatService({ const parsedArguments = args ? JSON.parse(args) : {}; - // validate + validate(name, parsedArguments); return await fn.respond({ arguments: parsedArguments }, signal); }, @@ -118,8 +139,6 @@ export async function createChatService({ data: JSON.parse(response.data ?? '{}'), }; - // validate - return fn.render?.({ response: parsedResponse, arguments: parsedArguments }); }, getContexts, @@ -127,7 +146,15 @@ export async function createChatService({ hasRenderFunction: (name: string) => { return !!getFunctions().find((fn) => fn.options.name === name)?.render; }, - chat({ connectorId, messages }: { connectorId: string; messages: Message[] }) { + chat({ + connectorId, + messages, + function: callFunctions = 'auto', + }: { + connectorId: string; + messages: Message[]; + function?: 'none' | 'auto'; + }) { const subject = new BehaviorSubject({ message: { role: MessageRole.Assistant, @@ -145,7 +172,10 @@ export async function createChatService({ body: { messages, connectorId, - functions: functions.map((fn) => pick(fn.options, 'name', 'description', 'parameters')), + functions: + callFunctions === 'none' + ? [] + : functions.map((fn) => pick(fn.options, 'name', 'description', 'parameters')), }, }, signal: controller.signal, @@ -171,10 +201,23 @@ export async function createChatService({ .pipe( map((line) => line.substring(6)), rxJsFilter((line) => !!line && line !== '[DONE]'), - map((line) => JSON.parse(line) as CreateChatCompletionResponseChunk), - rxJsFilter((line) => line.object === 'chat.completion.chunk'), - tap((choice) => { - if (choice.choices[0].finish_reason === 'length') { + map( + (line) => + JSON.parse(line) as + | CreateChatCompletionResponseChunk + | { error: { message: string } } + ), + tap((line) => { + if ('error' in line) { + throw new ServerError(line.error.message); + } + }), + rxJsFilter( + (line): line is CreateChatCompletionResponseChunk => + 'object' in line && line.object === 'chat.completion.chunk' + ), + tap((line) => { + if (line.choices[0].finish_reason === 'length') { throw new TokenLimitReachedError(); } }), @@ -217,6 +260,16 @@ export async function createChatService({ subject.complete(); }); }) + .catch(async (err) => { + if ('response' in err) { + const body = await (err.response as HttpResponse['response'])?.json(); + err.body = body; + if (body.message) { + err.message = body.message; + } + } + throw err; + }) .catch((err) => { subject.next({ ...subject.value, diff --git a/x-pack/plugins/observability_ai_assistant/public/service/create_service.ts b/x-pack/plugins/observability_ai_assistant/public/service/create_service.ts index 0978457ffe28c..5e7356250d515 100644 --- a/x-pack/plugins/observability_ai_assistant/public/service/create_service.ts +++ b/x-pack/plugins/observability_ai_assistant/public/service/create_service.ts @@ -6,19 +6,24 @@ */ import type { CoreStart } from '@kbn/core/public'; -import { SecurityPluginStart } from '@kbn/security-plugin/public'; +import type { LicensingPluginStart } from '@kbn/licensing-plugin/public'; +import type { SecurityPluginStart } from '@kbn/security-plugin/public'; +import type { SharePluginStart } from '@kbn/share-plugin/public'; import { createCallObservabilityAIAssistantAPI } from '../api'; import type { ChatRegistrationFunction, ObservabilityAIAssistantService } from '../types'; -import { createChatService } from './create_chat_service'; export function createService({ coreStart, - securityStart, enabled, + licenseStart, + securityStart, + shareStart, }: { coreStart: CoreStart; - securityStart: SecurityPluginStart; enabled: boolean; + licenseStart: LicensingPluginStart; + securityStart: SecurityPluginStart; + shareStart: SharePluginStart; }): ObservabilityAIAssistantService & { register: (fn: ChatRegistrationFunction) => void } { const client = createCallObservabilityAIAssistantAPI(coreStart); @@ -32,10 +37,13 @@ export function createService({ registrations.push(fn); }, start: async ({ signal }) => { - return await createChatService({ client, signal, registrations }); + const mod = await import('./create_chat_service'); + return await mod.createChatService({ client, signal, registrations }); }, callApi: client, getCurrentUser: () => securityStart.authc.getCurrentUser(), + getLicense: () => licenseStart.license$, + getLicenseManagementLocator: () => shareStart, }; } diff --git a/x-pack/plugins/observability_ai_assistant/public/types.ts b/x-pack/plugins/observability_ai_assistant/public/types.ts index 3d16d6fbcd7a8..6883a33309fcb 100644 --- a/x-pack/plugins/observability_ai_assistant/public/types.ts +++ b/x-pack/plugins/observability_ai_assistant/public/types.ts @@ -29,6 +29,8 @@ import type { DataViewsPublicPluginSetup, DataViewsPublicPluginStart, } from '@kbn/data-views-plugin/public'; +import type { LicensingPluginStart, ILicense } from '@kbn/licensing-plugin/public'; +import type { SharePluginStart } from '@kbn/share-plugin/public'; import type { ContextDefinition, FunctionDefinition, @@ -55,7 +57,11 @@ export interface PendingMessage { } export interface ObservabilityAIAssistantChatService { - chat: (options: { messages: Message[]; connectorId: string }) => Observable; + chat: (options: { + messages: Message[]; + connectorId: string; + function?: 'none' | 'auto'; + }) => Observable; getContexts: () => ContextDefinition[]; getFunctions: (options?: { contexts?: string[]; filter?: string }) => FunctionDefinition[]; hasRenderFunction: (name: string) => boolean; @@ -81,6 +87,8 @@ export interface ObservabilityAIAssistantService { isEnabled: () => boolean; callApi: ObservabilityAIAssistantAPIClient; getCurrentUser: () => Promise; + getLicense: () => Observable; + getLicenseManagementLocator: () => SharePluginStart; start: ({}: { signal: AbortSignal }) => Promise; } @@ -90,20 +98,22 @@ export interface ObservabilityAIAssistantPluginStart extends ObservabilityAIAssi export interface ObservabilityAIAssistantPluginSetup {} export interface ObservabilityAIAssistantPluginSetupDependencies { - triggersActionsUi: TriggersAndActionsUIPublicPluginSetup; - security: SecurityPluginSetup; + dataViews: DataViewsPublicPluginSetup; features: FeaturesPluginSetup; - observabilityShared: ObservabilitySharedPluginSetup; lens: LensPublicSetup; - dataViews: DataViewsPublicPluginSetup; + observabilityShared: ObservabilitySharedPluginSetup; + security: SecurityPluginSetup; + triggersActionsUi: TriggersAndActionsUIPublicPluginSetup; } export interface ObservabilityAIAssistantPluginStartDependencies { - security: SecurityPluginStart; - triggersActionsUi: TriggersAndActionsUIPublicPluginStart; - observabilityShared: ObservabilitySharedPluginStart; + dataViews: DataViewsPublicPluginStart; features: FeaturesPluginStart; lens: LensPublicStart; - dataViews: DataViewsPublicPluginStart; + licensing: LicensingPluginStart; + observabilityShared: ObservabilitySharedPluginStart; + security: SecurityPluginStart; + share: SharePluginStart; + triggersActionsUi: TriggersAndActionsUIPublicPluginStart; } export interface ConfigSchema {} diff --git a/x-pack/plugins/observability_ai_assistant/public/utils/get_timeline_items_from_conversation.tsx b/x-pack/plugins/observability_ai_assistant/public/utils/get_timeline_items_from_conversation.tsx index e8aad76b7abda..e535f6c1a059c 100644 --- a/x-pack/plugins/observability_ai_assistant/public/utils/get_timeline_items_from_conversation.tsx +++ b/x-pack/plugins/observability_ai_assistant/public/utils/get_timeline_items_from_conversation.tsx @@ -123,7 +123,8 @@ export function getTimelineItemsfromConversation({ parsedContent = message.message.content; } - const isError = typeof parsedContent === 'object' && 'error' in parsedContent; + const isError = + parsedContent && typeof parsedContent === 'object' && 'error' in parsedContent; title = !isError ? ( new Observable(), + getLicenseManagementLocator: () => + ({ + url: {}, + navigate: () => {}, + } as unknown as SharePluginStart), }; export function KibanaReactStorybookDecorator(Story: ComponentType) { diff --git a/x-pack/plugins/observability_ai_assistant/server/routes/chat/route.ts b/x-pack/plugins/observability_ai_assistant/server/routes/chat/route.ts index 0ed8c93a4fba8..2d44307147a52 100644 --- a/x-pack/plugins/observability_ai_assistant/server/routes/chat/route.ts +++ b/x-pack/plugins/observability_ai_assistant/server/routes/chat/route.ts @@ -50,8 +50,12 @@ const chatRoute = createObservabilityAIAssistantServerRoute({ return client.chat({ messages, connectorId, - functions, - functionCall: isStartOfConversation && isRecallFunctionAvailable ? 'recall' : undefined, + ...(functions.length + ? { + functions, + functionCall: isStartOfConversation && isRecallFunctionAvailable ? 'recall' : undefined, + } + : {}), }); }, }); diff --git a/x-pack/plugins/observability_ai_assistant/server/routes/functions/route.ts b/x-pack/plugins/observability_ai_assistant/server/routes/functions/route.ts index f88d6c56efe5b..8c732ee00c462 100644 --- a/x-pack/plugins/observability_ai_assistant/server/routes/functions/route.ts +++ b/x-pack/plugins/observability_ai_assistant/server/routes/functions/route.ts @@ -11,6 +11,10 @@ import { nonEmptyStringRt, toBooleanRt } from '@kbn/io-ts-utils'; import * as t from 'io-ts'; import { omit } from 'lodash'; import { ParsedTechnicalFields } from '@kbn/rule-registry-plugin/common'; +import { + ALERT_STATUS, + ALERT_STATUS_ACTIVE, +} from '@kbn/rule-registry-plugin/common/technical_rule_data_field_names'; import type { KnowledgeBaseEntry } from '../../../common/types'; import { createObservabilityAIAssistantServerRoute } from '../create_observability_ai_assistant_server_route'; @@ -79,6 +83,7 @@ const functionAlertsRoute = createObservabilityAIAssistantServerRoute({ }), t.partial({ filter: t.string, + includeRecovered: toBooleanRt, }), ]), }), @@ -95,6 +100,7 @@ const functionAlertsRoute = createObservabilityAIAssistantServerRoute({ start: startAsDatemath, end: endAsDatemath, filter, + includeRecovered, } = resources.params.body; const racContext = await resources.context.rac; @@ -120,6 +126,15 @@ const functionAlertsRoute = createObservabilityAIAssistantServerRoute({ }, }, ...kqlQuery, + ...(!includeRecovered + ? [ + { + term: { + [ALERT_STATUS]: ALERT_STATUS_ACTIVE, + }, + }, + ] + : []), ], }, }, diff --git a/x-pack/plugins/observability_ai_assistant/tsconfig.json b/x-pack/plugins/observability_ai_assistant/tsconfig.json index ddbd38c21bc5d..afdc9a4a89243 100644 --- a/x-pack/plugins/observability_ai_assistant/tsconfig.json +++ b/x-pack/plugins/observability_ai_assistant/tsconfig.json @@ -44,7 +44,9 @@ "@kbn/data-views-plugin", "@kbn/task-manager-plugin", "@kbn/es-query", - "@kbn/rule-registry-plugin" + "@kbn/rule-registry-plugin", + "@kbn/licensing-plugin", + "@kbn/share-plugin" ], "exclude": ["target/**/*"] } diff --git a/x-pack/plugins/profiling/public/components/profiling_header_action_menu.tsx b/x-pack/plugins/profiling/public/components/profiling_header_action_menu.tsx index 3a6945f7f2d7f..eb50e1b3ea941 100644 --- a/x-pack/plugins/profiling/public/components/profiling_header_action_menu.tsx +++ b/x-pack/plugins/profiling/public/components/profiling_header_action_menu.tsx @@ -4,7 +4,14 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ -import { EuiFlexGroup, EuiFlexItem, EuiHeaderLink, EuiHeaderLinks, EuiIcon } from '@elastic/eui'; +import { + EuiFlexGroup, + EuiFlexItem, + EuiHeaderLink, + EuiHeaderLinks, + EuiIcon, + EuiToolTip, +} from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import qs from 'query-string'; import React from 'react'; @@ -20,32 +27,38 @@ export function ProfilingHeaderActionMenu() { return ( - { - const query = qs.parse(window.location.search); - const storageExplorerURL = url.format({ - pathname: '/storage-explorer', - query: { - kuery: query.kuery, - rangeFrom: query.rangeFrom, - rangeTo: query.rangeTo, - }, - }); - history.push(storageExplorerURL); - }} + - - - - - - {i18n.translate('xpack.profiling.headerActionMenu.storageExplorer', { - defaultMessage: 'Storage Explorer', - })} - - - + { + const query = qs.parse(window.location.search); + const storageExplorerURL = url.format({ + pathname: '/storage-explorer', + query: { + kuery: query.kuery, + rangeFrom: query.rangeFrom || 'now-15m', + rangeTo: query.rangeTo || 'now', + }, + }); + history.push(storageExplorerURL); + }} + > + + + + + + {i18n.translate('xpack.profiling.headerActionMenu.storageExplorer', { + defaultMessage: 'Storage Explorer', + })} + + + + {i18n.translate('xpack.profiling.headerActionMenu.addData', { - defaultMessage: 'Add data', + defaultMessage: 'Add Data', })} diff --git a/x-pack/plugins/profiling/public/views/add_data_view/index.tsx b/x-pack/plugins/profiling/public/views/add_data_view/index.tsx index 31332c20e1262..6025e6685c19d 100644 --- a/x-pack/plugins/profiling/public/views/add_data_view/index.tsx +++ b/x-pack/plugins/profiling/public/views/add_data_view/index.tsx @@ -330,7 +330,7 @@ EOF`} {i18n.translate( 'xpack.profiling.tabs.elasticAgentIntegration.step1.collectionAgentUrl', - { defaultMessage: 'Universal Profiling Collector url:' } + { defaultMessage: 'Universal Profiling Collector URL:' } )} @@ -431,7 +431,7 @@ EOF`} link: ( {i18n.translate('xpack.profiling.tabs.symbols.step3.doc-ref.link', { defaultMessage: 'the corresponding documentation page', @@ -487,7 +487,7 @@ EOF`} title={ 5.19, versionTo: 6.4, @@ -521,6 +521,16 @@ EOF`} })} ), + advancedLink: ( + + {i18n.translate('xpack.profiling.tabs.debWarning.advancedLink', { + defaultMessage: 'Advanced configuration', + })} + + ), }} /> } diff --git a/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.test.ts b/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.test.ts index 463f70479dd57..b4a3a6aad4640 100644 --- a/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.test.ts +++ b/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.test.ts @@ -8,6 +8,7 @@ import { of } from 'rxjs'; import { merge } from 'lodash'; import { loggerMock } from '@kbn/logging-mocks'; import { AlertConsumers } from '@kbn/rule-data-utils'; +import { ALERT_EVENTS_FIELDS } from '@kbn/alerts-as-data-utils'; import { ruleRegistrySearchStrategyProvider, EMPTY_RESPONSE } from './search_strategy'; import { dataPluginMock } from '@kbn/data-plugin/server/mocks'; import { SearchStrategyDependencies } from '@kbn/data-plugin/server'; @@ -313,18 +314,31 @@ describe('ruleRegistrySearchStrategyProvider()', () => { await strategy .search(request, options, deps as unknown as SearchStrategyDependencies) .toPromise(); - expect(searchStrategySearch).toHaveBeenCalledWith( - { - params: { + const arg0 = searchStrategySearch.mock.calls[0][0]; + expect(arg0.params.body.fields.length).toEqual( + // +2 because of fields.push({ field: 'kibana.alert.*', include_unmapped: false }); and + // fields.push({ field: 'signal.*', include_unmapped: false }); + ALERT_EVENTS_FIELDS.length + 2 + ); + expect.arrayContaining([ + expect.objectContaining({ + x: 2, + y: 3, + }), + ]); + expect(arg0).toEqual( + expect.objectContaining({ + id: undefined, + params: expect.objectContaining({ allow_no_indices: true, - body: { + body: expect.objectContaining({ _source: false, - fields: [ - { - field: '*', + fields: expect.arrayContaining([ + expect.objectContaining({ + field: '@timestamp', include_unmapped: true, - }, - ], + }), + ]), from: 0, query: { ids: { @@ -333,13 +347,11 @@ describe('ruleRegistrySearchStrategyProvider()', () => { }, size: 1000, sort: [], - }, + }), ignore_unavailable: true, index: ['security-siem'], - }, - }, - {}, - { request: {} } + }), + }) ); }); @@ -349,7 +361,7 @@ describe('ruleRegistrySearchStrategyProvider()', () => { query: { ids: { values: ['test-id'] }, }, - fields: [{ field: '@timestamp', include_unmapped: true }], + fields: [{ field: 'my-super-field', include_unmapped: true }], }; const options = {}; const deps = { @@ -363,13 +375,26 @@ describe('ruleRegistrySearchStrategyProvider()', () => { await strategy .search(request, options, deps as unknown as SearchStrategyDependencies) .toPromise(); - expect(searchStrategySearch).toHaveBeenCalledWith( - { - params: { + + const arg0 = searchStrategySearch.mock.calls[0][0]; + expect(arg0.params.body.fields.length).toEqual( + // +2 because of fields.push({ field: 'kibana.alert.*', include_unmapped: false }); and + // fields.push({ field: 'signal.*', include_unmapped: false }); + my-super-field + ALERT_EVENTS_FIELDS.length + 3 + ); + expect(arg0).toEqual( + expect.objectContaining({ + id: undefined, + params: expect.objectContaining({ allow_no_indices: true, - body: { + body: expect.objectContaining({ _source: false, - fields: [{ field: '@timestamp', include_unmapped: true }], + fields: expect.arrayContaining([ + expect.objectContaining({ + field: 'my-super-field', + include_unmapped: true, + }), + ]), from: 0, query: { ids: { @@ -378,13 +403,11 @@ describe('ruleRegistrySearchStrategyProvider()', () => { }, size: 1000, sort: [], - }, + }), ignore_unavailable: true, index: ['security-siem'], - }, - }, - {}, - { request: {} } + }), + }) ); }); }); diff --git a/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.ts b/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.ts index 3793fa83b3679..76c1168d50d0b 100644 --- a/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.ts +++ b/x-pack/plugins/rule_registry/server/search_strategy/search_strategy.ts @@ -8,7 +8,6 @@ import { map, mergeMap, catchError } from 'rxjs/operators'; import type * as estypes from '@elastic/elasticsearch/lib/api/typesWithBodyKey'; import { Logger } from '@kbn/core/server'; import { from, of } from 'rxjs'; -import { isEmpty } from 'lodash'; import { isValidFeatureId, AlertConsumers } from '@kbn/rule-data-utils'; import { ENHANCED_ES_SEARCH_STRATEGY } from '@kbn/data-plugin/common'; import { ISearchStrategy, PluginStart } from '@kbn/data-plugin/server'; @@ -19,6 +18,7 @@ import { } from '@kbn/alerting-plugin/server'; import { SecurityPluginSetup } from '@kbn/security-plugin/server'; import { SpacesPluginStart } from '@kbn/spaces-plugin/server'; +import { buildAlertFieldsRequest } from '@kbn/alerts-as-data-utils'; import { RuleRegistrySearchRequest, RuleRegistrySearchResponse, @@ -31,8 +31,6 @@ export const EMPTY_RESPONSE: RuleRegistrySearchResponse = { rawResponse: {} as RuleRegistrySearchResponse['rawResponse'], }; -const EMPTY_FIELDS = [{ field: '*', include_unmapped: true }]; - export const RULE_SEARCH_STRATEGY_NAME = 'privateRuleRegistryAlertsSearchStrategy'; export const ruleRegistrySearchStrategyProvider = ( @@ -124,6 +122,17 @@ export const ruleRegistrySearchStrategyProvider = ( }, }), }; + let fields = request?.fields ?? []; + fields.push({ field: 'kibana.alert.*', include_unmapped: false }); + + if (siemRequest) { + fields.push({ field: 'signal.*', include_unmapped: false }); + fields = fields.concat(buildAlertFieldsRequest([], false)); + } else { + // only for o11y solutions + fields.push({ field: '*', include_unmapped: true }); + } + const size = request.pagination ? request.pagination.pageSize : MAX_ALERT_SEARCH_SIZE; params = { allow_no_indices: true, @@ -131,8 +140,7 @@ export const ruleRegistrySearchStrategyProvider = ( ignore_unavailable: true, body: { _source: false, - // TODO the fields need to come from the request - fields: !isEmpty(request?.fields) ? request?.fields : EMPTY_FIELDS, + fields, sort, size, from: request.pagination ? request.pagination.pageIndex * size : 0, diff --git a/x-pack/plugins/security/server/authorization/app_authorization.test.ts b/x-pack/plugins/security/server/authorization/app_authorization.test.ts index d745cf2f60769..b64226e8ecd06 100644 --- a/x-pack/plugins/security/server/authorization/app_authorization.test.ts +++ b/x-pack/plugins/security/server/authorization/app_authorization.test.ts @@ -11,17 +11,22 @@ import { httpServiceMock, loggingSystemMock, } from '@kbn/core/server/mocks'; -import type { PluginSetupContract as FeaturesSetupContract } from '@kbn/features-plugin/server'; +import type { + PluginSetupContract as FeaturesSetupContract, + KibanaFeature, +} from '@kbn/features-plugin/server'; import { featuresPluginMock } from '@kbn/features-plugin/server/mocks'; import { initAppAuthorization } from './app_authorization'; import { authorizationMock } from './index.mock'; -const createFeaturesSetupContractMock = (): FeaturesSetupContract => { +const createFeaturesSetupContractMock = ( + features: KibanaFeature[] = [ + { id: 'foo', name: 'Foo', app: ['foo'], privileges: {} } as unknown as KibanaFeature, + ] +): FeaturesSetupContract => { const mock = featuresPluginMock.createSetup(); - mock.getKibanaFeatures.mockReturnValue([ - { id: 'foo', name: 'Foo', app: ['foo'], privileges: {} } as any, - ]); + mock.getKibanaFeatures.mockReturnValue(features); return mock; }; @@ -97,6 +102,33 @@ describe('initAppAuthorization', () => { expect(mockAuthz.mode.useRbacForRequest).toHaveBeenCalledWith(mockRequest); }); + test(`unprotected route that starts with "/app/", from feature that opted out of RBAC, and "mode.useRbacForRequest()" returns true continues`, async () => { + const mockHTTPSetup = coreMock.createSetup().http; + const mockAuthz = authorizationMock.create(); + initAppAuthorization( + mockHTTPSetup, + mockAuthz, + loggingSystemMock.create().get(), + createFeaturesSetupContractMock([ + { id: 'foo', name: 'Foo', app: ['foo'], privileges: null } as unknown as KibanaFeature, + ]) + ); + + const [[postAuthHandler]] = mockHTTPSetup.registerOnPostAuth.mock.calls; + + const mockRequest = httpServerMock.createKibanaRequest({ method: 'get', path: '/app/foo' }); + const mockResponse = httpServerMock.createResponseFactory(); + const mockPostAuthToolkit = httpServiceMock.createOnPostAuthToolkit(); + + mockAuthz.mode.useRbacForRequest.mockReturnValue(true); + + await postAuthHandler(mockRequest, mockResponse, mockPostAuthToolkit); + + expect(mockResponse.notFound).not.toHaveBeenCalled(); + expect(mockPostAuthToolkit.next).toHaveBeenCalledTimes(1); + expect(mockAuthz.mode.useRbacForRequest).toHaveBeenCalledWith(mockRequest); + }); + test(`protected route that starts with "/app/", "mode.useRbacForRequest()" returns true and user is authorized continues`, async () => { const mockHTTPSetup = coreMock.createSetup().http; const mockAuthz = authorizationMock.create({ version: '1.0.0-zeta1' }); diff --git a/x-pack/plugins/security/server/authorization/app_authorization.ts b/x-pack/plugins/security/server/authorization/app_authorization.ts index 0d6d1ef01d381..08630efc62241 100644 --- a/x-pack/plugins/security/server/authorization/app_authorization.ts +++ b/x-pack/plugins/security/server/authorization/app_authorization.ts @@ -20,10 +20,11 @@ class ProtectedApplications { // we wait until we actually need to consume these before getting them if (this.applications == null) { this.applications = new Set( - this.featuresService - .getKibanaFeatures() - .map((feature) => feature.app) - .flat() + this.featuresService.getKibanaFeatures().flatMap((feature) => { + // If the feature has explicitly opted out of our RBAC by setting the `privileges` field to `null`, we + // shouldn't check permissions when the app defined by such feature is accessed. + return feature.privileges === null ? [] : feature.app; + }) ); } diff --git a/x-pack/plugins/security_solution/public/common/components/matrix_histogram/index.tsx b/x-pack/plugins/security_solution/public/common/components/matrix_histogram/index.tsx index c2d1e6dc59ff8..e14a0c7f4c224 100644 --- a/x-pack/plugins/security_solution/public/common/components/matrix_histogram/index.tsx +++ b/x-pack/plugins/security_solution/public/common/components/matrix_histogram/index.tsx @@ -12,6 +12,7 @@ import styled from 'styled-components'; import { EuiFlexGroup, EuiFlexItem, EuiProgress, EuiSelect, EuiSpacer } from '@elastic/eui'; import { useDispatch } from 'react-redux'; import type { AggregationsTermsAggregateBase } from '@elastic/elasticsearch/lib/api/types'; +import { isString } from 'lodash/fp'; import * as i18n from './translations'; import { HeaderSection } from '../header_section'; import { Panel } from '../panel'; @@ -66,6 +67,7 @@ export type MatrixHistogramComponentProps = MatrixHistogramProps & scopeId?: string; title: string | GetTitle; hideQueryToggle?: boolean; + applyGlobalQueriesAndFilters?: boolean; }; const DEFAULT_PANEL_HEIGHT = 300; @@ -117,6 +119,7 @@ export const MatrixHistogramComponent: React.FC = yTickFormatter, skip, hideQueryToggle = false, + applyGlobalQueriesAndFilters = true, }) => { const visualizationId = `${id}-embeddable`; const dispatch = useDispatch(); @@ -258,9 +261,20 @@ export const MatrixHistogramComponent: React.FC = const timerange = useMemo(() => ({ from: startDate, to: endDate }), [startDate, endDate]); const extraVisualizationOptions = useMemo( - () => ({ dnsIsPtrIncluded: isPtrIncluded ?? false }), - [isPtrIncluded] + () => ({ + dnsIsPtrIncluded: isPtrIncluded ?? false, + filters: filterQuery + ? [ + { + query: isString(filterQuery) ? JSON.parse(filterQuery) : filterQuery, + meta: {}, + }, + ] + : undefined, + }), + [isPtrIncluded, filterQuery] ); + if (hideHistogram) { return null; } @@ -329,6 +343,7 @@ export const MatrixHistogramComponent: React.FC = {toggleStatus ? ( isChartEmbeddablesEnabled ? ( = ({ {view === 'raw' || view === 'all' ? ( { return { title: 'Events', @@ -55,7 +56,7 @@ export const getEventsHistogramLensAttributes: GetLensAttributes = ( query: '', language: 'kuery', }, - filters: [], + filters: extraOptions.filters ?? [], datasourceStates: { formBased: { layers: { diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_install_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_install_mutation.ts index 13e44682d95e8..6e46f25015b2a 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_install_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_install_mutation.ts @@ -11,10 +11,10 @@ import { PERFORM_RULE_INSTALLATION_URL } from '../../../../../../common/api/dete import { useInvalidateFetchPrebuiltRulesStatusQuery } from './use_fetch_prebuilt_rules_status_query'; import { useInvalidateFindRulesQuery } from '../use_find_rules_query'; import { useInvalidateFetchRuleManagementFiltersQuery } from '../use_fetch_rule_management_filters_query'; -import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings'; +import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings_query'; import { useInvalidateFetchPrebuiltRulesInstallReviewQuery } from './use_fetch_prebuilt_rules_install_review_query'; import { performInstallAllRules } from '../../api'; -import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview_query'; export const PERFORM_ALL_RULES_INSTALLATION_KEY = [ 'POST', diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_upgrade_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_upgrade_mutation.ts index 4a4bee4779f7e..7e5385bb0c754 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_upgrade_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_all_rules_upgrade_mutation.ts @@ -10,11 +10,11 @@ import type { PerformRuleUpgradeResponseBody } from '../../../../../../common/ap import { PERFORM_RULE_UPGRADE_URL } from '../../../../../../common/api/detection_engine/prebuilt_rules/urls'; import { useInvalidateFindRulesQuery } from '../use_find_rules_query'; import { useInvalidateFetchRuleManagementFiltersQuery } from '../use_fetch_rule_management_filters_query'; -import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings'; +import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings_query'; import { useInvalidateFetchPrebuiltRulesUpgradeReviewQuery } from './use_fetch_prebuilt_rules_upgrade_review_query'; import { useInvalidateFetchPrebuiltRulesStatusQuery } from './use_fetch_prebuilt_rules_status_query'; import { performUpgradeAllRules } from '../../api'; -import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview_query'; export const PERFORM_ALL_RULES_UPGRADE_KEY = ['POST', 'ALL_RULES', PERFORM_RULE_UPGRADE_URL]; diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_install_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_install_mutation.ts index 9b12d4901e0fb..7f7fab65b0d95 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_install_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_install_mutation.ts @@ -14,10 +14,10 @@ import { PERFORM_RULE_INSTALLATION_URL } from '../../../../../../common/api/dete import { useInvalidateFetchPrebuiltRulesStatusQuery } from './use_fetch_prebuilt_rules_status_query'; import { useInvalidateFindRulesQuery } from '../use_find_rules_query'; import { useInvalidateFetchRuleManagementFiltersQuery } from '../use_fetch_rule_management_filters_query'; -import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings'; +import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings_query'; import { useInvalidateFetchPrebuiltRulesInstallReviewQuery } from './use_fetch_prebuilt_rules_install_review_query'; import { performInstallSpecificRules } from '../../api'; -import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview_query'; export const PERFORM_SPECIFIC_RULES_INSTALLATION_KEY = [ 'POST', diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_upgrade_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_upgrade_mutation.ts index 0c67b349302af..c10b92ea914f1 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_upgrade_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/prebuilt_rules/use_perform_specific_rules_upgrade_mutation.ts @@ -14,10 +14,10 @@ import { PERFORM_RULE_UPGRADE_URL } from '../../../../../../common/api/detection import { useInvalidateFetchPrebuiltRulesStatusQuery } from './use_fetch_prebuilt_rules_status_query'; import { useInvalidateFindRulesQuery } from '../use_find_rules_query'; import { useInvalidateFetchRuleManagementFiltersQuery } from '../use_fetch_rule_management_filters_query'; -import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings'; +import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../use_fetch_rules_snooze_settings_query'; import { performUpgradeSpecificRules } from '../../api'; import { useInvalidateFetchPrebuiltRulesUpgradeReviewQuery } from './use_fetch_prebuilt_rules_upgrade_review_query'; -import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from '../use_fetch_coverage_overview_query'; export const PERFORM_SPECIFIC_RULES_UPGRADE_KEY = [ 'POST', diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_bulk_action_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_bulk_action_mutation.ts index bade054295965..1a52bbb0a8194 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_bulk_action_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_bulk_action_mutation.ts @@ -17,7 +17,7 @@ import { useInvalidateFetchRuleManagementFiltersQuery } from './use_fetch_rule_m import { useInvalidateFetchPrebuiltRulesStatusQuery } from './prebuilt_rules/use_fetch_prebuilt_rules_status_query'; import { useInvalidateFetchPrebuiltRulesUpgradeReviewQuery } from './prebuilt_rules/use_fetch_prebuilt_rules_upgrade_review_query'; import { useInvalidateFetchPrebuiltRulesInstallReviewQuery } from './prebuilt_rules/use_fetch_prebuilt_rules_install_review_query'; -import { useInvalidateFetchCoverageOverviewQuery } from './use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from './use_fetch_coverage_overview_query'; export const BULK_ACTION_MUTATION_KEY = ['POST', DETECTION_ENGINE_RULES_BULK_ACTION]; diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_create_rule_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_create_rule_mutation.ts index 199cf558137cf..e633e181432ef 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_create_rule_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_create_rule_mutation.ts @@ -15,7 +15,7 @@ import { transformOutput } from '../../../../detections/containers/detection_eng import { createRule } from '../api'; import { useInvalidateFetchRuleManagementFiltersQuery } from './use_fetch_rule_management_filters_query'; import { useInvalidateFindRulesQuery } from './use_find_rules_query'; -import { useInvalidateFetchCoverageOverviewQuery } from './use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from './use_fetch_coverage_overview_query'; export const CREATE_RULE_MUTATION_KEY = ['POST', DETECTION_ENGINE_RULES_URL]; diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connectors.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connector_types_query.ts similarity index 62% rename from x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connectors.ts rename to x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connector_types_query.ts index 500a346fa1406..78922d143fd5f 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connectors.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connector_types_query.ts @@ -8,27 +8,10 @@ import { useQuery } from '@tanstack/react-query'; import { BASE_ACTION_API_PATH } from '@kbn/actions-plugin/common'; import { useAppToasts } from '../../../../common/hooks/use_app_toasts'; -import { fetchConnectors, fetchConnectorTypes } from '../api'; +import { fetchConnectorTypes } from '../api'; import * as i18n from './translations'; -export const useFetchConnectors = () => { - const { addError } = useAppToasts(); - - return useQuery( - ['GET', BASE_ACTION_API_PATH, 'connectors'], - ({ signal }) => fetchConnectors(signal), - { - onError: (error) => { - addError(error, { - title: i18n.CONNECTORS_FETCH_ERROR, - toastMessage: i18n.ACTIONS_FETCH_ERROR_DESCRIPTION, - }); - }, - } - ); -}; - -export const useFetchConnectorTypes = () => { +export const useFetchConnectorTypesQuery = () => { const { addError } = useAppToasts(); return useQuery( diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connectors_query.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connectors_query.ts new file mode 100644 index 0000000000000..32df9d73b7cd8 --- /dev/null +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_connectors_query.ts @@ -0,0 +1,29 @@ +/* + * 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 { useQuery } from '@tanstack/react-query'; +import { BASE_ACTION_API_PATH } from '@kbn/actions-plugin/common'; +import { useAppToasts } from '../../../../common/hooks/use_app_toasts'; +import { fetchConnectors } from '../api'; +import * as i18n from './translations'; + +export const useFetchConnectorsQuery = () => { + const { addError } = useAppToasts(); + + return useQuery( + ['GET', BASE_ACTION_API_PATH, 'connectors'], + ({ signal }) => fetchConnectors(signal), + { + onError: (error) => { + addError(error, { + title: i18n.CONNECTORS_FETCH_ERROR, + toastMessage: i18n.ACTIONS_FETCH_ERROR_DESCRIPTION, + }); + }, + } + ); +}; diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_coverage_overview.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_coverage_overview_query.ts similarity index 100% rename from x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_coverage_overview.ts rename to x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_coverage_overview_query.ts diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_rules_snooze_settings.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_rules_snooze_settings_query.ts similarity index 97% rename from x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_rules_snooze_settings.ts rename to x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_rules_snooze_settings_query.ts index 8963baab0362b..8d2ca14d79f9b 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_rules_snooze_settings.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_fetch_rules_snooze_settings_query.ts @@ -23,7 +23,7 @@ const FETCH_RULE_SNOOZE_SETTINGS_QUERY_KEY = ['GET', INTERNAL_ALERTING_API_FIND_ * @param queryOptions - react-query options * @returns useQuery result */ -export const useFetchRulesSnoozeSettings = ( +export const useFetchRulesSnoozeSettingsQuery = ( ids: string[], queryOptions?: UseQueryOptions ) => { diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_update_rule_mutation.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_update_rule_mutation.ts index 932c50ff2a46f..8f3bd6aef95c0 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_update_rule_mutation.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/api/hooks/use_update_rule_mutation.ts @@ -13,7 +13,7 @@ import { updateRule } from '../api'; import { useInvalidateFindRulesQuery } from './use_find_rules_query'; import { useUpdateRuleByIdCache } from './use_fetch_rule_by_id_query'; import { useInvalidateFetchRuleManagementFiltersQuery } from './use_fetch_rule_management_filters_query'; -import { useInvalidateFetchCoverageOverviewQuery } from './use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from './use_fetch_coverage_overview_query'; import type { Rule } from '../../logic/types'; export const UPDATE_RULE_MUTATION_KEY = ['PUT', DETECTION_ENGINE_RULES_URL]; diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/rule_snooze_badge.tsx b/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/rule_snooze_badge.tsx index 9e45f70688a98..2f48e2ed6f356 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/rule_snooze_badge.tsx +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/rule_snooze_badge.tsx @@ -10,7 +10,7 @@ import type { RuleObjectId } from '../../../../../common/api/detection_engine/mo import { useUserData } from '../../../../detections/components/user_info'; import { hasUserCRUDPermission } from '../../../../common/utils/privileges'; import { useKibana } from '../../../../common/lib/kibana'; -import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../../api/hooks/use_fetch_rules_snooze_settings'; +import { useInvalidateFetchRulesSnoozeSettingsQuery } from '../../api/hooks/use_fetch_rules_snooze_settings_query'; import { useRuleSnoozeSettings } from './use_rule_snooze_settings'; interface RuleSnoozeBadgeProps { diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/use_rule_snooze_settings.ts b/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/use_rule_snooze_settings.ts index e31851a6a24b0..1fe40fd435c12 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/use_rule_snooze_settings.ts +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management/components/rule_snooze_badge/use_rule_snooze_settings.ts @@ -6,7 +6,7 @@ */ import type { RuleSnoozeSettings } from '@kbn/triggers-actions-ui-plugin/public/types'; -import { useFetchRulesSnoozeSettings } from '../../api/hooks/use_fetch_rules_snooze_settings'; +import { useFetchRulesSnoozeSettingsQuery } from '../../api/hooks/use_fetch_rules_snooze_settings_query'; import { useRulesTableContextOptional } from '../../../rule_management_ui/components/rules_table/rules_table/rules_table_context'; import * as i18n from './translations'; @@ -23,7 +23,7 @@ export function useRuleSnoozeSettings(id: string): UseRuleSnoozeSettingsResult { data: rulesSnoozeSettings, isFetching: isSingleSnoozeSettingsFetching, isError: isSingleSnoozeSettingsError, - } = useFetchRulesSnoozeSettings([id], { + } = useFetchRulesSnoozeSettingsQuery([id], { enabled: !rulesTableSnoozeSettings?.data[id] && !rulesTableSnoozeSettings?.isFetching, }); const snoozeSettings = rulesTableSnoozeSettings?.data[id] ?? rulesSnoozeSettings?.[id]; diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.test.tsx b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.test.tsx index 64d82b50c9e84..0a9928200116c 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.test.tsx +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.test.tsx @@ -11,7 +11,7 @@ import { renderHook } from '@testing-library/react-hooks'; import { useUiSetting$ } from '../../../../../common/lib/kibana'; import type { Rule, RulesSnoozeSettingsMap } from '../../../../rule_management/logic'; import { useFindRules } from '../../../../rule_management/logic/use_find_rules'; -import { useFetchRulesSnoozeSettings } from '../../../../rule_management/api/hooks/use_fetch_rules_snooze_settings'; +import { useFetchRulesSnoozeSettingsQuery } from '../../../../rule_management/api/hooks/use_fetch_rules_snooze_settings_query'; import type { RulesTableState } from './rules_table_context'; import { RulesTableContextProvider, useRulesTableContext } from './rules_table_context'; import { @@ -26,7 +26,7 @@ import { useRulesTableSavedState } from './use_rules_table_saved_state'; jest.mock('../../../../../common/lib/kibana'); jest.mock('../../../../rule_management/logic/use_find_rules'); jest.mock('../../../../rule_management/logic/prebuilt_rules/use_prebuilt_rules_install_review'); -jest.mock('../../../../rule_management/api/hooks/use_fetch_rules_snooze_settings'); +jest.mock('../../../../rule_management/api/hooks/use_fetch_rules_snooze_settings_query'); jest.mock('./use_rules_table_saved_state'); function renderUseRulesTableContext({ @@ -48,7 +48,7 @@ function renderUseRulesTableContext({ isRefetching: false, isError: rules instanceof Error, }); - (useFetchRulesSnoozeSettings as jest.Mock).mockReturnValue({ + (useFetchRulesSnoozeSettingsQuery as jest.Mock).mockReturnValue({ data: rulesSnoozeSettings instanceof Error ? undefined : rulesSnoozeSettings, isError: rulesSnoozeSettings instanceof Error, }); diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.tsx b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.tsx index 970dcd70bfc25..791a4b9872fb5 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.tsx +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/components/rules_table/rules_table/rules_table_context.tsx @@ -15,7 +15,7 @@ import React, { useRef, useState, } from 'react'; -import { useFetchRulesSnoozeSettings } from '../../../../rule_management/api/hooks/use_fetch_rules_snooze_settings'; +import { useFetchRulesSnoozeSettingsQuery } from '../../../../rule_management/api/hooks/use_fetch_rules_snooze_settings_query'; import { DEFAULT_RULES_TABLE_REFRESH_SETTING } from '../../../../../../common/constants'; import { invariant } from '../../../../../../common/utils/invariant'; import { URL_PARAM_KEY } from '../../../../../common/hooks/use_url_state'; @@ -307,7 +307,7 @@ export const RulesTableContextProvider = ({ children }: RulesTableContextProvide isFetching: isSnoozeSettingsFetching, isError: isSnoozeSettingsFetchError, refetch: refetchSnoozeSettings, - } = useFetchRulesSnoozeSettings( + } = useFetchRulesSnoozeSettingsQuery( rules.map((x) => x.id), { enabled: rules.length > 0 } ); diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard.test.tsx b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard.test.tsx index a761153c1e8d0..d072b1729688a 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard.test.tsx +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard.test.tsx @@ -7,7 +7,7 @@ import { render } from '@testing-library/react'; import React from 'react'; -import { useFetchCoverageOverviewQuery } from '../../../rule_management/api/hooks/use_fetch_coverage_overview'; +import { useFetchCoverageOverviewQuery } from '../../../rule_management/api/hooks/use_fetch_coverage_overview_query'; import { getMockCoverageOverviewDashboard } from '../../../rule_management/model/coverage_overview/__mocks__'; import { TestProviders } from '../../../../common/mock'; @@ -15,7 +15,7 @@ import { CoverageOverviewDashboard } from './coverage_overview_dashboard'; import { CoverageOverviewDashboardContextProvider } from './coverage_overview_dashboard_context'; jest.mock('../../../../common/utils/route/spy_routes', () => ({ SpyRoute: () => null })); -jest.mock('../../../rule_management/api/hooks/use_fetch_coverage_overview'); +jest.mock('../../../rule_management/api/hooks/use_fetch_coverage_overview_query'); (useFetchCoverageOverviewQuery as jest.Mock).mockReturnValue({ data: getMockCoverageOverviewDashboard(), diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard_context.tsx b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard_context.tsx index e76075535b193..3a2424664f8ab 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard_context.tsx +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/coverage_overview/coverage_overview_dashboard_context.tsx @@ -27,7 +27,7 @@ import { SET_RULE_SEARCH_FILTER, createCoverageOverviewDashboardReducer, } from './coverage_overview_dashboard_reducer'; -import { useFetchCoverageOverviewQuery } from '../../../rule_management/api/hooks/use_fetch_coverage_overview'; +import { useFetchCoverageOverviewQuery } from '../../../rule_management/api/hooks/use_fetch_coverage_overview_query'; import { useExecuteBulkAction } from '../../../rule_management/logic/bulk_actions/use_execute_bulk_action'; export interface CoverageOverviewDashboardActions { diff --git a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/rule_management/index.tsx b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/rule_management/index.tsx index b27a322331fc7..d92ac003cfba9 100644 --- a/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/rule_management/index.tsx +++ b/x-pack/plugins/security_solution/public/detection_engine/rule_management_ui/pages/rule_management/index.tsx @@ -32,7 +32,7 @@ import { useInvalidateFindRulesQuery } from '../../../rule_management/api/hooks/ import { importRules } from '../../../rule_management/logic'; import { AllRules } from '../../components/rules_table'; import { RulesTableContextProvider } from '../../components/rules_table/rules_table/rules_table_context'; -import { useInvalidateFetchCoverageOverviewQuery } from '../../../rule_management/api/hooks/use_fetch_coverage_overview'; +import { useInvalidateFetchCoverageOverviewQuery } from '../../../rule_management/api/hooks/use_fetch_coverage_overview_query'; import { HeaderPage } from '../../../../common/components/header_page'; const RulesPageComponent: React.FC = () => { diff --git a/x-pack/plugins/security_solution/public/detections/components/rules/step_rule_actions/index.tsx b/x-pack/plugins/security_solution/public/detections/components/rules/step_rule_actions/index.tsx index de37209fe14c3..31b0529fee4c3 100644 --- a/x-pack/plugins/security_solution/public/detections/components/rules/step_rule_actions/index.tsx +++ b/x-pack/plugins/security_solution/public/detections/components/rules/step_rule_actions/index.tsx @@ -26,10 +26,8 @@ import type { FormHook } from '../../../../shared_imports'; import { StepContentWrapper } from '../step_content_wrapper'; import { RuleActionsField } from '../rule_actions_field'; import { useKibana } from '../../../../common/lib/kibana'; -import { - useFetchConnectors, - useFetchConnectorTypes, -} from '../../../../detection_engine/rule_management/api/hooks/use_fetch_connectors'; +import { useFetchConnectorsQuery } from '../../../../detection_engine/rule_management/api/hooks/use_fetch_connectors_query'; +import { useFetchConnectorTypesQuery } from '../../../../detection_engine/rule_management/api/hooks/use_fetch_connector_types_query'; import * as i18n from './translations'; import { RuleSnoozeSection } from './rule_snooze_section'; import { NotificationAction } from './notification_action'; @@ -159,8 +157,8 @@ const StepRuleActionsReadOnlyComponent: FC = ({ const actionTypeRegistry = triggersActionsUi.actionTypeRegistry as ActionTypeRegistryContract; - const { data: connectors } = useFetchConnectors(); - const { data: connectorTypes } = useFetchConnectorTypes(); + const { data: connectors } = useFetchConnectorsQuery(); + const { data: connectorTypes } = useFetchConnectorTypesQuery(); const notificationActions = ruleActionsData.actions; const responseActions = ruleActionsData.responseActions || []; diff --git a/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_settings_form/components/protection_setting_card_switch.tsx b/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_settings_form/components/protection_setting_card_switch.tsx index 32dfebbfb46f3..ee70a1c54b99e 100644 --- a/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_settings_form/components/protection_setting_card_switch.tsx +++ b/x-pack/plugins/security_solution/public/management/pages/policy/view/policy_settings_form/components/protection_setting_card_switch.tsx @@ -102,9 +102,9 @@ export const ProtectionSettingCardSwitch = React.memo( } if (isPlatinumPlus) { if (protection === 'behavior_protection') { - newPayload.windows.behavior_protection.reputation_service = false; - newPayload.mac.behavior_protection.reputation_service = false; - newPayload.linux.behavior_protection.reputation_service = false; + newPayload.windows.behavior_protection.reputation_service = true; + newPayload.mac.behavior_protection.reputation_service = true; + newPayload.linux.behavior_protection.reputation_service = true; } if (os === 'windows') { newPayload[os].popup[protection].enabled = event.target.checked; diff --git a/x-pack/plugins/security_solution/public/overview/components/events_by_dataset/index.tsx b/x-pack/plugins/security_solution/public/overview/components/events_by_dataset/index.tsx index 360cfbbce9825..360c95ec94019 100644 --- a/x-pack/plugins/security_solution/public/overview/components/events_by_dataset/index.tsx +++ b/x-pack/plugins/security_solution/public/overview/components/events_by_dataset/index.tsx @@ -60,6 +60,7 @@ interface Props extends Pick void; hideQueryToggle?: boolean; + applyGlobalQueriesAndFilters?: boolean; } const getHistogramOption = (fieldName: string): MatrixHistogramOption => ({ @@ -95,6 +96,7 @@ const EventsByDatasetComponent: React.FC = ({ to, toggleTopN, hideQueryToggle = false, + applyGlobalQueriesAndFilters = true, }) => { const uniqueQueryId = useMemo(() => `${ID}-${queryType}`, [queryType]); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_context.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_context.ts index a71585308c397..e68e84acf6029 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_context.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/routes/__mocks__/request_context.ts @@ -16,7 +16,7 @@ import { rulesClientMock } from '@kbn/alerting-plugin/server/mocks'; // See: https://github.com/elastic/kibana/issues/117255, the moduleNameMapper creates mocks to avoid memory leaks from kibana core. // We cannot import from "../../../../../../actions/server" directly here or we have a really bad memory issue. We cannot add this to the existing mocks we created, this fix must be here. -import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client.mock'; +import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client/actions_client.mock'; import { licensingMock } from '@kbn/licensing-plugin/server/mocks'; import { listMock } from '@kbn/lists-plugin/server/mocks'; import { ruleRegistryMocks } from '@kbn/rule-registry-plugin/server/mocks'; diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_all.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_all.test.ts index 6897fdaf0b92c..16167acdf51ac 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_all.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_all.test.ts @@ -27,7 +27,7 @@ import { requestContextMock } from '../../../routes/__mocks__/request_context'; import { savedObjectsExporterMock } from '@kbn/core-saved-objects-import-export-server-mocks'; import { mockRouter } from '@kbn/core-http-router-server-mocks'; import { Readable } from 'stream'; -import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client.mock'; +import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client/actions_client.mock'; const exceptionsClient = getExceptionListClientMock(); diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_by_object_ids.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_by_object_ids.test.ts index c2fe91251d75d..c9d7f82588c52 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_by_object_ids.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/export/get_export_by_object_ids.test.ts @@ -28,7 +28,7 @@ import { mockRouter } from '@kbn/core-http-router-server-mocks'; const exceptionsClient = getExceptionListClientMock(); import type { loggingSystemMock } from '@kbn/core/server/mocks'; import { requestContextMock } from '../../../routes/__mocks__/request_context'; -import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client.mock'; +import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client/actions_client.mock'; const connectors = [ { diff --git a/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/import/action_connectors/import_rule_action_connectors.test.ts b/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/import/action_connectors/import_rule_action_connectors.test.ts index f6e0e34904c5a..7b161f1ab27f2 100644 --- a/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/import/action_connectors/import_rule_action_connectors.test.ts +++ b/x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/import/action_connectors/import_rule_action_connectors.test.ts @@ -4,7 +4,7 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ -import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client.mock'; +import { actionsClientMock } from '@kbn/actions-plugin/server/actions_client/actions_client.mock'; import { getImportRulesSchemaMock, webHookConnector, diff --git a/x-pack/plugins/serverless_search/common/doc_links.ts b/x-pack/plugins/serverless_search/common/doc_links.ts index fdf57a80f30e2..4c93763a145c8 100644 --- a/x-pack/plugins/serverless_search/common/doc_links.ts +++ b/x-pack/plugins/serverless_search/common/doc_links.ts @@ -14,7 +14,7 @@ class ESDocLinks { public integrations: string = ''; public kibanaFeedback: string = ''; public kibanaRunApiInConsole: string = ''; - public logStash: string = ''; + public logstash: string = ''; public metadata: string = ''; public roleDescriptors: string = ''; public securityApis: string = ''; @@ -51,7 +51,7 @@ class ESDocLinks { setDocLinks(newDocLinks: DocLinks) { this.apiIntro = newDocLinks.serverlessClients.httpApis; this.integrations = newDocLinks.serverlessSearch.integrations; - this.logStash = newDocLinks.serverlessSearch.integrationsLogstash; + this.logstash = newDocLinks.serverlessSearch.integrationsLogstash; this.beats = newDocLinks.serverlessSearch.integrationsBeats; this.connectors = newDocLinks.serverlessSearch.integrationsConnectorClient; this.kibanaFeedback = newDocLinks.kibana.feedback; diff --git a/x-pack/plugins/serverless_search/public/application/components/api_key/api_key.tsx b/x-pack/plugins/serverless_search/public/application/components/api_key/api_key.tsx index 4351c0777fe80..07d93fb8bcfe2 100644 --- a/x-pack/plugins/serverless_search/public/application/components/api_key/api_key.tsx +++ b/x-pack/plugins/serverless_search/public/application/components/api_key/api_key.tsx @@ -53,7 +53,7 @@ export const ApiKeyPanel = ({ setClientApiKey }: { setClientApiKey: (value: stri /> )} {apiKey ? ( - + { describe('#setup', () => { - it('should register the spaces API and the space selector app', () => { + it('should register the space selector app when buildFlavor is traditional', () => { const coreSetup = coreMock.createSetup(); + const mockInitializerContext = coreMock.createPluginInitializerContext( + {}, + { buildFlavor: 'traditional' } + ); - const plugin = new SpacesPlugin(coreMock.createPluginInitializerContext()); + const plugin = new SpacesPlugin(mockInitializerContext); plugin.setup(coreSetup, {}); expect(coreSetup.application.register).toHaveBeenCalledWith( @@ -33,7 +37,23 @@ describe('Spaces plugin', () => { ); }); - it('should register the management and feature catalogue sections when the management and home plugins are both available', () => { + it('should not register the space selector app when buildFlavor is serverless', () => { + const coreSetup = coreMock.createSetup(); + + const plugin = new SpacesPlugin(coreMock.createPluginInitializerContext()); + plugin.setup(coreSetup, {}); + + expect(coreSetup.application.register).not.toHaveBeenCalledWith( + expect.objectContaining({ + id: 'space_selector', + chromeless: true, + appRoute: '/spaces/space_selector', + mount: expect.any(Function), + }) + ); + }); + + it('should register the management and feature catalogue sections when the management and home plugins are both available when buildFlavor is traditional', () => { const coreSetup = coreMock.createSetup(); const home = homePluginMock.createSetupContract(); @@ -43,7 +63,12 @@ describe('Spaces plugin', () => { management.sections.section.kibana = mockSection; - const plugin = new SpacesPlugin(coreMock.createPluginInitializerContext()); + const mockInitializerContext = coreMock.createPluginInitializerContext( + {}, + { buildFlavor: 'traditional' } + ); + + const plugin = new SpacesPlugin(mockInitializerContext); plugin.setup(coreSetup, { management, home, @@ -62,19 +87,66 @@ describe('Spaces plugin', () => { }) ); }); + + it('should not register spaces in the management plugin or the feature catalog when the management and home plugins are both available when buildFlavor is serverless', () => { + const coreSetup = coreMock.createSetup(); + const home = homePluginMock.createSetupContract(); + + const management = managementPluginMock.createSetupContract(); + const mockSection = createManagementSectionMock(); + mockSection.registerApp = jest.fn(); + + management.sections.section.kibana = mockSection; + + const plugin = new SpacesPlugin(coreMock.createPluginInitializerContext()); + plugin.setup(coreSetup, { + management, + home, + }); + + expect(mockSection.registerApp).not.toHaveBeenCalledWith( + expect.objectContaining({ id: 'spaces' }) + ); + + expect(home.featureCatalogue.register).not.toHaveBeenCalledWith( + expect.objectContaining({ + category: 'admin', + icon: 'spacesApp', + id: 'spaces', + showOnHomePage: false, + }) + ); + }); }); describe('#start', () => { - it('should register the spaces nav control', () => { + it('should register the spaces nav control when buildFlavor is traditional', () => { const coreSetup = coreMock.createSetup(); const coreStart = coreMock.createStart(); - const plugin = new SpacesPlugin(coreMock.createPluginInitializerContext()); + const mockInitializerContext = coreMock.createPluginInitializerContext( + {}, + { buildFlavor: 'traditional' } + ); + + const plugin = new SpacesPlugin(mockInitializerContext); plugin.setup(coreSetup, {}); plugin.start(coreStart); expect(coreStart.chrome.navControls.registerLeft).toHaveBeenCalled(); }); + + it('should not register the spaces nav control when buildFlavor is serverless', () => { + const coreSetup = coreMock.createSetup(); + const coreStart = coreMock.createStart(); + + const plugin = new SpacesPlugin(coreMock.createPluginInitializerContext()); + plugin.setup(coreSetup, {}); + + plugin.start(coreStart); + + expect(coreStart.chrome.navControls.registerLeft).not.toHaveBeenCalled(); + }); }); }); diff --git a/x-pack/plugins/spaces/public/plugin.tsx b/x-pack/plugins/spaces/public/plugin.tsx index 33cbcc3a47227..28a54e7768f3e 100644 --- a/x-pack/plugins/spaces/public/plugin.tsx +++ b/x-pack/plugins/spaces/public/plugin.tsx @@ -45,9 +45,11 @@ export class SpacesPlugin implements Plugin(); + this.isServerless = this.initializerContext.env.packageInfo.buildFlavor === 'serverless'; } public setup(core: CoreSetup, plugins: PluginsSetup) { @@ -61,31 +63,35 @@ export class SpacesPlugin implements Plugin this.spacesManager.getActiveSpace(), }; - if (plugins.home) { - plugins.home.featureCatalogue.register(createSpacesFeatureCatalogueEntry()); - } - - if (plugins.management) { - this.managementService = new ManagementService(); - this.managementService.setup({ - management: plugins.management, + if (!this.isServerless) { + if (plugins.home) { + plugins.home.featureCatalogue.register(createSpacesFeatureCatalogueEntry()); + } + + if (plugins.management) { + this.managementService = new ManagementService(); + this.managementService.setup({ + management: plugins.management, + getStartServices: core.getStartServices, + spacesManager: this.spacesManager, + config: this.config, + }); + } + + spaceSelectorApp.create({ getStartServices: core.getStartServices, + application: core.application, spacesManager: this.spacesManager, - config: this.config, }); } - spaceSelectorApp.create({ - getStartServices: core.getStartServices, - application: core.application, - spacesManager: this.spacesManager, - }); - return {}; } public start(core: CoreStart) { - initSpacesNavControl(this.spacesManager, core); + if (!this.isServerless) { + initSpacesNavControl(this.spacesManager, core); + } return this.spacesApi; } diff --git a/x-pack/plugins/synthetics/common/types/synthetics_monitor.ts b/x-pack/plugins/synthetics/common/types/synthetics_monitor.ts index 65d466a5ab2f8..47b0eaf9d143c 100644 --- a/x-pack/plugins/synthetics/common/types/synthetics_monitor.ts +++ b/x-pack/plugins/synthetics/common/types/synthetics_monitor.ts @@ -20,3 +20,11 @@ export interface TestNowResponse { configId: string; monitor: SyntheticsMonitor; } + +export interface AgentPolicyInfo { + id: string; + name: string; + agents: number; + status: string; + description?: string; +} diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/components/getting_started/getting_started_page.test.tsx b/x-pack/plugins/synthetics/public/apps/synthetics/components/getting_started/getting_started_page.test.tsx index d66a079d8a2ea..caa3a2d66fcfe 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/components/getting_started/getting_started_page.test.tsx +++ b/x-pack/plugins/synthetics/public/apps/synthetics/components/getting_started/getting_started_page.test.tsx @@ -82,9 +82,7 @@ describe('GettingStartedPage', () => { loading: false, }, agentPolicies: { - data: { - total: 0, - }, + data: [], isAddingNewPrivateLocation: true, }, }, @@ -109,10 +107,7 @@ describe('GettingStartedPage', () => { loading: false, }, agentPolicies: { - data: { - total: 1, - items: [{}], - }, + data: [{}], isAddingNewPrivateLocation: true, }, }, @@ -141,10 +136,7 @@ describe('GettingStartedPage', () => { loading: false, }, agentPolicies: { - data: { - total: 1, - items: [{}], - }, + data: [{}], isAddingNewPrivateLocation: true, }, }, diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/location_form.tsx b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/location_form.tsx index cc2b835fbfdd8..7a8fdd67c6efd 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/location_form.tsx +++ b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/location_form.tsx @@ -29,7 +29,7 @@ export const LocationForm = ({ privateLocations }: { privateLocations: PrivateLo const { control, register, watch } = useFormContext(); const { errors } = useFormState(); const selectedPolicyId = watch('agentPolicyId'); - const selectedPolicy = data?.items.find((item) => item.id === selectedPolicyId); + const selectedPolicy = data?.find((item) => item.id === selectedPolicyId); const tagsList = privateLocations.reduce((acc, item) => { const tags = item.tags || []; @@ -38,7 +38,7 @@ export const LocationForm = ({ privateLocations }: { privateLocations: PrivateLo return ( <> - {data?.items.length === 0 && } + {data?.length === 0 && } { const { data: agentPolicies } = useSelector(selectAgentPolicies); - if (agentPolicies?.total === 0 && showNeedAgentPolicy) { + if (agentPolicies?.length === 0 && showNeedAgentPolicy) { return ; } diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/manage_private_locations.test.tsx b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/manage_private_locations.test.tsx index 818b398315610..41086bacde0be 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/manage_private_locations.test.tsx +++ b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/manage_private_locations.test.tsx @@ -46,12 +46,7 @@ describe('', () => { const { getByText, getByRole, findByText } = render(, { state: { agentPolicies: { - data: { - items: [], - total: 0, - page: 1, - perPage: 20, - }, + data: [], loading: false, error: null, isManageFlyoutOpen: false, @@ -85,12 +80,7 @@ describe('', () => { const { getByText, getByRole, findByText } = render(, { state: { agentPolicies: { - data: { - items: [{}], - total: 1, - page: 1, - perPage: 20, - }, + data: [{}], loading: false, error: null, isManageFlyoutOpen: false, @@ -140,12 +130,7 @@ describe('', () => { const { getByText, getByRole, findByText } = render(, { state: { agentPolicies: { - data: { - items: [{}], - total: 1, - page: 1, - perPage: 20, - }, + data: [{}], loading: false, error: null, isManageFlyoutOpen: false, diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_hosts.tsx b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_hosts.tsx index e91a8b529131c..483e80fae65b7 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_hosts.tsx +++ b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_hosts.tsx @@ -34,7 +34,7 @@ export const PolicyHostsField = ({ }) => { const { data } = useSelector(selectAgentPolicies); - const policyHostsOptions = data?.items.map((item) => { + const policyHostsOptions = data?.map((item) => { const hasLocation = privateLocations.find((location) => location.agentPolicyId === item.id); return { disabled: Boolean(hasLocation), diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_name.tsx b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_name.tsx index f336d83a98ee7..ea4ac5b75688b 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_name.tsx +++ b/x-pack/plugins/synthetics/public/apps/synthetics/components/settings/private_locations/policy_name.tsx @@ -20,7 +20,7 @@ export const PolicyName = ({ agentPolicyId }: { agentPolicyId: string }) => { const { data: policies, loading } = useSelector(selectAgentPolicies); - const policy = policies?.items.find((policyT) => policyT.id === agentPolicyId); + const policy = policies?.find((policyT) => policyT.id === agentPolicyId); if (loading) { return ; diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/actions.ts b/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/actions.ts index 60586a99c380e..05fc1e950c112 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/actions.ts +++ b/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/actions.ts @@ -6,10 +6,10 @@ */ import { createAction } from '@reduxjs/toolkit'; +import { AgentPolicyInfo } from '../../../../../common/types'; import { createAsyncAction } from '../utils/actions'; -import { AgentPoliciesList } from '.'; -export const getAgentPoliciesAction = createAsyncAction( +export const getAgentPoliciesAction = createAsyncAction( '[AGENT POLICIES] GET' ); diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/api.ts b/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/api.ts index c3baa6f21ddc5..805d5672ae9bd 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/api.ts +++ b/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/api.ts @@ -5,12 +5,12 @@ * 2.0. */ +import { AgentPolicyInfo } from '../../../../../common/types'; import { SYNTHETICS_API_URLS } from '../../../../../common/constants'; import { PrivateLocation, SyntheticsPrivateLocations } from '../../../../../common/runtime_types'; import { apiService } from '../../../../utils/api_service/api_service'; -import { AgentPoliciesList } from '.'; -export const fetchAgentPolicies = async (): Promise => { +export const fetchAgentPolicies = async (): Promise => { return await apiService.get(SYNTHETICS_API_URLS.AGENT_POLICIES); }; diff --git a/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/index.ts b/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/index.ts index 5b023a8bd0b55..d38c6b6702660 100644 --- a/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/index.ts +++ b/x-pack/plugins/synthetics/public/apps/synthetics/state/private_locations/index.ts @@ -6,19 +6,12 @@ */ import { createReducer } from '@reduxjs/toolkit'; -import { AgentPolicy } from '@kbn/fleet-plugin/common'; +import { AgentPolicyInfo } from '../../../../../common/types'; import { IHttpSerializedFetchError } from '..'; import { getAgentPoliciesAction, setAddingNewPrivateLocation } from './actions'; -export interface AgentPoliciesList { - items: AgentPolicy[]; - total: number; - page: number; - perPage: number; -} - export interface AgentPoliciesState { - data: AgentPoliciesList | null; + data: AgentPolicyInfo[] | null; loading: boolean; error: IHttpSerializedFetchError | null; isManageFlyoutOpen?: boolean; diff --git a/x-pack/plugins/synthetics/server/feature.ts b/x-pack/plugins/synthetics/server/feature.ts index 265def5c3fa01..36a5888928680 100644 --- a/x-pack/plugins/synthetics/server/feature.ts +++ b/x-pack/plugins/synthetics/server/feature.ts @@ -6,6 +6,7 @@ */ import { DEFAULT_APP_CATEGORIES } from '@kbn/core/server'; +import { OBSERVABILITY_THRESHOLD_RULE_TYPE_ID } from '@kbn/observability-plugin/common/constants'; import { syntheticsMonitorType, syntheticsParamType } from '../common/types/saved_objects'; import { SYNTHETICS_RULE_TYPES } from '../common/constants/synthetics_alerts'; import { privateLocationsSavedObjectName } from '../common/saved_objects/private_locations'; @@ -19,6 +20,13 @@ const UPTIME_RULE_TYPES = [ 'xpack.uptime.alerts.monitorStatus', 'xpack.uptime.alerts.durationAnomaly', ]; + +const ruleTypes = [ + ...UPTIME_RULE_TYPES, + ...SYNTHETICS_RULE_TYPES, + OBSERVABILITY_THRESHOLD_RULE_TYPE_ID, +]; + export const uptimeFeature = { id: PLUGIN.ID, name: PLUGIN.NAME, @@ -29,7 +37,7 @@ export const uptimeFeature = { management: { insightsAndAlerting: ['triggersActions'], }, - alerting: [...UPTIME_RULE_TYPES, ...SYNTHETICS_RULE_TYPES], + alerting: ruleTypes, privileges: { all: { app: ['uptime', 'kibana', 'synthetics'], @@ -47,10 +55,10 @@ export const uptimeFeature = { }, alerting: { rule: { - all: [...UPTIME_RULE_TYPES, ...SYNTHETICS_RULE_TYPES], + all: ruleTypes, }, alert: { - all: [...UPTIME_RULE_TYPES, ...SYNTHETICS_RULE_TYPES], + all: ruleTypes, }, }, management: { @@ -74,10 +82,10 @@ export const uptimeFeature = { }, alerting: { rule: { - read: [...UPTIME_RULE_TYPES, ...SYNTHETICS_RULE_TYPES], + read: ruleTypes, }, alert: { - read: [...UPTIME_RULE_TYPES, ...SYNTHETICS_RULE_TYPES], + read: ruleTypes, }, }, management: { diff --git a/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_agent_policies.ts b/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_agent_policies.ts index 204731474ca71..668beba0a8f95 100644 --- a/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_agent_policies.ts +++ b/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_agent_policies.ts @@ -5,6 +5,7 @@ * 2.0. */ +import { AgentPolicyInfo } from '../../../../common/types'; import { SyntheticsServerSetup } from '../../../types'; import { SyntheticsRestApiRouteFactory } from '../../types'; import { SYNTHETICS_API_URLS } from '../../../../common/constants'; @@ -13,7 +14,7 @@ export const getAgentPoliciesRoute: SyntheticsRestApiRouteFactory = () => ({ method: 'GET', path: SYNTHETICS_API_URLS.AGENT_POLICIES, validate: {}, - handler: async ({ server, context, uptimeEsClient }): Promise => { + handler: async ({ server }): Promise => { return getAgentPoliciesAsInternalUser(server); }, }); @@ -22,7 +23,7 @@ export const getAgentPoliciesAsInternalUser = async (server: SyntheticsServerSet const soClient = server.coreStart.savedObjects.createInternalRepository(); const esClient = server.coreStart.elasticsearch.client.asInternalUser; - return server.fleet?.agentPolicyService.list(soClient, { + const agentPolicies = await server.fleet?.agentPolicyService.list(soClient, { page: 1, perPage: 10000, sortField: 'name', @@ -31,4 +32,12 @@ export const getAgentPoliciesAsInternalUser = async (server: SyntheticsServerSet esClient, withAgentCount: true, }); + + return agentPolicies.items.map((agentPolicy) => ({ + id: agentPolicy.id, + name: agentPolicy.name, + agents: agentPolicy.agents ?? 0, + status: agentPolicy.status, + description: agentPolicy.description, + })); }; diff --git a/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_private_locations.ts b/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_private_locations.ts index 3a8e8a043d8c8..44a31bad08cff 100644 --- a/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_private_locations.ts +++ b/x-pack/plugins/synthetics/server/routes/settings/private_locations/get_private_locations.ts @@ -4,9 +4,9 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ -import type { AgentPolicy } from '@kbn/fleet-plugin/common'; import { SavedObjectsErrorHelpers } from '@kbn/core/server'; import { SavedObjectsClientContract } from '@kbn/core-saved-objects-api-server'; +import { AgentPolicyInfo } from '../../../../common/types'; import { SyntheticsRestApiRouteFactory } from '../../types'; import { SyntheticsPrivateLocations } from '../../../../common/runtime_types'; import { SYNTHETICS_API_URLS } from '../../../../common/constants'; @@ -33,7 +33,7 @@ export const getPrivateLocationsRoute: SyntheticsRestApiRouteFactory< export const getPrivateLocationsAndAgentPolicies = async ( savedObjectsClient: SavedObjectsClientContract, syntheticsMonitorClient: SyntheticsMonitorClient -): Promise => { +): Promise => { try { const [privateLocations, agentPolicies] = await Promise.all([ getPrivateLocations(savedObjectsClient), diff --git a/x-pack/plugins/synthetics/server/routes/settings/private_locations/helpers.ts b/x-pack/plugins/synthetics/server/routes/settings/private_locations/helpers.ts index 7f64b1bed7425..b41c8f5e7538d 100644 --- a/x-pack/plugins/synthetics/server/routes/settings/private_locations/helpers.ts +++ b/x-pack/plugins/synthetics/server/routes/settings/private_locations/helpers.ts @@ -4,7 +4,7 @@ * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ -import type { AgentPolicy } from '@kbn/fleet-plugin/common'; +import { AgentPolicyInfo } from '../../../../common/types'; import type { SyntheticsPrivateLocations } from '../../../../common/runtime_types'; import type { SyntheticsPrivateLocationsAttributes, @@ -14,7 +14,7 @@ import { PrivateLocation } from '../../../../common/runtime_types'; export const toClientContract = ( attributes: SyntheticsPrivateLocationsAttributes, - agentPolicies?: AgentPolicy[] + agentPolicies?: AgentPolicyInfo[] ): SyntheticsPrivateLocations => { return { locations: attributes.locations.map((location) => ({ diff --git a/x-pack/plugins/synthetics/server/synthetics_service/private_location/synthetics_private_location.ts b/x-pack/plugins/synthetics/server/synthetics_service/private_location/synthetics_private_location.ts index a1d22b3404f03..69788a6f10ae0 100644 --- a/x-pack/plugins/synthetics/server/synthetics_service/private_location/synthetics_private_location.ts +++ b/x-pack/plugins/synthetics/server/synthetics_service/private_location/synthetics_private_location.ts @@ -435,9 +435,7 @@ export class SyntheticsPrivateLocation { } async getAgentPolicies() { - const agentPolicies = await getAgentPoliciesAsInternalUser(this.server); - - return agentPolicies.items; + return await getAgentPoliciesAsInternalUser(this.server); } } diff --git a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/events/all/index.ts b/x-pack/plugins/timelines/server/search_strategy/timeline/factory/events/all/index.ts index e672be224d915..42740a622d06b 100644 --- a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/events/all/index.ts +++ b/x-pack/plugins/timelines/server/search_strategy/timeline/factory/events/all/index.ts @@ -7,6 +7,7 @@ import { cloneDeep, getOr } from 'lodash/fp'; import type { IEsSearchResponse } from '@kbn/data-plugin/common'; +import { buildAlertFieldsRequest as buildFieldsRequest } from '@kbn/alerts-as-data-utils'; import { DEFAULT_MAX_TABLE_QUERY_SIZE } from '../../../../../../common/constants'; import { EventHit, @@ -18,7 +19,6 @@ import { import { TimelineFactory } from '../../types'; import { buildTimelineEventsAllQuery } from './query.events_all.dsl'; import { inspectStringifyObject } from '../../../../../utils/build_query'; -import { buildFieldsRequest } from '../../helpers/build_fields_request'; import { formatTimelineData } from '../../helpers/format_timeline_data'; import { TIMELINE_EVENTS_FIELDS } from '../../helpers/constants'; diff --git a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/build_fields_request.ts b/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/build_fields_request.ts deleted file mode 100644 index 5e89939df40f3..0000000000000 --- a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/build_fields_request.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License - * 2.0; you may not use this file except in compliance with the Elastic License - * 2.0. - */ - -import { uniq } from 'lodash/fp'; -import { TIMELINE_EVENTS_FIELDS } from './constants'; - -export const buildFieldsRequest = (fields: string[], excludeEcsData?: boolean) => - uniq([ - ...fields.filter((field) => !field.startsWith('_')), - ...(excludeEcsData ? [] : TIMELINE_EVENTS_FIELDS), - ]).map((field) => ({ - field, - include_unmapped: true, - })); diff --git a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/constants.ts b/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/constants.ts index e68f73624185d..2777f26e07609 100644 --- a/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/constants.ts +++ b/x-pack/plugins/timelines/server/search_strategy/timeline/factory/helpers/constants.ts @@ -5,292 +5,8 @@ * 2.0. */ -import { - ALERT_RULE_CONSUMER, - ALERT_RISK_SCORE, - ALERT_SEVERITY, - ALERT_RULE_PARAMETERS, - ALERT_WORKFLOW_TAGS, -} from '@kbn/rule-data-utils'; -import { ENRICHMENT_DESTINATION_PATH } from '../../../../../common/constants'; +import { ALERT_EVENTS_FIELDS as TIMELINE_EVENTS_FIELDS } from '@kbn/alerts-as-data-utils'; -export const MATCHED_ATOMIC = 'matched.atomic'; -export const MATCHED_FIELD = 'matched.field'; -export const MATCHED_TYPE = 'matched.type'; -export const INDICATOR_MATCH_SUBFIELDS = [MATCHED_ATOMIC, MATCHED_FIELD, MATCHED_TYPE]; +const ECS_METADATA_FIELDS = ['_id', '_index', '_type', '_score']; -export const INDICATOR_MATCHED_ATOMIC = `${ENRICHMENT_DESTINATION_PATH}.${MATCHED_ATOMIC}`; -export const INDICATOR_MATCHED_FIELD = `${ENRICHMENT_DESTINATION_PATH}.${MATCHED_FIELD}`; -export const INDICATOR_MATCHED_TYPE = `${ENRICHMENT_DESTINATION_PATH}.${MATCHED_TYPE}`; - -export const EVENT_DATASET = 'event.dataset'; - -export const FIRST_SEEN = 'indicator.first_seen'; -export const LAST_SEEN = 'indicator.last_seen'; -export const PROVIDER = 'indicator.provider'; -export const REFERENCE = 'indicator.reference'; -export const FEED_NAME = 'feed.name'; - -export const INDICATOR_FIRSTSEEN = `${ENRICHMENT_DESTINATION_PATH}.${FIRST_SEEN}`; -export const INDICATOR_LASTSEEN = `${ENRICHMENT_DESTINATION_PATH}.${LAST_SEEN}`; -export const INDICATOR_PROVIDER = `${ENRICHMENT_DESTINATION_PATH}.${PROVIDER}`; -export const INDICATOR_REFERENCE = `${ENRICHMENT_DESTINATION_PATH}.${REFERENCE}`; -export const FEED_NAME_REFERENCE = `${ENRICHMENT_DESTINATION_PATH}.${FEED_NAME}`; - -export const CTI_ROW_RENDERER_FIELDS = [ - INDICATOR_MATCHED_ATOMIC, - INDICATOR_MATCHED_FIELD, - INDICATOR_MATCHED_TYPE, - INDICATOR_REFERENCE, - INDICATOR_PROVIDER, - FEED_NAME_REFERENCE, -]; - -// TODO: update all of these fields to use the constants from technical field names -export const TIMELINE_EVENTS_FIELDS = [ - ALERT_RULE_CONSUMER, - '@timestamp', - 'kibana.alert.ancestors.index', - 'kibana.alert.workflow_status', - ALERT_WORKFLOW_TAGS, - 'kibana.alert.group.id', - 'kibana.alert.original_time', - 'kibana.alert.reason', - 'kibana.alert.rule.from', - 'kibana.alert.rule.name', - 'kibana.alert.rule.to', - 'kibana.alert.rule.uuid', - 'kibana.alert.rule.rule_id', - 'kibana.alert.rule.type', - 'kibana.alert.original_event.kind', - 'kibana.alert.original_event.module', - 'kibana.alert.rule.version', - ALERT_SEVERITY, - ALERT_RISK_SCORE, - ALERT_RULE_PARAMETERS, - 'kibana.alert.threshold_result', - 'kibana.alert.building_block_type', - 'kibana.alert.suppression.docs_count', - 'event.code', - 'event.module', - 'event.action', - 'event.category', - 'host.name', - 'user.name', - 'source.ip', - 'destination.ip', - 'message', - 'system.auth.ssh.signature', - 'system.auth.ssh.method', - 'system.audit.package.arch', - 'system.audit.package.entity_id', - 'system.audit.package.name', - 'system.audit.package.size', - 'system.audit.package.summary', - 'system.audit.package.version', - 'event.created', - 'event.dataset', - 'event.duration', - 'event.end', - 'event.hash', - 'event.id', - 'event.kind', - 'event.original', - 'event.outcome', - 'event.risk_score', - 'event.risk_score_norm', - 'event.severity', - 'event.start', - 'event.timezone', - 'event.type', - 'agent.type', - 'agent.id', - 'auditd.result', - 'auditd.session', - 'auditd.data.acct', - 'auditd.data.terminal', - 'auditd.data.op', - 'auditd.summary.actor.primary', - 'auditd.summary.actor.secondary', - 'auditd.summary.object.primary', - 'auditd.summary.object.secondary', - 'auditd.summary.object.type', - 'auditd.summary.how', - 'auditd.summary.message_type', - 'auditd.summary.sequence', - 'file.Ext.original.path', - 'file.name', - 'file.target_path', - 'file.extension', - 'file.type', - 'file.device', - 'file.inode', - 'file.uid', - 'file.owner', - 'file.gid', - 'file.group', - 'file.mode', - 'file.size', - 'file.mtime', - 'file.ctime', - 'file.path', - // NOTE: 7.10+ file.Ext.code_signature populated - // as array of objects, prior to that populated as - // single object - 'file.Ext.code_signature', - 'file.Ext.code_signature.subject_name', - 'file.Ext.code_signature.trusted', - 'file.hash.sha256', - 'host.os.family', - 'host.os.name', - 'host.id', - 'host.ip', - 'registry.key', - 'registry.path', - 'rule.reference', - 'source.bytes', - 'source.packets', - 'source.port', - 'source.geo.continent_name', - 'source.geo.country_name', - 'source.geo.country_iso_code', - 'source.geo.city_name', - 'source.geo.region_iso_code', - 'source.geo.region_name', - 'destination.bytes', - 'destination.packets', - 'destination.port', - 'destination.geo.continent_name', - 'destination.geo.country_name', - 'destination.geo.country_iso_code', - 'destination.geo.city_name', - 'destination.geo.region_iso_code', - 'destination.geo.region_name', - 'dns.question.name', - 'dns.question.type', - 'dns.resolved_ip', - 'dns.response_code', - 'endgame.exit_code', - 'endgame.file_name', - 'endgame.file_path', - 'endgame.logon_type', - 'endgame.parent_process_name', - 'endgame.pid', - 'endgame.process_name', - 'endgame.subject_domain_name', - 'endgame.subject_logon_id', - 'endgame.subject_user_name', - 'endgame.target_domain_name', - 'endgame.target_logon_id', - 'endgame.target_user_name', - 'kibana.alert.rule.timeline_id', - 'kibana.alert.rule.timeline_title', - 'kibana.alert.rule.note', - 'kibana.alert.rule.exceptions_list', - 'kibana.alert.rule.building_block_type', - 'suricata.eve.proto', - 'suricata.eve.flow_id', - 'suricata.eve.alert.signature', - 'suricata.eve.alert.signature_id', - 'network.bytes', - 'network.community_id', - 'network.direction', - 'network.packets', - 'network.protocol', - 'network.transport', - 'http.version', - 'http.request.method', - 'http.request.body.bytes', - 'http.request.body.content', - 'http.request.referrer', - 'http.response.status_code', - 'http.response.body.bytes', - 'http.response.body.content', - 'tls.client_certificate.fingerprint.sha1', - 'tls.fingerprints.ja3.hash', - 'tls.server_certificate.fingerprint.sha1', - 'user.domain', - 'winlog.event_id', - 'process.end', - 'process.entry_leader.entry_meta.type', - 'process.entry_leader.entry_meta.source.ip', - 'process.exit_code', - 'process.hash.md5', - 'process.hash.sha1', - 'process.hash.sha256', - 'process.interactive', - 'process.parent.name', - 'process.parent.pid', - 'process.pid', - 'process.name', - 'process.ppid', - 'process.args', - 'process.entity_id', - 'process.executable', - 'process.start', - 'process.title', - 'process.working_directory', - 'process.entry_leader.entity_id', - 'process.entry_leader.name', - 'process.entry_leader.pid', - 'process.entry_leader.start', - 'process.session_leader.entity_id', - 'process.session_leader.name', - 'process.session_leader.pid', - 'process.group_leader.entity_id', - 'process.group_leader.name', - 'process.group_leader.pid', - 'zeek.session_id', - 'zeek.connection.local_resp', - 'zeek.connection.local_orig', - 'zeek.connection.missed_bytes', - 'zeek.connection.state', - 'zeek.connection.history', - 'zeek.notice.suppress_for', - 'zeek.notice.msg', - 'zeek.notice.note', - 'zeek.notice.sub', - 'zeek.notice.dst', - 'zeek.notice.dropped', - 'zeek.notice.peer_descr', - 'zeek.dns.AA', - 'zeek.dns.qclass_name', - 'zeek.dns.RD', - 'zeek.dns.qtype_name', - 'zeek.dns.qtype', - 'zeek.dns.query', - 'zeek.dns.trans_id', - 'zeek.dns.qclass', - 'zeek.dns.RA', - 'zeek.dns.TC', - 'zeek.http.resp_mime_types', - 'zeek.http.trans_depth', - 'zeek.http.status_msg', - 'zeek.http.resp_fuids', - 'zeek.http.tags', - 'zeek.files.session_ids', - 'zeek.files.timedout', - 'zeek.files.local_orig', - 'zeek.files.tx_host', - 'zeek.files.source', - 'zeek.files.is_orig', - 'zeek.files.overflow_bytes', - 'zeek.files.sha1', - 'zeek.files.duration', - 'zeek.files.depth', - 'zeek.files.analyzers', - 'zeek.files.mime_type', - 'zeek.files.rx_host', - 'zeek.files.total_bytes', - 'zeek.files.fuid', - 'zeek.files.seen_bytes', - 'zeek.files.missing_bytes', - 'zeek.files.md5', - 'zeek.ssl.cipher', - 'zeek.ssl.established', - 'zeek.ssl.resumed', - 'zeek.ssl.version', - ...CTI_ROW_RENDERER_FIELDS, -]; - -export const ECS_METADATA_FIELDS = ['_id', '_index', '_type', '_score']; +export { TIMELINE_EVENTS_FIELDS, ECS_METADATA_FIELDS }; diff --git a/x-pack/plugins/transform/public/app/components/section_error.tsx b/x-pack/plugins/transform/public/app/components/section_error.tsx index fc7f6bbc14d72..2a6ddd3174de7 100644 --- a/x-pack/plugins/transform/public/app/components/section_error.tsx +++ b/x-pack/plugins/transform/public/app/components/section_error.tsx @@ -5,8 +5,8 @@ * 2.0. */ -import { EuiEmptyPrompt, EuiPageContent_Deprecated as EuiPageContent } from '@elastic/eui'; import React from 'react'; +import { EuiPageTemplate } from '@elastic/eui'; interface Props { title: React.ReactNode; @@ -23,17 +23,16 @@ export const SectionError: React.FunctionComponent = ({ const errorMessage = error?.message ?? JSON.stringify(error, null, 2); return ( - - {title}
} - body={ -

-

{errorMessage}
- {actions ? actions : null} -

- } - /> - + {title}} + body={ +

+

{errorMessage}
+ {actions ? actions : null} +

+ } + /> ); }; diff --git a/x-pack/plugins/transform/public/app/lib/authorization/components/not_authorized_section.tsx b/x-pack/plugins/transform/public/app/lib/authorization/components/not_authorized_section.tsx index 4b0942276c028..1ab942d59c787 100644 --- a/x-pack/plugins/transform/public/app/lib/authorization/components/not_authorized_section.tsx +++ b/x-pack/plugins/transform/public/app/lib/authorization/components/not_authorized_section.tsx @@ -6,7 +6,7 @@ */ import React from 'react'; -import { EuiEmptyPrompt } from '@elastic/eui'; +import { EuiPageTemplate } from '@elastic/eui'; interface Props { title: React.ReactNode; @@ -14,5 +14,10 @@ interface Props { } export const NotAuthorizedSection = ({ title, message }: Props) => ( - {title}} body={

{message}

} /> + {title}} + body={

{message}

} + /> ); diff --git a/x-pack/plugins/transform/public/app/lib/authorization/components/with_privileges.tsx b/x-pack/plugins/transform/public/app/lib/authorization/components/with_privileges.tsx index 2117591142b26..a8069b2156239 100644 --- a/x-pack/plugins/transform/public/app/lib/authorization/components/with_privileges.tsx +++ b/x-pack/plugins/transform/public/app/lib/authorization/components/with_privileges.tsx @@ -6,19 +6,9 @@ */ import React, { useContext, FC } from 'react'; - -import { - EuiFlexItem, - EuiFlexGroup, - EuiPageContent_Deprecated as EuiPageContent, -} from '@elastic/eui'; - import { FormattedMessage } from '@kbn/i18n-react'; - import { MissingPrivileges } from '../../../../../common/types/privileges'; - import { SectionLoading } from '../../../components'; - import { AuthorizationContext } from './authorization_provider'; import { NotAuthorizedSection } from './not_authorized_section'; import { @@ -82,31 +72,25 @@ const MissingClusterPrivileges: FC = ({ missingPrivileges, privilegesCount, }) => ( - - - - - } - message={ - + } + message={ + - } - /> - - - + values={{ + missingPrivileges, + privilegesCount, + }} + /> + } + /> ); export const PrivilegesWrapper: FC<{ privileges: string | string[] }> = ({ diff --git a/x-pack/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx b/x-pack/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx index 2131ae616553d..63964bc422130 100644 --- a/x-pack/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx +++ b/x-pack/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx @@ -5,20 +5,14 @@ * 2.0. */ -import React, { useEffect, useState, FC } from 'react'; +import React, { FC, useEffect, useState } from 'react'; import { RouteComponentProps } from 'react-router-dom'; import { parse } from 'query-string'; import { FormattedMessage } from '@kbn/i18n-react'; import { i18n } from '@kbn/i18n'; -import { - EuiButtonEmpty, - EuiCallOut, - EuiPageContentBody_Deprecated as EuiPageContentBody, - EuiPageHeader, - EuiSpacer, -} from '@elastic/eui'; +import { EuiButtonEmpty, EuiCallOut, EuiPageTemplate, EuiSpacer } from '@elastic/eui'; import { isHttpFetchError } from '@kbn/core-http-browser'; import { APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES } from '../../../../common/constants'; import { TransformConfigUnion } from '../../../../common/types/transform'; @@ -27,7 +21,7 @@ import { useApi } from '../../hooks/use_api'; import { useDocumentationLinks } from '../../hooks/use_documentation_links'; import { useSearchItems } from '../../hooks/use_search_items'; -import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; +import { BREADCRUMB_SECTION, breadcrumbService, docTitleService } from '../../services/navigation'; import { PrivilegesWrapper } from '../../lib/authorization'; import { Wizard } from '../create_transform/components/wizard'; @@ -119,7 +113,7 @@ export const CloneTransformSection: FC = ({ match, location }) => { return ( - = ({ match, location }) => { } rightSideItems={[docsLink]} bottomBorder + paddingSize={'none'} /> - - {typeof errorMessage !== 'undefined' && ( + + {typeof errorMessage !== 'undefined' ? ( <> = ({ match, location }) => { - )} + ) : null} + {searchItems !== undefined && isInitialized === true && transformConfig !== undefined && ( )} - + ); }; diff --git a/x-pack/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx b/x-pack/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx index a5c674a70745c..e8780ba180e8d 100644 --- a/x-pack/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx +++ b/x-pack/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx @@ -5,26 +5,15 @@ * 2.0. */ -import React, { useEffect, FC } from 'react'; +import React, { FC, useEffect } from 'react'; import { RouteComponentProps } from 'react-router-dom'; - import { FormattedMessage } from '@kbn/i18n-react'; - -import { - EuiButtonEmpty, - EuiCallOut, - EuiPageContentBody_Deprecated as EuiPageContentBody, - EuiPageHeader, - EuiSpacer, -} from '@elastic/eui'; - +import { EuiButtonEmpty, EuiCallOut, EuiPageTemplate, EuiSpacer } from '@elastic/eui'; import { APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES } from '../../../../common/constants'; - import { useDocumentationLinks } from '../../hooks/use_documentation_links'; import { useSearchItems } from '../../hooks/use_search_items'; -import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; +import { BREADCRUMB_SECTION, breadcrumbService, docTitleService } from '../../services/navigation'; import { PrivilegesWrapper } from '../../lib/authorization'; - import { Wizard } from './components/wizard'; type Props = RouteComponentProps<{ savedObjectId: string }>; @@ -55,7 +44,7 @@ export const CreateTransformSection: FC = ({ match }) => { return ( - = ({ match }) => { } rightSideItems={[docsLink]} bottomBorder + paddingSize={'none'} /> - + {searchItemsError !== undefined && ( <> @@ -76,7 +66,7 @@ export const CreateTransformSection: FC = ({ match }) => { )} {searchItems !== undefined && } - + ); }; diff --git a/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/__snapshots__/transform_list.test.tsx.snap b/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/__snapshots__/transform_list.test.tsx.snap index 2e80f1deb8b2e..77df5dc76f68a 100644 --- a/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/__snapshots__/transform_list.test.tsx.snap +++ b/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/__snapshots__/transform_list.test.tsx.snap @@ -1,43 +1,27 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: Transform List Minimal initialization 1`] = ` - - - - - - Create your first transform - , - ] - } - data-test-subj="transformNoTransformsFound" - title={ -

- No transforms found -

- } - /> -
-
-
+<_EuiPageEmptyPrompt + actions={ + Array [ + + Create your first transform + , + ] + } + color="subdued" + data-test-subj="transformNoTransformsFound" + title={ +

+ No transforms found +

+ } +/> `; diff --git a/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/transform_list.tsx b/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/transform_list.tsx index e6c279e56f3c3..dc831e996b309 100644 --- a/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/transform_list.tsx +++ b/x-pack/plugins/transform/public/app/sections/transform_management/components/transform_list/transform_list.tsx @@ -5,25 +5,20 @@ * 2.0. */ -import React, { MouseEventHandler, FC, useContext, useState } from 'react'; - +import React, { FC, MouseEventHandler, useContext, useState } from 'react'; import { i18n } from '@kbn/i18n'; - import { EuiButton, EuiButtonEmpty, EuiButtonIcon, - EuiEmptyPrompt, EuiFlexGroup, EuiFlexItem, - EuiPageContent_Deprecated as EuiPageContent, - EuiPopover, - EuiSpacer, - EuiTitle, EuiInMemoryTable, + EuiPageTemplate, + EuiPopover, EuiSearchBarProps, + EuiTitle, } from '@elastic/eui'; - import { isReauthorizeActionDisabled, ReauthorizeActionModal, @@ -31,44 +26,41 @@ import { useReauthorizeAction, } from '../action_reauthorize'; import type { TransformId } from '../../../../../../common/types/transform'; - import { - useRefreshTransformList, - TransformListRow, TRANSFORM_LIST_COLUMN, + TransformListRow, + useRefreshTransformList, } from '../../../../common'; import { AuthorizationContext } from '../../../../lib/authorization'; - import { CreateTransformButton } from '../create_transform_button'; import { RefreshTransformListButton } from '../refresh_transform_list_button'; import { + DeleteActionModal, + DeleteActionName, isDeleteActionDisabled, useDeleteAction, - DeleteActionName, - DeleteActionModal, } from '../action_delete'; import { isResetActionDisabled, - useResetAction, - ResetActionName, ResetActionModal, + ResetActionName, + useResetAction, } from '../action_reset'; import { isStartActionDisabled, - useStartAction, - StartActionName, StartActionModal, + StartActionName, + useStartAction, } from '../action_start'; import { isScheduleNowActionDisabled, - useScheduleNowAction, ScheduleNowActionName, + useScheduleNowAction, } from '../action_schedule_now'; import { isStopActionDisabled, StopActionName, useStopAction } from '../action_stop'; - import { useColumns } from './use_columns'; import { ExpandedRow } from './expanded_row'; -import { transformFilters, filterTransforms } from './transform_search_bar_filters'; +import { filterTransforms, transformFilters } from './transform_search_bar_filters'; import { useTableSettings } from './use_table_settings'; import { useAlertRuleFlyout } from '../../../../../alerting/transform_alerting_flyout'; import { TransformHealthAlertRule } from '../../../../../../common/types/alerting'; @@ -148,36 +140,30 @@ export const TransformList: FC = ({ if (transforms.length === 0) { return ( - - - - - - {i18n.translate('xpack.transform.list.emptyPromptTitle', { - defaultMessage: 'No transforms found', - })} - - } - actions={[ - - {i18n.translate('xpack.transform.list.emptyPromptButtonText', { - defaultMessage: 'Create your first transform', - })} - , - ]} - data-test-subj="transformNoTransformsFound" - /> - - - + + {i18n.translate('xpack.transform.list.emptyPromptTitle', { + defaultMessage: 'No transforms found', + })} + + } + actions={[ + + {i18n.translate('xpack.transform.list.emptyPromptButtonText', { + defaultMessage: 'Create your first transform', + })} + , + ]} + data-test-subj="transformNoTransformsFound" + /> ); } diff --git a/x-pack/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx b/x-pack/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx index 3c74cf450b4b9..093930aeb1b7f 100644 --- a/x-pack/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx +++ b/x-pack/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx @@ -6,22 +6,15 @@ */ import React, { FC, useContext, useEffect, useMemo, useState } from 'react'; - import { FormattedMessage } from '@kbn/i18n-react'; - import { + EuiButton, EuiButtonEmpty, - EuiEmptyPrompt, - EuiFlexGroup, - EuiFlexItem, - EuiSkeletonText, + EuiCallOut, EuiModal, - EuiPageContent_Deprecated as EuiPageContent, - EuiPageContentBody_Deprecated as EuiPageContentBody, - EuiPageHeader, + EuiPageTemplate, + EuiSkeletonText, EuiSpacer, - EuiCallOut, - EuiButton, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { needsReauthorization } from '../../common/reauthorization_utils'; @@ -29,14 +22,12 @@ import { APP_GET_TRANSFORM_CLUSTER_PRIVILEGES, TRANSFORM_STATE, } from '../../../../common/constants'; - -import { useRefreshTransformList, TransformListRow } from '../../common'; +import { TransformListRow, useRefreshTransformList } from '../../common'; import { useDocumentationLinks } from '../../hooks/use_documentation_links'; import { useDeleteTransforms, useGetTransforms } from '../../hooks'; import { RedirectToCreateTransform } from '../../common/navigation'; import { AuthorizationContext, PrivilegesWrapper } from '../../lib/authorization'; -import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; - +import { BREADCRUMB_SECTION, breadcrumbService, docTitleService } from '../../services/navigation'; import { useRefreshInterval } from './components/transform_list/use_refresh_interval'; import { SearchSelection } from './components/search_selection'; import { TransformList } from './components/transform_list'; @@ -151,7 +142,7 @@ export const TransformManagement: FC = () => { return ( <> - { } rightSideItems={[docsLink]} bottomBorder + paddingSize={'none'} /> - + {typeof errorMessage !== 'undefined' && ( + + + + } + body={ +

+

{JSON.stringify(errorMessage)}
+

+ } + /> + )} + + {!isInitialized && } {isInitialized && ( <> @@ -180,36 +192,7 @@ export const TransformManagement: FC = () => { - {typeof errorMessage !== 'undefined' && ( - - - - - - - - } - body={ -

-

{JSON.stringify(errorMessage)}
-

- } - actions={[]} - /> -
-
-
- )} + {typeof errorMessage === 'undefined' && ( {transformIdsWithoutConfig ? ( @@ -268,7 +251,7 @@ export const TransformManagement: FC = () => { )} )} -
+ {isSearchSelectionVisible && ( { }); }); - // FLAKY: https://github.com/elastic/kibana/issues/157060 - describe.skip('Submitting', () => { + describe('Submitting', () => { it('updates the connector correctly', async () => { const { getByTestId } = appMockRenderer.render( { expect(getByTestId('test-connector-text-field')).toBeInTheDocument(); }); - await act(async () => { - await userEvent.clear(getByTestId('nameInput')); - await userEvent.type(getByTestId('nameInput'), 'My new name', { - delay: 100, - }); - await userEvent.type(getByTestId('test-connector-secret-text-field'), 'password', { - delay: 100, - }); - }); + userEvent.clear(getByTestId('nameInput')); + userEvent.type(getByTestId('nameInput'), 'My new name'); + userEvent.type(getByTestId('test-connector-secret-text-field'), 'password'); - act(() => { - userEvent.click(getByTestId('edit-connector-flyout-save-btn')); + await waitFor(() => { + expect(getByTestId('nameInput')).toHaveValue('My new name'); + expect(getByTestId('test-connector-secret-text-field')).toHaveValue('password'); }); + userEvent.click(getByTestId('edit-connector-flyout-save-btn')); + await waitFor(() => { expect(appMockRenderer.coreStart.http.put).toHaveBeenCalledWith( '/api/actions/connector/123', @@ -461,16 +457,19 @@ describe('EditConnectorFlyout', () => { }); userEvent.clear(getByTestId('test-connector-text-field')); - await userEvent.type(getByTestId('test-connector-text-field'), 'My updated text field', { - delay: 100, + userEvent.type(getByTestId('test-connector-text-field'), 'My updated text field'); + + await waitFor(() => { + expect(getByTestId('test-connector-text-field')).toHaveValue('My updated text field'); }); userEvent.clear(getByTestId('nameInput')); - await userEvent.type(getByTestId('nameInput'), 'My test', { - delay: 100, - }); - await userEvent.type(getByTestId('test-connector-secret-text-field'), 'password', { - delay: 100, + userEvent.type(getByTestId('nameInput'), 'My test'); + userEvent.type(getByTestId('test-connector-secret-text-field'), 'password'); + + await waitFor(() => { + expect(getByTestId('nameInput')).toHaveValue('My test'); + expect(getByTestId('test-connector-secret-text-field')).toHaveValue('password'); }); userEvent.click(getByTestId('edit-connector-flyout-save-btn')); @@ -494,20 +493,17 @@ describe('EditConnectorFlyout', () => { expect(getByTestId('test-connector-text-field')).toBeInTheDocument(); }); - await act(async () => { - await userEvent.clear(getByTestId('nameInput')); - await userEvent.type(getByTestId('nameInput'), 'My new name', { - delay: 100, - }); - await userEvent.type(getByTestId('test-connector-secret-text-field'), 'password', { - delay: 100, - }); - }); + userEvent.clear(getByTestId('nameInput')); + userEvent.type(getByTestId('nameInput'), 'My new name'); + userEvent.type(getByTestId('test-connector-secret-text-field'), 'password'); - act(() => { - userEvent.click(getByTestId('edit-connector-flyout-save-btn')); + await waitFor(() => { + expect(getByTestId('nameInput')).toHaveValue('My new name'); + expect(getByTestId('test-connector-secret-text-field')).toHaveValue('password'); }); + userEvent.click(getByTestId('edit-connector-flyout-save-btn')); + await waitFor(() => { expect(appMockRenderer.coreStart.http.put).toHaveBeenCalledWith( '/api/actions/connector/123', @@ -519,9 +515,7 @@ describe('EditConnectorFlyout', () => { expect(getByText('Changes Saved')).toBeInTheDocument(); - act(() => { - userEvent.click(getByTestId('edit-connector-flyout-close-btn')); - }); + userEvent.click(getByTestId('edit-connector-flyout-close-btn')); expect(onClose).toHaveBeenCalled(); expect(onConnectorUpdated).toHaveBeenCalledWith({ @@ -555,17 +549,15 @@ describe('EditConnectorFlyout', () => { expect(getByTestId('test-connector-error-text-field')).toBeInTheDocument(); }); - await act(async () => { - await userEvent.clear(getByTestId('nameInput')); - await userEvent.type(getByTestId('nameInput'), 'My new name', { - delay: 100, - }); - }); + userEvent.clear(getByTestId('nameInput')); + userEvent.type(getByTestId('nameInput'), 'My new name'); - act(() => { - userEvent.click(getByTestId('edit-connector-flyout-save-btn')); + await waitFor(() => { + expect(getByTestId('nameInput')).toHaveValue('My new name'); }); + userEvent.click(getByTestId('edit-connector-flyout-save-btn')); + await waitFor(() => { expect(getByText('Error on pre submit validator')).toBeInTheDocument(); }); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_table/hooks/use_columns/use_columns.ts b/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_table/hooks/use_columns/use_columns.ts index d6294e6c2fcc4..e7fba777a6fdb 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_table/hooks/use_columns/use_columns.ts +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_table/hooks/use_columns/use_columns.ts @@ -39,8 +39,6 @@ export interface UseColumnsResp { }>; } -const EMPTY_FIELDS = [{ field: '*', include_unmapped: true }]; - const fieldTypeToDataGridColumnTypeMapper = (fieldType: string | undefined) => { if (fieldType === 'date') return 'datetime'; if (fieldType === 'number') return 'numeric'; @@ -275,16 +273,8 @@ export const useColumns = ({ [columns, setColumnsAndSave, visibleColumns] ); - /* - * In some case such security, we need some special fields such as threat.enrichments which are - * not fetched when passing only EMPTY_FIELDS. Hence, we will fetch all the fields that user has added to the table. - * - * Additionally, system such as o11y needs fields which are not even added in the table such as rule_type_id and hence we - * additionly pass EMPTY_FIELDS so that it brings all fields apart from special fields - * - * */ const fieldsToFetch = useMemo( - () => [...columns.map((col) => ({ field: col.id, include_unmapped: true })), ...EMPTY_FIELDS], + () => [...columns.map((col) => ({ field: col.id, include_unmapped: true }))], [columns] ); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_data_grid.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_data_grid.tsx index 43199b924ba2d..3926e723f9d18 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_data_grid.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_data_grid.tsx @@ -64,6 +64,7 @@ export interface EventLogDataGrid { onChangeItemsPerPage: (pageSize: number) => void; onChangePage: (pageIndex: number) => void; onFlyoutOpen?: (runLog: IExecutionLog) => void; + onRuleNameClick?: (ruleId: string) => void; setVisibleColumns: (visibleColumns: string[]) => void; setSortingColumns: (sortingColumns: EuiDataGridSorting['columns']) => void; } @@ -167,6 +168,7 @@ export const EventLogDataGrid = (props: EventLogDataGrid) => { onChangeItemsPerPage, onChangePage, onFlyoutOpen, + onRuleNameClick, } = props; const { euiTheme } = useEuiTheme(); @@ -343,6 +345,7 @@ export const EventLogDataGrid = (props: EventLogDataGrid) => { ruleId={ruleId} spaceIds={spaceIds} useExecutionStatus={isRuleUsingExecutionStatus} + onRuleNameClick={onRuleNameClick} /> diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.test.tsx index 32e5c0e83d297..9618ebdb6b581 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.test.tsx @@ -147,4 +147,22 @@ describe('rule_event_log_list_cell_renderer', () => { window.location = savedLocation; }); + + it('calls onRuleNameClick if the function is provided', () => { + const onRuleNameClick = jest.fn(); + + const wrapper1 = shallow( + + ); + + wrapper1.find(EuiLink).simulate('click'); + + expect(onRuleNameClick).toHaveBeenCalledWith('1'); + }); }); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.tsx index f11c38a9dfe11..cf1446fc1b5e7 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/common/components/event_log/event_log_list_cell_renderer.tsx @@ -36,6 +36,7 @@ interface EventLogListCellRendererProps { ruleId?: string; spaceIds?: string[]; useExecutionStatus?: boolean; + onRuleNameClick?: (ruleId: string) => void; } export const EventLogListCellRenderer = (props: EventLogListCellRendererProps) => { @@ -47,6 +48,7 @@ export const EventLogListCellRenderer = (props: EventLogListCellRendererProps) = ruleId, spaceIds, useExecutionStatus = true, + onRuleNameClick, } = props; const spacesData = useSpacesData(); const { http } = useKibana().services; @@ -84,15 +86,21 @@ export const EventLogListCellRenderer = (props: EventLogListCellRendererProps) = return ruleRoute; }, [ruleId, ruleOnDifferentSpace, history, activeSpace, http, spaceIds]); - const onClickRuleName = useCallback(() => { - if (!ruleId) return; + const onRuleNameClickInternal = useCallback(() => { + if (!ruleId) { + return; + } + if (onRuleNameClick) { + onRuleNameClick(ruleId); + return; + } if (ruleOnDifferentSpace) { const newUrl = window.location.href.replace(window.location.pathname, ruleNamePathname); window.open(newUrl, '_blank'); return; } history.push(ruleNamePathname); - }, [ruleNamePathname, history, ruleOnDifferentSpace, ruleId]); + }, [ruleNamePathname, history, ruleOnDifferentSpace, ruleId, onRuleNameClick]); if (typeof value === 'undefined') { return null; @@ -113,7 +121,7 @@ export const EventLogListCellRenderer = (props: EventLogListCellRendererProps) = if (columnId === 'rule_name' && ruleId) { return ( - + {value} ); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/global_rule_event_log_list.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/global_rule_event_log_list.tsx index bb939e3e26180..4e3e49c15df66 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/global_rule_event_log_list.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/global_rule_event_log_list.tsx @@ -16,6 +16,7 @@ export interface GlobalRuleEventLogListProps { setHeaderActions?: RuleEventLogListCommonProps['setHeaderActions']; localStorageKey?: RuleEventLogListCommonProps['localStorageKey']; filteredRuleTypes?: RuleEventLogListCommonProps['filteredRuleTypes']; + onRuleNameClick?: RuleEventLogListCommonProps['onRuleNameClick']; } const GLOBAL_EVENT_LOG_LIST_STORAGE_KEY = @@ -31,7 +32,7 @@ const REFRESH_TOKEN = { }; export const GlobalRuleEventLogList = (props: GlobalRuleEventLogListProps) => { - const { setHeaderActions, localStorageKey, filteredRuleTypes } = props; + const { setHeaderActions, localStorageKey, filteredRuleTypes, onRuleNameClick } = props; const { spaces } = useKibana().services; // eslint-disable-next-line react-hooks/exhaustive-deps @@ -51,6 +52,7 @@ export const GlobalRuleEventLogList = (props: GlobalRuleEventLogListProps) => { localStorageKey={localStorageKey || GLOBAL_EVENT_LOG_LIST_STORAGE_KEY} filteredRuleTypes={filteredRuleTypes} setHeaderActions={setHeaderActions} + onRuleNameClick={onRuleNameClick} /> ); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_event_log_list_table.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_event_log_list_table.tsx index 32db0a686bff5..cf5fc82b42624 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_event_log_list_table.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/rule_details/components/rule_event_log_list_table.tsx @@ -95,6 +95,7 @@ export interface RuleEventLogListCommonProps { hasAllSpaceSwitch?: boolean; filteredRuleTypes?: string[]; setHeaderActions?: (components?: React.ReactNode[]) => void; + onRuleNameClick?: (ruleId: string) => void; } export type RuleEventLogListTableProps = @@ -116,6 +117,7 @@ export const RuleEventLogListTable = ( hasAllSpaceSwitch = false, setHeaderActions, filteredRuleTypes, + onRuleNameClick, } = props; const { uiSettings, notifications } = useKibana().services; @@ -627,6 +629,7 @@ export const RuleEventLogListTable = ( onChangeItemsPerPage={onChangeItemsPerPage} onChangePage={onChangePage} onFlyoutOpen={onFlyoutOpen} + onRuleNameClick={onRuleNameClick} setVisibleColumns={setVisibleColumns} setSortingColumns={setSortingColumns} /> diff --git a/x-pack/plugins/triggers_actions_ui/server/plugin.ts b/x-pack/plugins/triggers_actions_ui/server/plugin.ts index 0b3b02c325a45..04de44a088ed5 100644 --- a/x-pack/plugins/triggers_actions_ui/server/plugin.ts +++ b/x-pack/plugins/triggers_actions_ui/server/plugin.ts @@ -69,6 +69,4 @@ export class TriggersActionsPlugin implements Plugin data: this.data, }; } - - public async stop(): Promise {} } diff --git a/x-pack/test/api_integration/apis/monitoring/elasticsearch/fixtures/index_detail.json b/x-pack/test/api_integration/apis/monitoring/elasticsearch/fixtures/index_detail.json index 31c18ec43f414..461ca2d12c49f 100644 --- a/x-pack/test/api_integration/apis/monitoring/elasticsearch/fixtures/index_detail.json +++ b/x-pack/test/api_integration/apis/monitoring/elasticsearch/fixtures/index_detail.json @@ -30,82 +30,25 @@ "isDerivative": true }, "data": [ - [ - 1507235520000, - null - ], - [ - 1507235530000, - 0 - ], - [ - 1507235540000, - 0 - ], - [ - 1507235550000, - 0 - ], - [ - 1507235560000, - 0 - ], - [ - 1507235570000, - 0 - ], - [ - 1507235580000, - 0 - ], - [ - 1507235590000, - 0 - ], - [ - 1507235600000, - 0 - ], - [ - 1507235610000, - 0 - ], - [ - 1507235620000, - 0 - ], - [ - 1507235630000, - 0 - ], - [ - 1507235640000, - 0 - ], - [ - 1507235650000, - 0 - ], - [ - 1507235660000, - 0 - ], - [ - 1507235670000, - 0 - ], - [ - 1507235680000, - 0 - ], - [ - 1507235690000, - 0 - ], - [ - 1507235700000, - 0 - ] + [1507235520000, null], + [1507235530000, 0], + [1507235540000, 0], + [1507235550000, 0], + [1507235560000, 0], + [1507235570000, 0], + [1507235580000, 0], + [1507235590000, 0], + [1507235600000, 0], + [1507235610000, 0], + [1507235620000, 0], + [1507235630000, 0], + [1507235640000, 0], + [1507235650000, 0], + [1507235660000, 0], + [1507235670000, 0], + [1507235680000, 0], + [1507235690000, 0], + [1507235700000, 0] ] } ], @@ -129,82 +72,25 @@ "isDerivative": true }, "data": [ - [ - 1507235520000, - null - ], - [ - 1507235530000, - 0 - ], - [ - 1507235540000, - 0 - ], - [ - 1507235550000, - 0 - ], - [ - 1507235560000, - 0 - ], - [ - 1507235570000, - 0 - ], - [ - 1507235580000, - 0 - ], - [ - 1507235590000, - 0 - ], - [ - 1507235600000, - 0 - ], - [ - 1507235610000, - 0 - ], - [ - 1507235620000, - 0 - ], - [ - 1507235630000, - 0 - ], - [ - 1507235640000, - 0 - ], - [ - 1507235650000, - 0 - ], - [ - 1507235660000, - 0 - ], - [ - 1507235670000, - 0 - ], - [ - 1507235680000, - 0 - ], - [ - 1507235690000, - 0 - ], - [ - 1507235700000, - 0 - ] + [1507235520000, null], + [1507235530000, 0], + [1507235540000, 0], + [1507235550000, 0], + [1507235560000, 0], + [1507235570000, 0], + [1507235580000, 0], + [1507235590000, 0], + [1507235600000, 0], + [1507235610000, 0], + [1507235620000, 0], + [1507235630000, 0], + [1507235640000, 0], + [1507235650000, 0], + [1507235660000, 0], + [1507235670000, 0], + [1507235680000, 0], + [1507235690000, 0], + [1507235700000, 0] ] }, { @@ -226,82 +112,25 @@ "isDerivative": true }, "data": [ - [ - 1507235520000, - null - ], - [ - 1507235530000, - 0 - ], - [ - 1507235540000, - 0 - ], - [ - 1507235550000, - 0 - ], - [ - 1507235560000, - 0 - ], - [ - 1507235570000, - 0 - ], - [ - 1507235580000, - 0 - ], - [ - 1507235590000, - 0 - ], - [ - 1507235600000, - 0 - ], - [ - 1507235610000, - 0 - ], - [ - 1507235620000, - 0 - ], - [ - 1507235630000, - 0 - ], - [ - 1507235640000, - 0 - ], - [ - 1507235650000, - 0 - ], - [ - 1507235660000, - 0 - ], - [ - 1507235670000, - 0 - ], - [ - 1507235680000, - 0 - ], - [ - 1507235690000, - 0 - ], - [ - 1507235700000, - 0 - ] + [1507235520000, null], + [1507235530000, 0], + [1507235540000, 0], + [1507235550000, 0], + [1507235560000, 0], + [1507235570000, 0], + [1507235580000, 0], + [1507235590000, 0], + [1507235600000, 0], + [1507235610000, 0], + [1507235620000, 0], + [1507235630000, 0], + [1507235640000, 0], + [1507235650000, 0], + [1507235660000, 0], + [1507235670000, 0], + [1507235680000, 0], + [1507235690000, 0], + [1507235700000, 0] ] } ], @@ -325,82 +154,25 @@ "isDerivative": false }, "data": [ - [ - 1507235520000, - 9202023 - ], - [ - 1507235530000, - 9202023 - ], - [ - 1507235540000, - 9202023 - ], - [ - 1507235550000, - 9202023 - ], - [ - 1507235560000, - 9202023 - ], - [ - 1507235570000, - 9202023 - ], - [ - 1507235580000, - 9202023 - ], - [ - 1507235590000, - 9202023 - ], - [ - 1507235600000, - 9202023 - ], - [ - 1507235610000, - 9202023 - ], - [ - 1507235620000, - 9202023 - ], - [ - 1507235630000, - 9202023 - ], - [ - 1507235640000, - 9202023 - ], - [ - 1507235650000, - 9202023 - ], - [ - 1507235660000, - 9202023 - ], - [ - 1507235670000, - 9202023 - ], - [ - 1507235680000, - 9202023 - ], - [ - 1507235690000, - 9202023 - ], - [ - 1507235700000, - 9202023 - ] + [1507235520000, 9202023], + [1507235530000, 9202023], + [1507235540000, 9202023], + [1507235550000, 9202023], + [1507235560000, 9202023], + [1507235570000, 9202023], + [1507235580000, 9202023], + [1507235590000, 9202023], + [1507235600000, 9202023], + [1507235610000, 9202023], + [1507235620000, 9202023], + [1507235630000, 9202023], + [1507235640000, 9202023], + [1507235650000, 9202023], + [1507235660000, 9202023], + [1507235670000, 9202023], + [1507235680000, 9202023], + [1507235690000, 9202023], + [1507235700000, 9202023] ] }, { @@ -422,82 +194,25 @@ "isDerivative": false }, "data": [ - [ - 1507235520000, - 4601000 - ], - [ - 1507235530000, - 4601000 - ], - [ - 1507235540000, - 4601000 - ], - [ - 1507235550000, - 4601000 - ], - [ - 1507235560000, - 4601000 - ], - [ - 1507235570000, - 4601000 - ], - [ - 1507235580000, - 4601000 - ], - [ - 1507235590000, - 4601000 - ], - [ - 1507235600000, - 4601000 - ], - [ - 1507235610000, - 4601000 - ], - [ - 1507235620000, - 4601000 - ], - [ - 1507235630000, - 4601000 - ], - [ - 1507235640000, - 4601000 - ], - [ - 1507235650000, - 4601000 - ], - [ - 1507235660000, - 4601000 - ], - [ - 1507235670000, - 4601000 - ], - [ - 1507235680000, - 4601000 - ], - [ - 1507235690000, - 4601000 - ], - [ - 1507235700000, - 4601000 - ] + [1507235520000, 4601000], + [1507235530000, 4601000], + [1507235540000, 4601000], + [1507235550000, 4601000], + [1507235560000, 4601000], + [1507235570000, 4601000], + [1507235580000, 4601000], + [1507235590000, 4601000], + [1507235600000, 4601000], + [1507235610000, 4601000], + [1507235620000, 4601000], + [1507235630000, 4601000], + [1507235640000, 4601000], + [1507235650000, 4601000], + [1507235660000, 4601000], + [1507235670000, 4601000], + [1507235680000, 4601000], + [1507235690000, 4601000], + [1507235700000, 4601000] ] } ], @@ -516,86 +231,30 @@ "description": "Total number of documents, only including primary shards.", "units": "", "format": "0,0.[0]a", + "legendFormat": "0,0", "hasCalculation": false, "isDerivative": false }, "data": [ - [ - 1507235520000, - 628 - ], - [ - 1507235530000, - 628 - ], - [ - 1507235540000, - 628 - ], - [ - 1507235550000, - 628 - ], - [ - 1507235560000, - 628 - ], - [ - 1507235570000, - 628 - ], - [ - 1507235580000, - 628 - ], - [ - 1507235590000, - 628 - ], - [ - 1507235600000, - 628 - ], - [ - 1507235610000, - 628 - ], - [ - 1507235620000, - 628 - ], - [ - 1507235630000, - 628 - ], - [ - 1507235640000, - 628 - ], - [ - 1507235650000, - 628 - ], - [ - 1507235660000, - 628 - ], - [ - 1507235670000, - 628 - ], - [ - 1507235680000, - 628 - ], - [ - 1507235690000, - 628 - ], - [ - 1507235700000, - 628 - ] + [1507235520000, 628], + [1507235530000, 628], + [1507235540000, 628], + [1507235550000, 628], + [1507235560000, 628], + [1507235570000, 628], + [1507235580000, 628], + [1507235590000, 628], + [1507235600000, 628], + [1507235610000, 628], + [1507235620000, 628], + [1507235630000, 628], + [1507235640000, 628], + [1507235650000, 628], + [1507235660000, 628], + [1507235670000, 628], + [1507235680000, 628], + [1507235690000, 628], + [1507235700000, 628] ] } ], @@ -619,82 +278,25 @@ "isDerivative": false }, "data": [ - [ - 1507235520000, - 60 - ], - [ - 1507235530000, - 60 - ], - [ - 1507235540000, - 60 - ], - [ - 1507235550000, - 60 - ], - [ - 1507235560000, - 60 - ], - [ - 1507235570000, - 60 - ], - [ - 1507235580000, - 60 - ], - [ - 1507235590000, - 60 - ], - [ - 1507235600000, - 60 - ], - [ - 1507235610000, - 60 - ], - [ - 1507235620000, - 60 - ], - [ - 1507235630000, - 60 - ], - [ - 1507235640000, - 60 - ], - [ - 1507235650000, - 60 - ], - [ - 1507235660000, - 60 - ], - [ - 1507235670000, - 60 - ], - [ - 1507235680000, - 60 - ], - [ - 1507235690000, - 60 - ], - [ - 1507235700000, - 60 - ] + [1507235520000, 60], + [1507235530000, 60], + [1507235540000, 60], + [1507235550000, 60], + [1507235560000, 60], + [1507235570000, 60], + [1507235580000, 60], + [1507235590000, 60], + [1507235600000, 60], + [1507235610000, 60], + [1507235620000, 60], + [1507235630000, 60], + [1507235640000, 60], + [1507235650000, 60], + [1507235660000, 60], + [1507235670000, 60], + [1507235680000, 60], + [1507235690000, 60], + [1507235700000, 60] ] }, { @@ -716,82 +318,25 @@ "isDerivative": false }, "data": [ - [ - 1507235520000, - 30 - ], - [ - 1507235530000, - 30 - ], - [ - 1507235540000, - 30 - ], - [ - 1507235550000, - 30 - ], - [ - 1507235560000, - 30 - ], - [ - 1507235570000, - 30 - ], - [ - 1507235580000, - 30 - ], - [ - 1507235590000, - 30 - ], - [ - 1507235600000, - 30 - ], - [ - 1507235610000, - 30 - ], - [ - 1507235620000, - 30 - ], - [ - 1507235630000, - 30 - ], - [ - 1507235640000, - 30 - ], - [ - 1507235650000, - 30 - ], - [ - 1507235660000, - 30 - ], - [ - 1507235670000, - 30 - ], - [ - 1507235680000, - 30 - ], - [ - 1507235690000, - 30 - ], - [ - 1507235700000, - 30 - ] + [1507235520000, 30], + [1507235530000, 30], + [1507235540000, 30], + [1507235550000, 30], + [1507235560000, 30], + [1507235570000, 30], + [1507235580000, 30], + [1507235590000, 30], + [1507235600000, 30], + [1507235610000, 30], + [1507235620000, 30], + [1507235630000, 30], + [1507235640000, 30], + [1507235650000, 30], + [1507235660000, 30], + [1507235670000, 30], + [1507235680000, 30], + [1507235690000, 30], + [1507235700000, 30] ] } ] @@ -899,18 +444,14 @@ "shardCount": 5, "indexCount": 1, "name": "whatever-01", - "node_ids": [ - "jUT5KdxfRbORSCWkb5zjmA" - ], + "node_ids": ["jUT5KdxfRbORSCWkb5zjmA"], "type": "master" }, "xcP6ue7eRCieNNitFTT0EA": { "shardCount": 5, "indexCount": 1, "name": "whatever-02", - "node_ids": [ - "xcP6ue7eRCieNNitFTT0EA" - ], + "node_ids": ["xcP6ue7eRCieNNitFTT0EA"], "type": "node" } } @@ -920,18 +461,14 @@ "shardCount": 5, "indexCount": 1, "name": "whatever-01", - "node_ids": [ - "jUT5KdxfRbORSCWkb5zjmA" - ], + "node_ids": ["jUT5KdxfRbORSCWkb5zjmA"], "type": "master" }, "xcP6ue7eRCieNNitFTT0EA": { "shardCount": 5, "indexCount": 1, "name": "whatever-02", - "node_ids": [ - "xcP6ue7eRCieNNitFTT0EA" - ], + "node_ids": ["xcP6ue7eRCieNNitFTT0EA"], "type": "node" } }, diff --git a/x-pack/test/fleet_api_integration/apis/agent_policy/agent_policy.ts b/x-pack/test/fleet_api_integration/apis/agent_policy/agent_policy.ts index 25eb5e5994083..4c52547e67aef 100644 --- a/x-pack/test/fleet_api_integration/apis/agent_policy/agent_policy.ts +++ b/x-pack/test/fleet_api_integration/apis/agent_policy/agent_policy.ts @@ -407,7 +407,16 @@ export default function (providerContext: FtrProviderContext) { await esArchiver.loadIfNeeded('x-pack/test/functional/es_archives/fleet/agents'); }); setupFleetAndAgents(providerContext); + const createdPolicyIds: string[] = []; after(async () => { + const deletedPromises = createdPolicyIds.map((agentPolicyId) => + supertest + .post(`/api/fleet/agent_policies/delete`) + .set('kbn-xsrf', 'xxxx') + .send({ agentPolicyId }) + .expect(200) + ); + await Promise.all(deletedPromises); await esArchiver.unload('x-pack/test/functional/es_archives/fleet/agents'); if (systemPkgVersion) { await supertest.delete(`/api/fleet/epm/packages/system-${systemPkgVersion}`); @@ -482,6 +491,88 @@ export default function (providerContext: FtrProviderContext) { expect(newPolicy.inactivity_timeout).to.eql(123); }); + it('should copy tamper protection', async () => { + const { + body: { item: originalPolicy }, + } = await supertest + .post(`/api/fleet/agent_policies`) + .set('kbn-xsrf', 'xxxx') + .send({ + name: 'Tamper Protection test', + description: '', + namespace: 'default', + }) + .expect(200); + + // add endpoint package policy, which is required for tamper protection + await supertest + .post(`/api/fleet/package_policies`) + .set('kbn-xsrf', 'xxxx') + .send({ + name: 'endpoint-1', + description: '', + namespace: 'default', + policy_id: originalPolicy.id, + enabled: true, + inputs: [ + { + enabled: true, + streams: [], + type: 'ENDPOINT_INTEGRATION_CONFIG', + config: { + _config: { + value: { + type: 'endpoint', + endpointConfig: { + preset: 'EDRComplete', + }, + }, + }, + }, + }, + ], + package: { + name: 'endpoint', + title: 'Elastic Endpoint', + version: '8.10.2', + }, + }) + .expect(200); + + packagePoliciesToDeleteIds.push('endpoint-1'); + + // switch is protected to true + const { + body: { item: policyWithTamperProtection }, + } = await supertest + .put(`/api/fleet/agent_policies/${originalPolicy.id}`) + .set('kbn-xsrf', 'xxxx') + .send({ + name: 'Tamper Protection test', + is_managed: false, + namespace: 'default', + monitoring_enabled: ['logs', 'metrics'], + is_protected: true, + }) + .expect(200); + + createdPolicyIds.push(policyWithTamperProtection.id); + + // test copy + const { + body: { item: newPolicy }, + } = await supertest + .post(`/api/fleet/agent_policies/${policyWithTamperProtection.id}/copy`) + .set('kbn-xsrf', 'xxxx') + .send({ + name: 'Tamper Protection test copy', + description: 'Test', + }) + .expect(200); + + expect(newPolicy.is_protected).to.eql(true); + }); + it('should increment package policy copy names', async () => { async function getSystemPackagePolicyCopyVersion(policyId: string) { const { diff --git a/x-pack/test/functional/apps/transform/creation/index_pattern/continuous_transform.ts b/x-pack/test/functional/apps/transform/creation/index_pattern/continuous_transform.ts index a284070fa7b6b..d050a1a9013c6 100644 --- a/x-pack/test/functional/apps/transform/creation/index_pattern/continuous_transform.ts +++ b/x-pack/test/functional/apps/transform/creation/index_pattern/continuous_transform.ts @@ -24,7 +24,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { const security = getService('security'); const pageObjects = getPageObjects(['discover']); - describe('creation_continuous_transform', function () { + // Failing: See https://github.com/elastic/kibana/issues/165146 + // Failing: See https://github.com/elastic/kibana/issues/165144 + describe.skip('creation_continuous_transform', function () { before(async () => { // installing the sample data with test user with super user role and then switching roles with limited privileges await security.testUser.setRoles(['superuser'], { skipBrowserRefresh: true }); @@ -513,7 +515,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) { await transform.wizard.assertCopyToClipboardButtonEnabled(true); }); - it('runs the transform and displays it correctly in the job list', async () => { + // FLAKY: https://github.com/elastic/kibana/issues/158612 + // FLAKY: https://github.com/elastic/kibana/issues/158613 + it.skip('runs the transform and displays it correctly in the job list', async () => { await transform.testExecution.logTestStep('creates the transform'); await transform.wizard.createTransform(); diff --git a/x-pack/test/monitoring_api_integration/fixtures/elasticsearch/index_detail.json b/x-pack/test/monitoring_api_integration/fixtures/elasticsearch/index_detail.json index a26fe593b56a8..c56f318f169d7 100644 --- a/x-pack/test/monitoring_api_integration/fixtures/elasticsearch/index_detail.json +++ b/x-pack/test/monitoring_api_integration/fixtures/elasticsearch/index_detail.json @@ -1 +1,506 @@ -{"indexSummary":{"documents":37,"dataSize":{"primaries":284930,"total":284930},"unassignedShards":1,"totalShards":2,"status":"yellow"},"metrics":{"index_search_request_rate":[{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.total.search.query_total","metricAgg":"max","label":"Total Shards","title":"Search Rate","description":"Number of search requests being executed across primary and replica shards. A single search can run against multiple shards!","units":"/s","format":"0,0.[00]","hasCalculation":false,"isDerivative":true},"data":[[1674575130000,0.7],[1674575140000,0.7],[1674575150000,0.7],[1674575160000,0.7],[1674575170000,0.7],[1674575180000,0.7],[1674575190000,0.7],[1674575200000,0],[1674575210000,0.7],[1674575220000,0.7],[1674575230000,0.7],[1674575240000,0.7],[1674575250000,0.7],[1674575260000,0.7],[1674575270000,0.7],[1674575280000,0.7],[1674575290000,0.7],[1674575300000,0.7],[1674575310000,0.7],[1674575320000,0.7],[1674575330000,0.7],[1674575340000,0.7],[1674575350000,0.7],[1674575360000,0.7],[1674575370000,0.7],[1674575380000,0.7],[1674575390000,0.7],[1674575400000,0.7],[1674575410000,0.7],[1674575420000,0.7],[1674575430000,0.7],[1674575440000,0.7],[1674575450000,0.7],[1674575460000,0.7],[1674575470000,0.7],[1674575480000,0.7]]}],"index_request_rate":[{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.total.indexing.index_total","metricAgg":"max","label":"Total Shards","title":"Indexing Rate","description":"Number of documents being indexed for primary and replica shards.","units":"/s","format":"0,0.[00]","hasCalculation":false,"isDerivative":true},"data":[[1674575130000,0.1],[1674575140000,0.1],[1674575150000,0.1],[1674575160000,0.1],[1674575170000,0.1],[1674575180000,0.1],[1674575190000,0.1],[1674575200000,0.1],[1674575210000,0.1],[1674575220000,0.1],[1674575230000,0.1],[1674575240000,0.1],[1674575250000,0.1],[1674575260000,0.1],[1674575270000,0.1],[1674575280000,0.1],[1674575290000,0.1],[1674575300000,0.1],[1674575310000,0.1],[1674575320000,0.1],[1674575330000,0.1],[1674575340000,0.1],[1674575350000,0.1],[1674575360000,0.1],[1674575370000,0.1],[1674575380000,0.1],[1674575390000,0.1],[1674575400000,0.1],[1674575410000,0.1],[1674575420000,0.1],[1674575430000,0.1],[1674575440000,0.1],[1674575450000,0.1],[1674575460000,0.1],[1674575470000,0.1],[1674575480000,0.1]]},{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.primaries.indexing.index_total","metricAgg":"max","label":"Primary Shards","title":"Indexing Rate","description":"Number of documents being indexed for primary shards.","units":"/s","format":"0,0.[00]","hasCalculation":false,"isDerivative":true},"data":[[1674575130000,0.1],[1674575140000,0.1],[1674575150000,0.1],[1674575160000,0.1],[1674575170000,0.1],[1674575180000,0.1],[1674575190000,0.1],[1674575200000,0.1],[1674575210000,0.1],[1674575220000,0.1],[1674575230000,0.1],[1674575240000,0.1],[1674575250000,0.1],[1674575260000,0.1],[1674575270000,0.1],[1674575280000,0.1],[1674575290000,0.1],[1674575300000,0.1],[1674575310000,0.1],[1674575320000,0.1],[1674575330000,0.1],[1674575340000,0.1],[1674575350000,0.1],[1674575360000,0.1],[1674575370000,0.1],[1674575380000,0.1],[1674575390000,0.1],[1674575400000,0.1],[1674575410000,0.1],[1674575420000,0.1],[1674575430000,0.1],[1674575440000,0.1],[1674575450000,0.1],[1674575460000,0.1],[1674575470000,0.1],[1674575480000,0.1]]}],"index_size":[{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.total.store.size_in_bytes","metricAgg":"max","label":"Store","title":"Disk","description":"Size of primary and replica shards on disk.","units":"B","format":"0,0.0 b","hasCalculation":false,"isDerivative":false},"data":[[1674575130000,50899],[1674575140000,76233],[1674575150000,76233],[1674575160000,101576],[1674575170000,126899],[1674575180000,152252],[1674575190000,202928],[1674575200000,228267],[1674575210000,228267],[1674575220000,253618],[1674575230000,69951],[1674575240000,95286],[1674575250000,145956],[1674575260000,171294],[1674575270000,171294],[1674575280000,196628],[1674575290000,221969],[1674575300000,247300],[1674575310000,88704],[1674575320000,114046],[1674575330000,114046],[1674575340000,139381],[1674575350000,164723],[1674575360000,190065],[1674575370000,240733],[1674575380000,266068],[1674575390000,266068],[1674575400000,291411],[1674575410000,107555],[1674575420000,132893],[1674575430000,183559],[1674575440000,208909],[1674575450000,208909],[1674575460000,234251],[1674575470000,259596],[1674575480000,284930]]},{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.primaries.store.size_in_bytes","metricAgg":"max","label":"Store (Primaries)","title":"Disk","description":"Size of primary shards on disk.","units":"B","format":"0,0.0 b","hasCalculation":false,"isDerivative":false},"data":[[1674575130000,50899],[1674575140000,76233],[1674575150000,76233],[1674575160000,101576],[1674575170000,126899],[1674575180000,152252],[1674575190000,202928],[1674575200000,228267],[1674575210000,228267],[1674575220000,253618],[1674575230000,69951],[1674575240000,95286],[1674575250000,145956],[1674575260000,171294],[1674575270000,171294],[1674575280000,196628],[1674575290000,221969],[1674575300000,247300],[1674575310000,88704],[1674575320000,114046],[1674575330000,114046],[1674575340000,139381],[1674575350000,164723],[1674575360000,190065],[1674575370000,240733],[1674575380000,266068],[1674575390000,266068],[1674575400000,291411],[1674575410000,107555],[1674575420000,132893],[1674575430000,183559],[1674575440000,208909],[1674575450000,208909],[1674575460000,234251],[1674575470000,259596],[1674575480000,284930]]}],"index_document_count":[{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.primaries.docs.count","metricAgg":"max","label":"Document Count","description":"Total number of documents, only including primary shards.","units":"","format":"0,0.[0]a","hasCalculation":false,"isDerivative":false},"data":[[1674575130000,2],[1674575140000,3],[1674575150000,4],[1674575160000,5],[1674575170000,6],[1674575180000,7],[1674575190000,8],[1674575200000,9],[1674575210000,10],[1674575220000,11],[1674575230000,12],[1674575240000,13],[1674575250000,14],[1674575260000,15],[1674575270000,16],[1674575280000,17],[1674575290000,18],[1674575300000,19],[1674575310000,20],[1674575320000,21],[1674575330000,22],[1674575340000,23],[1674575350000,24],[1674575360000,25],[1674575370000,26],[1674575380000,27],[1674575390000,28],[1674575400000,29],[1674575410000,30],[1674575420000,31],[1674575430000,32],[1674575440000,33],[1674575450000,34],[1674575460000,35],[1674575470000,36],[1674575480000,37]]}],"index_segment_count":[{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.total.segments.count","metricAgg":"max","label":"Total","title":"Segment Count","description":"Number of segments for primary and replica shards.","units":"","format":"0,0.[00]","hasCalculation":false,"isDerivative":false},"data":[[1674575130000,2],[1674575140000,3],[1674575150000,4],[1674575160000,5],[1674575170000,6],[1674575180000,7],[1674575190000,8],[1674575200000,9],[1674575210000,10],[1674575220000,2],[1674575230000,3],[1674575240000,4],[1674575250000,5],[1674575260000,6],[1674575270000,7],[1674575280000,8],[1674575290000,9],[1674575300000,10],[1674575310000,2],[1674575320000,3],[1674575330000,4],[1674575340000,5],[1674575350000,6],[1674575360000,7],[1674575370000,8],[1674575380000,9],[1674575390000,10],[1674575400000,2],[1674575410000,3],[1674575420000,4],[1674575430000,5],[1674575440000,6],[1674575450000,7],[1674575460000,8],[1674575470000,9],[1674575480000,10]]},{"bucket_size":"10 seconds","timeRange":{"min":1674575130000,"max":1674575490000},"metric":{"app":"elasticsearch","field":"index_stats.primaries.segments.count","metricAgg":"max","label":"Primaries","title":"Segment Count","description":"Number of segments for primary shards.","units":"","format":"0,0.[00]","hasCalculation":false,"isDerivative":false},"data":[[1674575130000,2],[1674575140000,3],[1674575150000,4],[1674575160000,5],[1674575170000,6],[1674575180000,7],[1674575190000,8],[1674575200000,9],[1674575210000,10],[1674575220000,2],[1674575230000,3],[1674575240000,4],[1674575250000,5],[1674575260000,6],[1674575270000,7],[1674575280000,8],[1674575290000,9],[1674575300000,10],[1674575310000,2],[1674575320000,3],[1674575330000,4],[1674575340000,5],[1674575350000,6],[1674575360000,7],[1674575370000,8],[1674575380000,9],[1674575390000,10],[1674575400000,2],[1674575410000,3],[1674575420000,4],[1674575430000,5],[1674575440000,6],[1674575450000,7],[1674575460000,8],[1674575470000,9],[1674575480000,10]]}]},"logs":{"enabled":false,"logs":[],"reason":{"indexPatternExists":false,"indexPatternInTimeRangeExists":false,"typeExistsAtAnyTime":false,"typeExists":false,"usingStructuredLogs":false,"clusterExists":false,"nodeExists":null,"indexExists":false},"limit":10},"shards":[{"index":".ds-metrics-elasticsearch.stack_monitoring.cluster_stats-default-2023.01.24-000001","node":"1ksGajLvSW-OwnAYH-X3Sg","primary":true,"relocating_node":null,"shard":0,"state":"STARTED"},{"index":".ds-metrics-elasticsearch.stack_monitoring.cluster_stats-default-2023.01.24-000001","primary":false,"relocating_node":null,"shard":0,"state":"UNASSIGNED"}],"shardStats":{"nodes":{"1ksGajLvSW-OwnAYH-X3Sg":{"shardCount":1,"indexCount":1,"name":"712a47f7f7df","node_ids":["1ksGajLvSW-OwnAYH-X3Sg"],"type":"master"}}},"nodes":{"1ksGajLvSW-OwnAYH-X3Sg":{"shardCount":1,"indexCount":1,"name":"712a47f7f7df","node_ids":["1ksGajLvSW-OwnAYH-X3Sg"],"type":"master"}},"stateUuid":"v1_XbWynRRGKGG7gX7U86g"} +{ + "indexSummary": { + "documents": 37, + "dataSize": { "primaries": 284930, "total": 284930 }, + "unassignedShards": 1, + "totalShards": 2, + "status": "yellow" + }, + "metrics": { + "index_search_request_rate": [ + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.total.search.query_total", + "metricAgg": "max", + "label": "Total Shards", + "title": "Search Rate", + "description": "Number of search requests being executed across primary and replica shards. A single search can run against multiple shards!", + "units": "/s", + "format": "0,0.[00]", + "hasCalculation": false, + "isDerivative": true + }, + "data": [ + [1674575130000, 0.7], + [1674575140000, 0.7], + [1674575150000, 0.7], + [1674575160000, 0.7], + [1674575170000, 0.7], + [1674575180000, 0.7], + [1674575190000, 0.7], + [1674575200000, 0], + [1674575210000, 0.7], + [1674575220000, 0.7], + [1674575230000, 0.7], + [1674575240000, 0.7], + [1674575250000, 0.7], + [1674575260000, 0.7], + [1674575270000, 0.7], + [1674575280000, 0.7], + [1674575290000, 0.7], + [1674575300000, 0.7], + [1674575310000, 0.7], + [1674575320000, 0.7], + [1674575330000, 0.7], + [1674575340000, 0.7], + [1674575350000, 0.7], + [1674575360000, 0.7], + [1674575370000, 0.7], + [1674575380000, 0.7], + [1674575390000, 0.7], + [1674575400000, 0.7], + [1674575410000, 0.7], + [1674575420000, 0.7], + [1674575430000, 0.7], + [1674575440000, 0.7], + [1674575450000, 0.7], + [1674575460000, 0.7], + [1674575470000, 0.7], + [1674575480000, 0.7] + ] + } + ], + "index_request_rate": [ + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.total.indexing.index_total", + "metricAgg": "max", + "label": "Total Shards", + "title": "Indexing Rate", + "description": "Number of documents being indexed for primary and replica shards.", + "units": "/s", + "format": "0,0.[00]", + "hasCalculation": false, + "isDerivative": true + }, + "data": [ + [1674575130000, 0.1], + [1674575140000, 0.1], + [1674575150000, 0.1], + [1674575160000, 0.1], + [1674575170000, 0.1], + [1674575180000, 0.1], + [1674575190000, 0.1], + [1674575200000, 0.1], + [1674575210000, 0.1], + [1674575220000, 0.1], + [1674575230000, 0.1], + [1674575240000, 0.1], + [1674575250000, 0.1], + [1674575260000, 0.1], + [1674575270000, 0.1], + [1674575280000, 0.1], + [1674575290000, 0.1], + [1674575300000, 0.1], + [1674575310000, 0.1], + [1674575320000, 0.1], + [1674575330000, 0.1], + [1674575340000, 0.1], + [1674575350000, 0.1], + [1674575360000, 0.1], + [1674575370000, 0.1], + [1674575380000, 0.1], + [1674575390000, 0.1], + [1674575400000, 0.1], + [1674575410000, 0.1], + [1674575420000, 0.1], + [1674575430000, 0.1], + [1674575440000, 0.1], + [1674575450000, 0.1], + [1674575460000, 0.1], + [1674575470000, 0.1], + [1674575480000, 0.1] + ] + }, + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.primaries.indexing.index_total", + "metricAgg": "max", + "label": "Primary Shards", + "title": "Indexing Rate", + "description": "Number of documents being indexed for primary shards.", + "units": "/s", + "format": "0,0.[00]", + "hasCalculation": false, + "isDerivative": true + }, + "data": [ + [1674575130000, 0.1], + [1674575140000, 0.1], + [1674575150000, 0.1], + [1674575160000, 0.1], + [1674575170000, 0.1], + [1674575180000, 0.1], + [1674575190000, 0.1], + [1674575200000, 0.1], + [1674575210000, 0.1], + [1674575220000, 0.1], + [1674575230000, 0.1], + [1674575240000, 0.1], + [1674575250000, 0.1], + [1674575260000, 0.1], + [1674575270000, 0.1], + [1674575280000, 0.1], + [1674575290000, 0.1], + [1674575300000, 0.1], + [1674575310000, 0.1], + [1674575320000, 0.1], + [1674575330000, 0.1], + [1674575340000, 0.1], + [1674575350000, 0.1], + [1674575360000, 0.1], + [1674575370000, 0.1], + [1674575380000, 0.1], + [1674575390000, 0.1], + [1674575400000, 0.1], + [1674575410000, 0.1], + [1674575420000, 0.1], + [1674575430000, 0.1], + [1674575440000, 0.1], + [1674575450000, 0.1], + [1674575460000, 0.1], + [1674575470000, 0.1], + [1674575480000, 0.1] + ] + } + ], + "index_size": [ + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.total.store.size_in_bytes", + "metricAgg": "max", + "label": "Store", + "title": "Disk", + "description": "Size of primary and replica shards on disk.", + "units": "B", + "format": "0,0.0 b", + "hasCalculation": false, + "isDerivative": false + }, + "data": [ + [1674575130000, 50899], + [1674575140000, 76233], + [1674575150000, 76233], + [1674575160000, 101576], + [1674575170000, 126899], + [1674575180000, 152252], + [1674575190000, 202928], + [1674575200000, 228267], + [1674575210000, 228267], + [1674575220000, 253618], + [1674575230000, 69951], + [1674575240000, 95286], + [1674575250000, 145956], + [1674575260000, 171294], + [1674575270000, 171294], + [1674575280000, 196628], + [1674575290000, 221969], + [1674575300000, 247300], + [1674575310000, 88704], + [1674575320000, 114046], + [1674575330000, 114046], + [1674575340000, 139381], + [1674575350000, 164723], + [1674575360000, 190065], + [1674575370000, 240733], + [1674575380000, 266068], + [1674575390000, 266068], + [1674575400000, 291411], + [1674575410000, 107555], + [1674575420000, 132893], + [1674575430000, 183559], + [1674575440000, 208909], + [1674575450000, 208909], + [1674575460000, 234251], + [1674575470000, 259596], + [1674575480000, 284930] + ] + }, + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.primaries.store.size_in_bytes", + "metricAgg": "max", + "label": "Store (Primaries)", + "title": "Disk", + "description": "Size of primary shards on disk.", + "units": "B", + "format": "0,0.0 b", + "hasCalculation": false, + "isDerivative": false + }, + "data": [ + [1674575130000, 50899], + [1674575140000, 76233], + [1674575150000, 76233], + [1674575160000, 101576], + [1674575170000, 126899], + [1674575180000, 152252], + [1674575190000, 202928], + [1674575200000, 228267], + [1674575210000, 228267], + [1674575220000, 253618], + [1674575230000, 69951], + [1674575240000, 95286], + [1674575250000, 145956], + [1674575260000, 171294], + [1674575270000, 171294], + [1674575280000, 196628], + [1674575290000, 221969], + [1674575300000, 247300], + [1674575310000, 88704], + [1674575320000, 114046], + [1674575330000, 114046], + [1674575340000, 139381], + [1674575350000, 164723], + [1674575360000, 190065], + [1674575370000, 240733], + [1674575380000, 266068], + [1674575390000, 266068], + [1674575400000, 291411], + [1674575410000, 107555], + [1674575420000, 132893], + [1674575430000, 183559], + [1674575440000, 208909], + [1674575450000, 208909], + [1674575460000, 234251], + [1674575470000, 259596], + [1674575480000, 284930] + ] + } + ], + "index_document_count": [ + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.primaries.docs.count", + "metricAgg": "max", + "label": "Document Count", + "description": "Total number of documents, only including primary shards.", + "units": "", + "format": "0,0.[0]a", + "legendFormat": "0,0", + "hasCalculation": false, + "isDerivative": false + }, + "data": [ + [1674575130000, 2], + [1674575140000, 3], + [1674575150000, 4], + [1674575160000, 5], + [1674575170000, 6], + [1674575180000, 7], + [1674575190000, 8], + [1674575200000, 9], + [1674575210000, 10], + [1674575220000, 11], + [1674575230000, 12], + [1674575240000, 13], + [1674575250000, 14], + [1674575260000, 15], + [1674575270000, 16], + [1674575280000, 17], + [1674575290000, 18], + [1674575300000, 19], + [1674575310000, 20], + [1674575320000, 21], + [1674575330000, 22], + [1674575340000, 23], + [1674575350000, 24], + [1674575360000, 25], + [1674575370000, 26], + [1674575380000, 27], + [1674575390000, 28], + [1674575400000, 29], + [1674575410000, 30], + [1674575420000, 31], + [1674575430000, 32], + [1674575440000, 33], + [1674575450000, 34], + [1674575460000, 35], + [1674575470000, 36], + [1674575480000, 37] + ] + } + ], + "index_segment_count": [ + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.total.segments.count", + "metricAgg": "max", + "label": "Total", + "title": "Segment Count", + "description": "Number of segments for primary and replica shards.", + "units": "", + "format": "0,0.[00]", + "hasCalculation": false, + "isDerivative": false + }, + "data": [ + [1674575130000, 2], + [1674575140000, 3], + [1674575150000, 4], + [1674575160000, 5], + [1674575170000, 6], + [1674575180000, 7], + [1674575190000, 8], + [1674575200000, 9], + [1674575210000, 10], + [1674575220000, 2], + [1674575230000, 3], + [1674575240000, 4], + [1674575250000, 5], + [1674575260000, 6], + [1674575270000, 7], + [1674575280000, 8], + [1674575290000, 9], + [1674575300000, 10], + [1674575310000, 2], + [1674575320000, 3], + [1674575330000, 4], + [1674575340000, 5], + [1674575350000, 6], + [1674575360000, 7], + [1674575370000, 8], + [1674575380000, 9], + [1674575390000, 10], + [1674575400000, 2], + [1674575410000, 3], + [1674575420000, 4], + [1674575430000, 5], + [1674575440000, 6], + [1674575450000, 7], + [1674575460000, 8], + [1674575470000, 9], + [1674575480000, 10] + ] + }, + { + "bucket_size": "10 seconds", + "timeRange": { "min": 1674575130000, "max": 1674575490000 }, + "metric": { + "app": "elasticsearch", + "field": "index_stats.primaries.segments.count", + "metricAgg": "max", + "label": "Primaries", + "title": "Segment Count", + "description": "Number of segments for primary shards.", + "units": "", + "format": "0,0.[00]", + "hasCalculation": false, + "isDerivative": false + }, + "data": [ + [1674575130000, 2], + [1674575140000, 3], + [1674575150000, 4], + [1674575160000, 5], + [1674575170000, 6], + [1674575180000, 7], + [1674575190000, 8], + [1674575200000, 9], + [1674575210000, 10], + [1674575220000, 2], + [1674575230000, 3], + [1674575240000, 4], + [1674575250000, 5], + [1674575260000, 6], + [1674575270000, 7], + [1674575280000, 8], + [1674575290000, 9], + [1674575300000, 10], + [1674575310000, 2], + [1674575320000, 3], + [1674575330000, 4], + [1674575340000, 5], + [1674575350000, 6], + [1674575360000, 7], + [1674575370000, 8], + [1674575380000, 9], + [1674575390000, 10], + [1674575400000, 2], + [1674575410000, 3], + [1674575420000, 4], + [1674575430000, 5], + [1674575440000, 6], + [1674575450000, 7], + [1674575460000, 8], + [1674575470000, 9], + [1674575480000, 10] + ] + } + ] + }, + "logs": { + "enabled": false, + "logs": [], + "reason": { + "indexPatternExists": false, + "indexPatternInTimeRangeExists": false, + "typeExistsAtAnyTime": false, + "typeExists": false, + "usingStructuredLogs": false, + "clusterExists": false, + "nodeExists": null, + "indexExists": false + }, + "limit": 10 + }, + "shards": [ + { + "index": ".ds-metrics-elasticsearch.stack_monitoring.cluster_stats-default-2023.01.24-000001", + "node": "1ksGajLvSW-OwnAYH-X3Sg", + "primary": true, + "relocating_node": null, + "shard": 0, + "state": "STARTED" + }, + { + "index": ".ds-metrics-elasticsearch.stack_monitoring.cluster_stats-default-2023.01.24-000001", + "primary": false, + "relocating_node": null, + "shard": 0, + "state": "UNASSIGNED" + } + ], + "shardStats": { + "nodes": { + "1ksGajLvSW-OwnAYH-X3Sg": { + "shardCount": 1, + "indexCount": 1, + "name": "712a47f7f7df", + "node_ids": ["1ksGajLvSW-OwnAYH-X3Sg"], + "type": "master" + } + } + }, + "nodes": { + "1ksGajLvSW-OwnAYH-X3Sg": { + "shardCount": 1, + "indexCount": 1, + "name": "712a47f7f7df", + "node_ids": ["1ksGajLvSW-OwnAYH-X3Sg"], + "type": "master" + } + }, + "stateUuid": "v1_XbWynRRGKGG7gX7U86g" +} diff --git a/x-pack/test_serverless/shared/config.base.ts b/x-pack/test_serverless/shared/config.base.ts index 4a61bf164be2c..f46cf4915c232 100644 --- a/x-pack/test_serverless/shared/config.base.ts +++ b/x-pack/test_serverless/shared/config.base.ts @@ -75,6 +75,7 @@ export default async () => { `--server.restrictInternalApis=true`, `--server.port=${servers.kibana.port}`, '--status.allowAnonymous=true', + `--migrations.zdt.runOnRoles=${JSON.stringify(['ui'])}`, // We shouldn't embed credentials into the URL since Kibana requests to Elasticsearch should // either include `kibanaServerTestUser` credentials, or credentials provided by the test // user, or none at all in case anonymous access is used. diff --git a/yarn.lock b/yarn.lock index 7264182e33b4a..52e67729e7891 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1320,6 +1320,11 @@ resolved "https://registry.yarnpkg.com/@cbor-extract/cbor-extract-win32-x64/-/cbor-extract-win32-x64-2.0.0.tgz#4d4ad91527a8313c3db1e2167a8821dfae9d6211" integrity sha512-XqVuJEnE0jpl/RkuSp04FF2UE73gY52Y4nZaIE6j9GAeSH2cHYU5CCd4TaVMDi2M18ZpZv7XhL/k+nneQzyJpQ== +"@cfworker/json-schema@^1.12.7": + version "1.12.7" + resolved "https://registry.yarnpkg.com/@cfworker/json-schema/-/json-schema-1.12.7.tgz#064d082a11881f684300bc7e6d3021e9d98f9a59" + integrity sha512-KEJUW22arGRQVoS6Ti8SvgXnme6NNMMcGBugdir1hf32ofWUXC8guwrFbepO2+YtqxNBUo5oO0pLYM5d4pyjOg== + "@cnakazawa/watch@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef"