mirror of
https://github.com/elastic/kibana.git
synced 2025-06-27 18:51:07 -04:00
* [eslint] add rule to prevent export* in plugin index files * deduplicate export names for types/instances with the same name * attempt to auto-fix duplicate exports too * capture exported enums too * enforce no_export_all for core too * disable rule by default, allow opting-in for help fixing * update tests * reduce yarn.lock duplication * add rule but no fixes * disable all existing violations * update api docs with new line numbers * revert unnecessary changes to yarn.lock which only had drawbacks * remove unnecessary eslint-disable * rework codegen to split type exports and use babel to generate valid code * check for "export types" deeply * improve test by using fixtures * add comments to some helper functions * disable fix for namespace exports including types * label all eslint-disable comments with related team-specific issue * ensure that child exports of `export type` are always tracked as types Co-authored-by: spalger <spalger@users.noreply.github.com> Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
50 lines
1.8 KiB
TypeScript
50 lines
1.8 KiB
TypeScript
/*
|
|
* 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.
|
|
*/
|
|
|
|
// TODO: https://github.com/elastic/kibana/issues/110905
|
|
/* eslint-disable @kbn/eslint/no_export_all */
|
|
|
|
import { schema, TypeOf } from '@kbn/config-schema';
|
|
import { PluginInitializerContext } from 'src/core/server';
|
|
import { ObservabilityPlugin, ObservabilityPluginSetup } from './plugin';
|
|
import { createOrUpdateIndex, Mappings } from './utils/create_or_update_index';
|
|
import { ScopedAnnotationsClient } from './lib/annotations/bootstrap_annotations';
|
|
import { unwrapEsResponse, WrappedElasticsearchClientError } from './utils/unwrap_es_response';
|
|
export { rangeQuery, kqlQuery } from './utils/queries';
|
|
|
|
export * from './types';
|
|
|
|
export const config = {
|
|
exposeToBrowser: {
|
|
unsafe: { alertingExperience: { enabled: true }, cases: { enabled: true } },
|
|
},
|
|
schema: schema.object({
|
|
enabled: schema.boolean({ defaultValue: true }),
|
|
annotations: schema.object({
|
|
enabled: schema.boolean({ defaultValue: true }),
|
|
index: schema.string({ defaultValue: 'observability-annotations' }),
|
|
}),
|
|
unsafe: schema.object({
|
|
alertingExperience: schema.object({ enabled: schema.boolean({ defaultValue: true }) }),
|
|
cases: schema.object({ enabled: schema.boolean({ defaultValue: true }) }),
|
|
}),
|
|
}),
|
|
};
|
|
|
|
export type ObservabilityConfig = TypeOf<typeof config.schema>;
|
|
|
|
export const plugin = (initContext: PluginInitializerContext) =>
|
|
new ObservabilityPlugin(initContext);
|
|
|
|
export {
|
|
createOrUpdateIndex,
|
|
Mappings,
|
|
ObservabilityPluginSetup,
|
|
ScopedAnnotationsClient,
|
|
unwrapEsResponse,
|
|
WrappedElasticsearchClientError,
|
|
};
|