diff --git a/x-pack/plugins/observability/public/application/index.tsx b/x-pack/plugins/observability/public/application/index.tsx index b936551da91fe2..51c083d46f0610 100644 --- a/x-pack/plugins/observability/public/application/index.tsx +++ b/x-pack/plugins/observability/public/application/index.tsx @@ -5,17 +5,10 @@ */ import React from 'react'; import ReactDOM from 'react-dom'; -import { ConfigSchema } from '../'; import { AppMountParameters, CoreStart } from '../../../../../src/core/public'; -import { PluginSetupDeps } from '../plugin'; import { Home } from '../pages/home'; -export const renderApp = ( - core: CoreStart, - deps: PluginSetupDeps, - { element }: AppMountParameters, - config: ConfigSchema -) => { +export const renderApp = (core: CoreStart, { element }: AppMountParameters) => { ReactDOM.render(, element); return () => { ReactDOM.unmountComponentAtNode(element); diff --git a/x-pack/plugins/observability/public/components/action_menu.tsx b/x-pack/plugins/observability/public/components/action_menu.tsx index ea79f4d08d701f..9951dc69df15ae 100644 --- a/x-pack/plugins/observability/public/components/action_menu.tsx +++ b/x-pack/plugins/observability/public/components/action_menu.tsx @@ -58,6 +58,10 @@ export const SectionLink: React.FC = (props) => ( ); -export const ActionMenuDivider: React.FC<{}> = (props) => ; +export const ActionMenuDivider: React.FC<{}> = (props) => ( + +); -export const ActionMenu: React.FC = (props) => ; +export const ActionMenu: React.FC = (props) => ( + +); diff --git a/x-pack/plugins/observability/public/hooks/use_track_metric.tsx b/x-pack/plugins/observability/public/hooks/use_track_metric.tsx index b146a80e89ea8c..61f0eef843e7ca 100644 --- a/x-pack/plugins/observability/public/hooks/use_track_metric.tsx +++ b/x-pack/plugins/observability/public/hooks/use_track_metric.tsx @@ -38,9 +38,14 @@ export { METRIC_TYPE }; export function useUiTracker({ app: defaultApp, }: { app?: ObservabilityApp } = {}) { - const reportUiStats = useKibana().services?.usageCollection?.reportUiStats; + const reportUiStats = useKibana().services?.usageCollection + ?.reportUiStats; const trackEvent = useMemo(() => { - return ({ app = defaultApp, metric, metricType = METRIC_TYPE.COUNT }: TrackMetricOptions) => { + return ({ + app = defaultApp, + metric, + metricType = METRIC_TYPE.COUNT, + }: TrackMetricOptions) => { if (reportUiStats) { reportUiStats(app as string, metricType, metric); } @@ -50,10 +55,16 @@ export function useUiTracker({ } export function useTrackMetric( - { app, metric, metricType = METRIC_TYPE.COUNT, delay = 0 }: TrackMetricOptions, + { + app, + metric, + metricType = METRIC_TYPE.COUNT, + delay = 0, + }: TrackMetricOptions, effectDependencies: EffectDeps = [] ) { - const reportUiStats = useKibana().services?.usageCollection?.reportUiStats; + const reportUiStats = useKibana().services?.usageCollection + ?.reportUiStats; useEffect(() => { if (!reportUiStats) { @@ -88,5 +99,8 @@ export function useTrackPageview( { path, ...rest }: TrackPageviewProps, effectDependencies: EffectDeps = [] ) { - useTrackMetric({ ...rest, metric: `pageview__${path}` }, effectDependencies); + useTrackMetric( + { ...rest, metric: `pageview__${path}` }, + effectDependencies + ); } diff --git a/x-pack/plugins/observability/public/index.ts b/x-pack/plugins/observability/public/index.ts index 901177fc23a86d..dd8bca90cff4f7 100644 --- a/x-pack/plugins/observability/public/index.ts +++ b/x-pack/plugins/observability/public/index.ts @@ -7,12 +7,6 @@ import { PluginInitializerContext, PluginInitializer } from 'kibana/public'; import { Plugin, ClientSetup, ClientStart } from './plugin'; -export interface ConfigSchema { - ui: { - enabled: boolean; - }; -} - export const plugin: PluginInitializer = ( context: PluginInitializerContext ) => { diff --git a/x-pack/plugins/observability/public/plugin.ts b/x-pack/plugins/observability/public/plugin.ts index 8bf1640176673c..4888fe6b5fd43c 100644 --- a/x-pack/plugins/observability/public/plugin.ts +++ b/x-pack/plugins/observability/public/plugin.ts @@ -3,12 +3,10 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { ConfigSchema } from '.'; import { AppMountParameters, CoreSetup, DEFAULT_APP_CATEGORIES, - // CoreStart, Plugin as PluginClass, PluginInitializerContext, } from '../../../../src/core/public'; @@ -16,20 +14,10 @@ import { export type ClientSetup = void; export type ClientStart = void; -// eslint-disable-next-line -export interface PluginSetupDeps { -} - export class Plugin implements PluginClass { - private readonly initializerContext: PluginInitializerContext; - constructor(initializerContext: PluginInitializerContext) { - this.initializerContext = initializerContext; - } - - public setup(core: CoreSetup, plugins: PluginSetupDeps) { - const config = this.initializerContext.config.get(); - const pluginSetupDeps = plugins; + constructor(context: PluginInitializerContext) {} + public setup(core: CoreSetup) { core.application.register({ id: 'observability-overview', title: 'Overview', @@ -43,7 +31,7 @@ export class Plugin implements PluginClass { // Get start services const [coreStart] = await core.getStartServices(); - return renderApp(coreStart, pluginSetupDeps, params, config); + return renderApp(coreStart, params); }, }); } diff --git a/x-pack/plugins/observability/public/typings/eui_draggable/index.ts b/x-pack/plugins/observability/public/typings/eui_draggable/index.ts index 322966b3c982ef..286b27182b50dc 100644 --- a/x-pack/plugins/observability/public/typings/eui_draggable/index.ts +++ b/x-pack/plugins/observability/public/typings/eui_draggable/index.ts @@ -7,11 +7,18 @@ import React from 'react'; import { EuiDraggable, EuiDragDropContext } from '@elastic/eui'; -type PropsOf = T extends React.ComponentType ? ComponentProps : never; -type FirstArgumentOf = Func extends (arg1: infer FirstArgument, ...rest: any[]) => any +type PropsOf = T extends React.ComponentType + ? ComponentProps + : never; +type FirstArgumentOf = Func extends ( + arg1: infer FirstArgument, + ...rest: any[] +) => any ? FirstArgument : never; export type DragHandleProps = FirstArgumentOf< Exclude['children'], React.ReactElement> >['dragHandleProps']; -export type DropResult = FirstArgumentOf['onDragEnd']>; +export type DropResult = FirstArgumentOf< + FirstArgumentOf['onDragEnd'] +>; diff --git a/x-pack/plugins/observability/public/typings/eui_styled_components.tsx b/x-pack/plugins/observability/public/typings/eui_styled_components.tsx index aab16f9d79c4b0..020b3a7294b02a 100644 --- a/x-pack/plugins/observability/public/typings/eui_styled_components.tsx +++ b/x-pack/plugins/observability/public/typings/eui_styled_components.tsx @@ -6,7 +6,11 @@ import React from 'react'; import * as styledComponents from 'styled-components'; -import { ThemedStyledComponentsModule, ThemeProvider, ThemeProviderProps } from 'styled-components'; +import { + ThemedStyledComponentsModule, + ThemeProvider, + ThemeProviderProps, +} from 'styled-components'; import euiDarkVars from '@elastic/eui/dist/eui_theme_dark.json'; import euiLightVars from '@elastic/eui/dist/eui_theme_light.json'; @@ -42,4 +46,11 @@ const { withTheme, } = (styledComponents as unknown) as ThemedStyledComponentsModule; -export { css, euiStyled, EuiThemeProvider, createGlobalStyle, keyframes, withTheme }; +export { + css, + euiStyled, + EuiThemeProvider, + createGlobalStyle, + keyframes, + withTheme, +}; diff --git a/x-pack/plugins/observability/server/index.ts b/x-pack/plugins/observability/server/index.ts index 78550b781b4119..8fe8d3b2a38446 100644 --- a/x-pack/plugins/observability/server/index.ts +++ b/x-pack/plugins/observability/server/index.ts @@ -7,7 +7,10 @@ import { schema, TypeOf } from '@kbn/config-schema'; import { PluginInitializerContext } from 'src/core/server'; import { ObservabilityPlugin, ObservabilityPluginSetup } from './plugin'; -import { createOrUpdateIndex, MappingsDefinition } from './utils/create_or_update_index'; +import { + createOrUpdateIndex, + MappingsDefinition, +} from './utils/create_or_update_index'; import { ScopedAnnotationsClient } from './lib/annotations/bootstrap_annotations'; export const config = { diff --git a/x-pack/plugins/observability/server/lib/annotations/bootstrap_annotations.ts b/x-pack/plugins/observability/server/lib/annotations/bootstrap_annotations.ts index f57e1a774a8e23..f39b9440800ac7 100644 --- a/x-pack/plugins/observability/server/lib/annotations/bootstrap_annotations.ts +++ b/x-pack/plugins/observability/server/lib/annotations/bootstrap_annotations.ts @@ -23,7 +23,9 @@ export type ScopedAnnotationsClientFactory = PromiseReturnType< typeof bootstrapAnnotations >['getScopedAnnotationsClient']; -export type ScopedAnnotationsClient = ReturnType; +export type ScopedAnnotationsClient = ReturnType< + ScopedAnnotationsClientFactory +>; export type AnnotationsAPI = PromiseReturnType; export async function bootstrapAnnotations({ index, core, context }: Params) { @@ -36,10 +38,14 @@ export async function bootstrapAnnotations({ index, core, context }: Params) { }); return { - getScopedAnnotationsClient: (requestContext: RequestHandlerContext, request: KibanaRequest) => { + getScopedAnnotationsClient: ( + requestContext: RequestHandlerContext, + request: KibanaRequest + ) => { return createAnnotationsClient({ index, - apiCaller: requestContext.core.elasticsearch.legacy.client.callAsCurrentUser, + apiCaller: + requestContext.core.elasticsearch.dataClient.callAsCurrentUser, logger, license: requestContext.licensing?.license, }); diff --git a/x-pack/plugins/observability/server/lib/annotations/create_annotations_client.ts b/x-pack/plugins/observability/server/lib/annotations/create_annotations_client.ts index 71b1a42b2000d9..35107278cd60ee 100644 --- a/x-pack/plugins/observability/server/lib/annotations/create_annotations_client.ts +++ b/x-pack/plugins/observability/server/lib/annotations/create_annotations_client.ts @@ -57,7 +57,9 @@ export function createAnnotationsClient(params: { function ensureGoldLicense any>(fn: T): T { return ((...args) => { if (!license?.hasAtLeast('gold')) { - throw Boom.forbidden('Annotations require at least a gold license or a trial license.'); + throw Boom.forbidden( + 'Annotations require at least a gold license or a trial license.' + ); } return fn(...args); }) as T; diff --git a/x-pack/plugins/observability/server/lib/annotations/register_annotation_apis.ts b/x-pack/plugins/observability/server/lib/annotations/register_annotation_apis.ts index 5d0fdc65117bfc..31c0bbdf3122dc 100644 --- a/x-pack/plugins/observability/server/lib/annotations/register_annotation_apis.ts +++ b/x-pack/plugins/observability/server/lib/annotations/register_annotation_apis.ts @@ -29,7 +29,10 @@ export function registerAnnotationAPIs({ }) { function wrapRouteHandler>( types: TType, - handler: (params: { data: t.TypeOf; client: ScopedAnnotationsClient }) => Promise + handler: (params: { + data: t.TypeOf; + client: ScopedAnnotationsClient; + }) => Promise ): RequestHandler { return async (...args: Parameters) => { const [context, request, response] = args; @@ -72,7 +75,9 @@ export function registerAnnotationAPIs({ return response.custom({ statusCode: err.output?.statusCode ?? 500, body: { - message: err.output?.payload?.message ?? 'An internal server error occured', + message: + err.output?.payload?.message ?? + 'An internal server error occured', }, }); } @@ -88,9 +93,12 @@ export function registerAnnotationAPIs({ body: unknowns, }, }, - wrapRouteHandler(t.type({ body: createAnnotationRt }), ({ data, client }) => { - return client.create(data.body); - }) + wrapRouteHandler( + t.type({ body: createAnnotationRt }), + ({ data, client }) => { + return client.create(data.body); + } + ) ); router.delete( @@ -100,9 +108,12 @@ export function registerAnnotationAPIs({ params: unknowns, }, }, - wrapRouteHandler(t.type({ params: deleteAnnotationRt }), ({ data, client }) => { - return client.delete(data.params); - }) + wrapRouteHandler( + t.type({ params: deleteAnnotationRt }), + ({ data, client }) => { + return client.delete(data.params); + } + ) ); router.get( @@ -112,8 +123,11 @@ export function registerAnnotationAPIs({ params: unknowns, }, }, - wrapRouteHandler(t.type({ params: getAnnotationByIdRt }), ({ data, client }) => { - return client.getById(data.params); - }) + wrapRouteHandler( + t.type({ params: getAnnotationByIdRt }), + ({ data, client }) => { + return client.getById(data.params); + } + ) ); } diff --git a/x-pack/plugins/observability/server/plugin.ts b/x-pack/plugins/observability/server/plugin.ts index ee328c4deb0825..d64e21d9e356b6 100644 --- a/x-pack/plugins/observability/server/plugin.ts +++ b/x-pack/plugins/observability/server/plugin.ts @@ -26,7 +26,10 @@ export class ObservabilityPlugin implements Plugin { this.initContext = initContext; } - public async setup(core: CoreSetup, plugins: {}): Promise { + public async setup( + core: CoreSetup, + plugins: {} + ): Promise { const config$ = this.initContext.config.create(); const config = await config$.pipe(take(1)).toPromise(); diff --git a/x-pack/plugins/observability/server/utils/create_or_update_index.ts b/x-pack/plugins/observability/server/utils/create_or_update_index.ts index aa12b2227b7d23..f35cfc30de592b 100644 --- a/x-pack/plugins/observability/server/utils/create_or_update_index.ts +++ b/x-pack/plugins/observability/server/utils/create_or_update_index.ts @@ -57,7 +57,8 @@ export async function createOrUpdateIndex({ }); if (!result.acknowledged) { - const resultError = result && result.error && JSON.stringify(result.error); + const resultError = + result && result.error && JSON.stringify(result.error); throw new Error(resultError); } }, diff --git a/x-pack/plugins/observability/typings/common.ts b/x-pack/plugins/observability/typings/common.ts index b4a90934a9f49a..69593ccd50bc58 100644 --- a/x-pack/plugins/observability/typings/common.ts +++ b/x-pack/plugins/observability/typings/common.ts @@ -4,6 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ -export type PromiseReturnType = Func extends (...args: any[]) => Promise +export type PromiseReturnType = Func extends ( + ...args: any[] +) => Promise ? Value : Func;