Fix core api type exports (#36108) (#36332)

* Fix missing type exports in core/public

* Fix missing type exports in src/core/server

* Expose HttpStart

* Expose HttpStart: fix test mocks
This commit is contained in:
Rudolf Meijering 2019-05-13 18:59:52 +02:00 committed by GitHub
parent f3250928ad
commit 32007ba5f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
63 changed files with 443 additions and 219 deletions

View file

@ -4,7 +4,7 @@
## CoreSetup interface
Core services exposed to the start lifecycle
Core services exposed to the setup lifecycle
<b>Signature:</b>

View file

@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [CoreStart](./kibana-plugin-public.corestart.md) &gt; [http](./kibana-plugin-public.corestart.http.md)
## CoreStart.http property
[HttpStart](./kibana-plugin-public.httpstart.md)
<b>Signature:</b>
```typescript
http: HttpStart;
```

View file

@ -4,6 +4,8 @@
## CoreStart interface
Core services exposed to the start lifecycle
<b>Signature:</b>
```typescript
@ -17,6 +19,7 @@ export interface CoreStart
| [application](./kibana-plugin-public.corestart.application.md) | <code>ApplicationStart</code> | [ApplicationStart](./kibana-plugin-public.applicationstart.md) |
| [basePath](./kibana-plugin-public.corestart.basepath.md) | <code>BasePathStart</code> | [BasePathStart](./kibana-plugin-public.basepathstart.md) |
| [chrome](./kibana-plugin-public.corestart.chrome.md) | <code>ChromeStart</code> | [ChromeStart](./kibana-plugin-public.chromestart.md) |
| [http](./kibana-plugin-public.corestart.http.md) | <code>HttpStart</code> | [HttpStart](./kibana-plugin-public.httpstart.md) |
| [i18n](./kibana-plugin-public.corestart.i18n.md) | <code>I18nStart</code> | [I18nStart](./kibana-plugin-public.i18nstart.md) |
| [injectedMetadata](./kibana-plugin-public.corestart.injectedmetadata.md) | <code>InjectedMetadataStart</code> | [InjectedMetadataStart](./kibana-plugin-public.injectedmetadatastart.md) |
| [notifications](./kibana-plugin-public.corestart.notifications.md) | <code>NotificationsStart</code> | [NotificationsStart](./kibana-plugin-public.notificationsstart.md) |

View file

@ -0,0 +1,21 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [FatalErrorInfo](./kibana-plugin-public.fatalerrorinfo.md)
## FatalErrorInfo interface
Represents the `message` and `stack` of a fatal Error
<b>Signature:</b>
```typescript
export interface FatalErrorInfo
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [message](./kibana-plugin-public.fatalerrorinfo.message.md) | <code>string</code> | |
| [stack](./kibana-plugin-public.fatalerrorinfo.stack.md) | <code>string &#124; undefined</code> | |

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [FatalErrorInfo](./kibana-plugin-public.fatalerrorinfo.md) &gt; [message](./kibana-plugin-public.fatalerrorinfo.message.md)
## FatalErrorInfo.message property
<b>Signature:</b>
```typescript
message: string;
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [FatalErrorInfo](./kibana-plugin-public.fatalerrorinfo.md) &gt; [stack](./kibana-plugin-public.fatalerrorinfo.stack.md)
## FatalErrorInfo.stack property
<b>Signature:</b>
```typescript
stack: string | undefined;
```

View file

@ -9,5 +9,5 @@ An Observable that will emit whenever a fatal error is added with `add()`
<b>Signature:</b>
```typescript
get$: () => Rx.Observable<ErrorInfo>;
get$: () => Rx.Observable<FatalErrorInfo>;
```

View file

@ -17,5 +17,5 @@ export interface FatalErrorsSetup
| Property | Type | Description |
| --- | --- | --- |
| [add](./kibana-plugin-public.fatalerrorssetup.add.md) | <code>(error: string &#124; Error, source?: string) =&gt; never</code> | Add a new fatal error. This will stop the Kibana Public Core and display a fatal error screen with details about the Kibana build and the error. |
| [get$](./kibana-plugin-public.fatalerrorssetup.get$.md) | <code>() =&gt; Rx.Observable&lt;ErrorInfo&gt;</code> | An Observable that will emit whenever a fatal error is added with <code>add()</code> |
| [get$](./kibana-plugin-public.fatalerrorssetup.get$.md) | <code>() =&gt; Rx.Observable&lt;FatalErrorInfo&gt;</code> | An Observable that will emit whenever a fatal error is added with <code>add()</code> |

View file

@ -0,0 +1,12 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [HttpStart](./kibana-plugin-public.httpstart.md)
## HttpStart type
<b>Signature:</b>
```typescript
export declare type HttpStart = ReturnType<HttpService['start']>;
```

View file

@ -4,6 +4,7 @@
## I18nStart type
<b>Signature:</b>
```typescript

View file

@ -23,8 +23,9 @@
| [ChromeBrand](./kibana-plugin-public.chromebrand.md) | |
| [ChromeBreadcrumb](./kibana-plugin-public.chromebreadcrumb.md) | |
| [ChromeNavLink](./kibana-plugin-public.chromenavlink.md) | |
| [CoreSetup](./kibana-plugin-public.coresetup.md) | Core services exposed to the start lifecycle |
| [CoreStart](./kibana-plugin-public.corestart.md) | |
| [CoreSetup](./kibana-plugin-public.coresetup.md) | Core services exposed to the setup lifecycle |
| [CoreStart](./kibana-plugin-public.corestart.md) | Core services exposed to the start lifecycle |
| [FatalErrorInfo](./kibana-plugin-public.fatalerrorinfo.md) | Represents the <code>message</code> and <code>stack</code> of a fatal Error |
| [FatalErrorsSetup](./kibana-plugin-public.fatalerrorssetup.md) | FatalErrors stop the Kibana Public Core and displays a fatal error screen with details about the Kibana build and the error. |
| [I18nSetup](./kibana-plugin-public.i18nsetup.md) | I18nSetup.Context is required by any localizable React component from @<!-- -->kbn/i18n and @<!-- -->elastic/eui packages and is supposed to be used as the topmost component for any i18n-compatible React tree. |
| [InjectedMetadataSetup](./kibana-plugin-public.injectedmetadatasetup.md) | Provides access to the metadata injected by the server into the page |
@ -35,6 +36,7 @@
| [Plugin](./kibana-plugin-public.plugin.md) | The interface that should be returned by a <code>PluginInitializer</code>. |
| [PluginInitializerContext](./kibana-plugin-public.plugininitializercontext.md) | The available core services passed to a <code>PluginInitializer</code> |
| [PluginSetupContext](./kibana-plugin-public.pluginsetupcontext.md) | The available core services passed to a plugin's <code>Plugin#setup</code> method. |
| [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) | The available core services passed to a plugin's <code>Plugin#start</code> method. |
| [UiSettingsState](./kibana-plugin-public.uisettingsstate.md) | |
## Type Aliases
@ -46,6 +48,7 @@
| [ChromeSetup](./kibana-plugin-public.chromesetup.md) | |
| [ChromeStart](./kibana-plugin-public.chromestart.md) | |
| [HttpSetup](./kibana-plugin-public.httpsetup.md) | |
| [HttpStart](./kibana-plugin-public.httpstart.md) | |
| [I18nStart](./kibana-plugin-public.i18nstart.md) | |
| [InjectedMetadataStart](./kibana-plugin-public.injectedmetadatastart.md) | |
| [NotificationsStart](./kibana-plugin-public.notificationsstart.md) | |

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [application](./kibana-plugin-public.pluginstartcontext.application.md)
## PluginStartContext.application property
<b>Signature:</b>
```typescript
application: Pick<ApplicationStart, 'capabilities'>;
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [basePath](./kibana-plugin-public.pluginstartcontext.basepath.md)
## PluginStartContext.basePath property
<b>Signature:</b>
```typescript
basePath: BasePathStart;
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [chrome](./kibana-plugin-public.pluginstartcontext.chrome.md)
## PluginStartContext.chrome property
<b>Signature:</b>
```typescript
chrome: ChromeStart;
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [http](./kibana-plugin-public.pluginstartcontext.http.md)
## PluginStartContext.http property
<b>Signature:</b>
```typescript
http: HttpStart;
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [i18n](./kibana-plugin-public.pluginstartcontext.i18n.md)
## PluginStartContext.i18n property
<b>Signature:</b>
```typescript
i18n: I18nStart;
```

View file

@ -0,0 +1,26 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md)
## PluginStartContext interface
The available core services passed to a plugin's `Plugin#start` method.
<b>Signature:</b>
```typescript
export interface PluginStartContext
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [application](./kibana-plugin-public.pluginstartcontext.application.md) | <code>Pick&lt;ApplicationStart, 'capabilities'&gt;</code> | |
| [basePath](./kibana-plugin-public.pluginstartcontext.basepath.md) | <code>BasePathStart</code> | |
| [chrome](./kibana-plugin-public.pluginstartcontext.chrome.md) | <code>ChromeStart</code> | |
| [http](./kibana-plugin-public.pluginstartcontext.http.md) | <code>HttpStart</code> | |
| [i18n](./kibana-plugin-public.pluginstartcontext.i18n.md) | <code>I18nStart</code> | |
| [notifications](./kibana-plugin-public.pluginstartcontext.notifications.md) | <code>NotificationsStart</code> | |
| [overlays](./kibana-plugin-public.pluginstartcontext.overlays.md) | <code>OverlayStart</code> | |

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [notifications](./kibana-plugin-public.pluginstartcontext.notifications.md)
## PluginStartContext.notifications property
<b>Signature:</b>
```typescript
notifications: NotificationsStart;
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [PluginStartContext](./kibana-plugin-public.pluginstartcontext.md) &gt; [overlays](./kibana-plugin-public.pluginstartcontext.overlays.md)
## PluginStartContext.overlays property
<b>Signature:</b>
```typescript
overlays: OverlayStart;
```

View file

@ -11,12 +11,6 @@
export declare class UiSettingsClient
```
## Properties
| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [params](./kibana-plugin-public.uisettingsclient.params.md) | | <code>UiSettingsClientParams</code> | |
## Methods
| Method | Modifiers | Description |

View file

@ -1,11 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-public](./kibana-plugin-public.md) &gt; [UiSettingsClient](./kibana-plugin-public.uisettingsclient.md) &gt; [params](./kibana-plugin-public.uisettingsclient.params.md)
## UiSettingsClient.params property
<b>Signature:</b>
```typescript
readonly params: UiSettingsClientParams;
```

View file

@ -1,25 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md) &gt; [atPath](./kibana-plugin-server.configservice.atpath.md)
## ConfigService.atPath() method
Reads the subset of the config at the specified `path` and validates it against the static `schema` on the given `ConfigClass`<!-- -->.
<b>Signature:</b>
```typescript
atPath<TSchema extends Type<any>, TConfig>(path: ConfigPath, ConfigClass: ConfigWithSchema<TSchema, TConfig>): Observable<TConfig>;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| path | <code>ConfigPath</code> | The path to the desired subset of the config. |
| ConfigClass | <code>ConfigWithSchema&lt;TSchema, TConfig&gt;</code> | A class (not an instance of a class) that contains a static <code>schema</code> that we validate the config at the given <code>path</code> against. |
<b>Returns:</b>
`Observable<TConfig>`

View file

@ -1,17 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md) &gt; [getConfig$](./kibana-plugin-server.configservice.getconfig$.md)
## ConfigService.getConfig$() method
Returns the full config object observable. This is not intended for "normal use", but for features that \_need\_ access to the full object.
<b>Signature:</b>
```typescript
getConfig$(): Observable<Config>;
```
<b>Returns:</b>
`Observable<Config>`

View file

@ -1,15 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md) &gt; [getUnusedPaths](./kibana-plugin-server.configservice.getunusedpaths.md)
## ConfigService.getUnusedPaths() method
<b>Signature:</b>
```typescript
getUnusedPaths(): Promise<string[]>;
```
<b>Returns:</b>
`Promise<string[]>`

View file

@ -1,15 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md) &gt; [getUsedPaths](./kibana-plugin-server.configservice.getusedpaths.md)
## ConfigService.getUsedPaths() method
<b>Signature:</b>
```typescript
getUsedPaths(): Promise<string[]>;
```
<b>Returns:</b>
`Promise<string[]>`

View file

@ -1,22 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md) &gt; [isEnabledAtPath](./kibana-plugin-server.configservice.isenabledatpath.md)
## ConfigService.isEnabledAtPath() method
<b>Signature:</b>
```typescript
isEnabledAtPath(path: ConfigPath): Promise<boolean>;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| path | <code>ConfigPath</code> | |
<b>Returns:</b>
`Promise<boolean>`

View file

@ -1,24 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md)
## ConfigService class
<b>Signature:</b>
```typescript
export declare class ConfigService
```
## Methods
| Method | Modifiers | Description |
| --- | --- | --- |
| [atPath(path, ConfigClass)](./kibana-plugin-server.configservice.atpath.md) | | Reads the subset of the config at the specified <code>path</code> and validates it against the static <code>schema</code> on the given <code>ConfigClass</code>. |
| [getConfig$()](./kibana-plugin-server.configservice.getconfig$.md) | | Returns the full config object observable. This is not intended for "normal use", but for features that \_need\_ access to the full object. |
| [getUnusedPaths()](./kibana-plugin-server.configservice.getunusedpaths.md) | | |
| [getUsedPaths()](./kibana-plugin-server.configservice.getusedpaths.md) | | |
| [isEnabledAtPath(path)](./kibana-plugin-server.configservice.isenabledatpath.md) | | |
| [optionalAtPath(path, ConfigClass)](./kibana-plugin-server.configservice.optionalatpath.md) | | Same as <code>atPath</code>, but returns <code>undefined</code> if there is no config at the specified path.[ConfigService.atPath()](./kibana-plugin-server.configservice.atpath.md) |

View file

@ -1,27 +0,0 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [ConfigService](./kibana-plugin-server.configservice.md) &gt; [optionalAtPath](./kibana-plugin-server.configservice.optionalatpath.md)
## ConfigService.optionalAtPath() method
Same as `atPath`<!-- -->, but returns `undefined` if there is no config at the specified path.
[ConfigService.atPath()](./kibana-plugin-server.configservice.atpath.md)
<b>Signature:</b>
```typescript
optionalAtPath<TSchema extends Type<any>, TConfig>(path: ConfigPath, ConfigClass: ConfigWithSchema<TSchema, TConfig>): Observable<TConfig | undefined>;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| path | <code>ConfigPath</code> | |
| ConfigClass | <code>ConfigWithSchema&lt;TSchema, TConfig&gt;</code> | |
<b>Returns:</b>
`Observable<TConfig | undefined>`

View file

@ -4,6 +4,7 @@
## CoreStart interface
<b>Signature:</b>
```typescript

View file

@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [DiscoveredPlugin](./kibana-plugin-server.discoveredplugin.md) &gt; [configPath](./kibana-plugin-server.discoveredplugin.configpath.md)
## DiscoveredPlugin.configPath property
Root configuration path used by the plugin, defaults to "id".
<b>Signature:</b>
```typescript
readonly configPath: ConfigPath;
```

View file

@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [DiscoveredPlugin](./kibana-plugin-server.discoveredplugin.md) &gt; [id](./kibana-plugin-server.discoveredplugin.id.md)
## DiscoveredPlugin.id property
Identifier of the plugin.
<b>Signature:</b>
```typescript
readonly id: PluginName;
```

View file

@ -0,0 +1,23 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [DiscoveredPlugin](./kibana-plugin-server.discoveredplugin.md)
## DiscoveredPlugin interface
Small container object used to expose information about discovered plugins that may or may not have been started.
<b>Signature:</b>
```typescript
export interface DiscoveredPlugin
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [configPath](./kibana-plugin-server.discoveredplugin.configpath.md) | <code>ConfigPath</code> | Root configuration path used by the plugin, defaults to "id". |
| [id](./kibana-plugin-server.discoveredplugin.id.md) | <code>PluginName</code> | Identifier of the plugin. |
| [optionalPlugins](./kibana-plugin-server.discoveredplugin.optionalplugins.md) | <code>ReadonlyArray&lt;PluginName&gt;</code> | An optional list of the other plugins that if installed and enabled \*\*may be\*\* leveraged by this plugin for some additional functionality but otherwise are not required for this plugin to work properly. |
| [requiredPlugins](./kibana-plugin-server.discoveredplugin.requiredplugins.md) | <code>ReadonlyArray&lt;PluginName&gt;</code> | An optional list of the other plugins that \*\*must be\*\* installed and enabled for this plugin to function properly. |

View file

@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [DiscoveredPlugin](./kibana-plugin-server.discoveredplugin.md) &gt; [optionalPlugins](./kibana-plugin-server.discoveredplugin.optionalplugins.md)
## DiscoveredPlugin.optionalPlugins property
An optional list of the other plugins that if installed and enabled \*\*may be\*\* leveraged by this plugin for some additional functionality but otherwise are not required for this plugin to work properly.
<b>Signature:</b>
```typescript
readonly optionalPlugins: ReadonlyArray<PluginName>;
```

View file

@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [DiscoveredPlugin](./kibana-plugin-server.discoveredplugin.md) &gt; [requiredPlugins](./kibana-plugin-server.discoveredplugin.requiredplugins.md)
## DiscoveredPlugin.requiredPlugins property
An optional list of the other plugins that \*\*must be\*\* installed and enabled for this plugin to function properly.
<b>Signature:</b>
```typescript
readonly requiredPlugins: ReadonlyArray<PluginName>;
```

View file

@ -9,7 +9,6 @@
| Class | Description |
| --- | --- |
| [ClusterClient](./kibana-plugin-server.clusterclient.md) | Represents an Elasticsearch cluster API client and allows to call API on behalf of the internal Kibana user and the actual user that is derived from the request headers (via <code>asScoped(...)</code>). |
| [ConfigService](./kibana-plugin-server.configservice.md) | |
| [KibanaRequest](./kibana-plugin-server.kibanarequest.md) | |
| [Router](./kibana-plugin-server.router.md) | |
| [ScopedClusterClient](./kibana-plugin-server.scopedclusterclient.md) | Serves the same purpose as "normal" <code>ClusterClient</code> but exposes additional <code>callAsCurrentUser</code> method that doesn't use credentials of the Kibana internal user (as <code>callAsInternalUser</code> does) to request Elasticsearch API, but rather passes HTTP headers extracted from the current user request to the API |
@ -22,6 +21,7 @@
| [CallAPIOptions](./kibana-plugin-server.callapioptions.md) | The set of options that defines how API call should be made and result be processed. |
| [CoreSetup](./kibana-plugin-server.coresetup.md) | |
| [CoreStart](./kibana-plugin-server.corestart.md) | |
| [DiscoveredPlugin](./kibana-plugin-server.discoveredplugin.md) | Small container object used to expose information about discovered plugins that may or may not have been started. |
| [ElasticsearchServiceSetup](./kibana-plugin-server.elasticsearchservicesetup.md) | |
| [HttpServiceStart](./kibana-plugin-server.httpservicestart.md) | |
| [Logger](./kibana-plugin-server.logger.md) | Logger exposes all the necessary methods to log any type of information and this is the interface used by the logging consumers including plugins. |
@ -31,6 +31,8 @@
| [Plugin](./kibana-plugin-server.plugin.md) | The interface that should be returned by a <code>PluginInitializer</code>. |
| [PluginInitializerContext](./kibana-plugin-server.plugininitializercontext.md) | Context that's available to plugins during initialization stage. |
| [PluginSetupContext](./kibana-plugin-server.pluginsetupcontext.md) | Context passed to the plugins <code>setup</code> method. |
| [PluginsServiceSetup](./kibana-plugin-server.pluginsservicesetup.md) | |
| [PluginsServiceStart](./kibana-plugin-server.pluginsservicestart.md) | |
| [PluginStartContext](./kibana-plugin-server.pluginstartcontext.md) | Context passed to the plugins <code>start</code> method. |
## Type Aliases

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [PluginsServiceSetup](./kibana-plugin-server.pluginsservicesetup.md) &gt; [contracts](./kibana-plugin-server.pluginsservicesetup.contracts.md)
## PluginsServiceSetup.contracts property
<b>Signature:</b>
```typescript
contracts: Map<PluginName, unknown>;
```

View file

@ -0,0 +1,20 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [PluginsServiceSetup](./kibana-plugin-server.pluginsservicesetup.md)
## PluginsServiceSetup interface
<b>Signature:</b>
```typescript
export interface PluginsServiceSetup
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [contracts](./kibana-plugin-server.pluginsservicesetup.contracts.md) | <code>Map&lt;PluginName, unknown&gt;</code> | |
| [uiPlugins](./kibana-plugin-server.pluginsservicesetup.uiplugins.md) | <code>{`<p/>` public: Map&lt;PluginName, DiscoveredPlugin&gt;;`<p/>` internal: Map&lt;PluginName, DiscoveredPluginInternal&gt;;`<p/>` }</code> | |

View file

@ -0,0 +1,14 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [PluginsServiceSetup](./kibana-plugin-server.pluginsservicesetup.md) &gt; [uiPlugins](./kibana-plugin-server.pluginsservicesetup.uiplugins.md)
## PluginsServiceSetup.uiPlugins property
<b>Signature:</b>
```typescript
uiPlugins: {
public: Map<PluginName, DiscoveredPlugin>;
internal: Map<PluginName, DiscoveredPluginInternal>;
};
```

View file

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [PluginsServiceStart](./kibana-plugin-server.pluginsservicestart.md) &gt; [contracts](./kibana-plugin-server.pluginsservicestart.contracts.md)
## PluginsServiceStart.contracts property
<b>Signature:</b>
```typescript
contracts: Map<PluginName, unknown>;
```

View file

@ -0,0 +1,19 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index) &gt; [kibana-plugin-server](./kibana-plugin-server.md) &gt; [PluginsServiceStart](./kibana-plugin-server.pluginsservicestart.md)
## PluginsServiceStart interface
<b>Signature:</b>
```typescript
export interface PluginsServiceStart
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [contracts](./kibana-plugin-server.pluginsservicestart.contracts.md) | <code>Map&lt;PluginName, unknown&gt;</code> | |

View file

@ -166,6 +166,7 @@ export class CoreSystem {
try {
const injectedMetadata = await this.injectedMetadata.start();
const basePath = await this.basePath.start({ injectedMetadata });
const http = await this.http.start();
const i18n = await this.i18n.start();
const application = await this.application.start({ basePath, injectedMetadata });
const chrome = await this.chrome.start({ application, basePath });
@ -191,6 +192,7 @@ export class CoreSystem {
application,
basePath,
chrome,
http,
i18n,
injectedMetadata,
notifications,

View file

@ -33,16 +33,16 @@ import { tap } from 'rxjs/operators';
import { FormattedMessage } from '@kbn/i18n/react';
import { ErrorInfo } from './get_error_info';
import { FatalErrorInfo } from './get_error_info';
interface Props {
kibanaVersion: string;
buildNumber: number;
errorInfo$: Rx.Observable<ErrorInfo>;
errorInfo$: Rx.Observable<FatalErrorInfo>;
}
interface State {
errors: ErrorInfo[];
errors: FatalErrorInfo[];
}
export class FatalErrorsScreen extends React.Component<Props, State> {

View file

@ -25,7 +25,7 @@ import { first, tap } from 'rxjs/operators';
import { I18nSetup } from '../i18n';
import { InjectedMetadataSetup } from '../';
import { FatalErrorsScreen } from './fatal_errors_screen';
import { ErrorInfo, getErrorInfo } from './get_error_info';
import { FatalErrorInfo, getErrorInfo } from './get_error_info';
interface Deps {
i18n: I18nSetup;
@ -51,12 +51,12 @@ export interface FatalErrorsSetup {
/**
* An Observable that will emit whenever a fatal error is added with `add()`
*/
get$: () => Rx.Observable<ErrorInfo>;
get$: () => Rx.Observable<FatalErrorInfo>;
}
/** @interal */
export class FatalErrorsService {
private readonly errorInfo$ = new Rx.ReplaySubject<ErrorInfo>();
private readonly errorInfo$ = new Rx.ReplaySubject<FatalErrorInfo>();
/**
*

View file

@ -22,7 +22,7 @@ import { inspect } from 'util';
/**
* Produce a string version of an error,
*/
function formatErrorMessage(error: any) {
function formatErrorMessage(error: any): string {
if (typeof error === 'string') {
return error;
}
@ -64,10 +64,10 @@ function formatStack(err: Error) {
}
/**
* Produce a simple ErrorInfo object from some error and optional source, used for
* Produce a simple FatalErrorInfo object from some error and optional source, used for
* displaying error information on the fatal error screen
*/
export function getErrorInfo(error: any, source?: string) {
export function getErrorInfo(error: any, source?: string): FatalErrorInfo {
const prefix = source ? source + ': ' : '';
return {
message: prefix + formatErrorMessage(error),
@ -75,4 +75,12 @@ export function getErrorInfo(error: any, source?: string) {
};
}
export type ErrorInfo = ReturnType<typeof getErrorInfo>;
/**
* Represents the `message` and `stack` of a fatal Error
*
* @public
* */
export interface FatalErrorInfo {
message: string;
stack: string | undefined;
}

View file

@ -18,3 +18,4 @@
*/
export { FatalErrorsSetup, FatalErrorsService } from './fatal_errors_service';
export { FatalErrorInfo } from './get_error_info';

View file

@ -41,4 +41,5 @@ const createMock = (): jest.Mocked<PublicMethodsOf<HttpService>> => ({
export const httpServiceMock = {
create: createMock,
createSetupContract: createSetupContractMock,
createStartContract: createStartContractMock,
};

View file

@ -86,7 +86,7 @@ export class HttpService {
}
// eslint-disable-next-line no-unused-params
public start(deps: Deps) {}
public start() {}
public stop() {
this.stop$.next();
@ -96,4 +96,5 @@ export class HttpService {
/** @public */
export type HttpSetup = ReturnType<HttpService['setup']>;
/** @public */
export type HttpStart = ReturnType<HttpService['start']>;

View file

@ -17,5 +17,5 @@
* under the License.
*/
export { HttpService, HttpSetup } from './http_service';
export { HttpService, HttpSetup, HttpStart } from './http_service';
export { HttpFetchError } from './http_fetch_error';

View file

@ -304,4 +304,7 @@ export interface I18nSetup {
Context: ({ children }: { children: React.ReactNode }) => JSX.Element;
}
/**
* @public
*/
export type I18nStart = I18nSetup;

View file

@ -27,8 +27,8 @@ import {
ChromeSetup,
ChromeStart,
} from './chrome';
import { FatalErrorsSetup } from './fatal_errors';
import { HttpSetup } from './http';
import { FatalErrorsSetup, FatalErrorInfo } from './fatal_errors';
import { HttpSetup, HttpStart } from './http';
import { I18nSetup, I18nStart } from './i18n';
import {
InjectedMetadataParams,
@ -44,7 +44,13 @@ import {
NotificationsStart,
} from './notifications';
import { OverlayRef, OverlayStart } from './overlays';
import { Plugin, PluginInitializer, PluginInitializerContext, PluginSetupContext } from './plugins';
import {
Plugin,
PluginInitializer,
PluginInitializerContext,
PluginSetupContext,
PluginStartContext,
} from './plugins';
import { UiSettingsClient, UiSettingsSetup, UiSettingsState } from './ui_settings';
import { ApplicationSetup, Capabilities, ApplicationStart } from './application';
@ -52,7 +58,7 @@ import { ApplicationSetup, Capabilities, ApplicationStart } from './application'
export { CoreContext, CoreSystem } from './core_system';
/**
* Core services exposed to the start lifecycle
* Core services exposed to the setup lifecycle
*
* @public
*
@ -81,6 +87,15 @@ export interface CoreSetup {
chrome: ChromeSetup;
}
/**
* Core services exposed to the start lifecycle
*
* @public
*
* @internalRemarks We document the properties with \@link tags to improve
* navigation in the generated docs until there's a fix for
* https://github.com/Microsoft/web-build-tools/issues/1237
*/
export interface CoreStart {
/** {@link ApplicationStart} */
application: ApplicationStart;
@ -88,6 +103,8 @@ export interface CoreStart {
basePath: BasePathStart;
/** {@link ChromeStart} */
chrome: ChromeStart;
/** {@link HttpStart} */
http: HttpStart;
/** {@link I18nStart} */
i18n: I18nStart;
/** {@link InjectedMetadataStart} */
@ -104,7 +121,9 @@ export {
BasePathSetup,
BasePathStart,
HttpSetup,
HttpStart,
FatalErrorsSetup,
FatalErrorInfo,
Capabilities,
ChromeSetup,
ChromeStart,
@ -123,6 +142,7 @@ export {
PluginInitializer,
PluginInitializerContext,
PluginSetupContext,
PluginStartContext,
NotificationsSetup,
NotificationsStart,
OverlayRef,

View file

@ -195,6 +195,7 @@ const applicationStart = applicationServiceMock.createStartContract();
const basePathStart = basePathServiceMock.createStartContract();
const chromeStart = chromeServiceMock.createStartContract();
const i18nStart = i18nServiceMock.createStartContract();
const httpStart = httpServiceMock.createStartContract();
const injectedMetadataStart = injectedMetadataServiceMock.createStartContract();
const notificationsStart = notificationServiceMock.createStartContract();
const overlayStart = overlayServiceMock.createStartContract();
@ -205,6 +206,7 @@ const defaultStartDeps = {
basePath: basePathStart,
chrome: chromeStart,
i18n: i18nStart,
http: httpStart,
injectedMetadata: injectedMetadataStart,
notifications: notificationsStart,
overlays: overlayStart,

View file

@ -19,4 +19,4 @@
export * from './plugins_service';
export { Plugin, PluginInitializer } from './plugin';
export { PluginInitializerContext, PluginSetupContext } from './plugin_context';
export { PluginInitializerContext, PluginSetupContext, PluginStartContext } from './plugin_context';

View file

@ -29,7 +29,7 @@ import { PluginWrapper } from './plugin';
import { PluginsServiceSetupDeps, PluginsServiceStartDeps } from './plugins_service';
import { OverlayStart } from '../overlays';
import { ApplicationStart } from '../application';
import { HttpSetup } from '../http';
import { HttpSetup, HttpStart } from '../http';
/**
* The available core services passed to a `PluginInitializer`
@ -63,6 +63,7 @@ export interface PluginStartContext {
application: Pick<ApplicationStart, 'capabilities'>;
chrome: ChromeStart;
basePath: BasePathStart;
http: HttpStart;
i18n: I18nStart;
notifications: NotificationsStart;
overlays: OverlayStart;
@ -130,6 +131,7 @@ export function createPluginStartContext<TSetup, TStart, TPluginsSetup, TPlugins
},
chrome: deps.chrome,
basePath: deps.basePath,
http: deps.http,
i18n: deps.i18n,
notifications: deps.notifications,
overlays: deps.overlays,

View file

@ -91,6 +91,7 @@ beforeEach(() => {
application: applicationServiceMock.createStartContract(),
basePath: basePathServiceMock.createStartContract(),
chrome: chromeServiceMock.createStartContract(),
http: httpServiceMock.createStartContract(),
i18n: i18nServiceMock.createStartContract(),
injectedMetadata: injectedMetadataServiceMock.createStartContract(),
notifications: notificationServiceMock.createStartContract(),

View file

@ -37,6 +37,7 @@ export type PluginsServiceStartDeps = CoreStart;
export interface PluginsServiceSetup {
contracts: Map<string, unknown>;
}
/** @internal */
export interface PluginsServiceStart {
contracts: Map<string, unknown>;
}

View file

@ -138,9 +138,7 @@ export interface CoreSetup {
uiSettings: UiSettingsSetup;
}
// Warning: (ae-missing-release-tag) "CoreStart" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
// @public
export interface CoreStart {
// (undocumented)
application: ApplicationStart;
@ -149,6 +147,8 @@ export interface CoreStart {
// (undocumented)
chrome: ChromeStart;
// (undocumented)
http: HttpStart;
// (undocumented)
i18n: I18nStart;
// (undocumented)
injectedMetadata: InjectedMetadataStart;
@ -172,11 +172,18 @@ export class CoreSystem {
stop(): void;
}
// @public
export interface FatalErrorInfo {
// (undocumented)
message: string;
// (undocumented)
stack: string | undefined;
}
// @public
export interface FatalErrorsSetup {
add: (error: string | Error, source?: string) => never;
// Warning: (ae-forgotten-export) The symbol "ErrorInfo" needs to be exported by the entry point index.d.ts
get$: () => Rx.Observable<ErrorInfo>;
get$: () => Rx.Observable<FatalErrorInfo>;
}
// Warning: (ae-forgotten-export) The symbol "HttpService" needs to be exported by the entry point index.d.ts
@ -184,6 +191,9 @@ export interface FatalErrorsSetup {
// @public (undocumented)
export type HttpSetup = ReturnType<HttpService['setup']>;
// @public (undocumented)
export type HttpStart = ReturnType<HttpService['start']>;
// @public
export interface I18nSetup {
Context: ({ children }: {
@ -191,8 +201,6 @@ export interface I18nSetup {
}) => JSX.Element;
}
// Warning: (ae-missing-release-tag) "I18nStart" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type I18nStart = I18nSetup;
@ -331,8 +339,6 @@ export interface OverlayStart {
export interface Plugin<TSetup, TStart, TPluginsSetup extends Record<string, unknown> = {}, TPluginsStart extends Record<string, unknown> = {}> {
// (undocumented)
setup: (core: PluginSetupContext, plugins: TPluginsSetup) => TSetup | Promise<TSetup>;
// Warning: (ae-forgotten-export) The symbol "PluginStartContext" needs to be exported by the entry point index.d.ts
//
// (undocumented)
start: (core: PluginStartContext, plugins: TPluginsStart) => TStart | Promise<TStart>;
// (undocumented)
@ -364,6 +370,24 @@ export interface PluginSetupContext {
uiSettings: UiSettingsSetup;
}
// @public
export interface PluginStartContext {
// (undocumented)
application: Pick<ApplicationStart, 'capabilities'>;
// (undocumented)
basePath: BasePathStart;
// (undocumented)
chrome: ChromeStart;
// (undocumented)
http: HttpStart;
// (undocumented)
i18n: I18nStart;
// (undocumented)
notifications: NotificationsStart;
// (undocumented)
overlays: OverlayStart;
}
export { Toast }
// @public (undocumented)
@ -387,6 +411,7 @@ export class ToastsApi {
// @public (undocumented)
export class UiSettingsClient {
// Warning: (ae-forgotten-export) The symbol "UiSettingsClientParams" needs to be exported by the entry point index.d.ts
constructor(params: UiSettingsClientParams);
get$(key: string, defaultOverride?: any): Rx.Observable<any>;
get(key: string, defaultOverride?: any): any;
@ -407,10 +432,6 @@ export class UiSettingsClient {
isDefault(key: string): boolean;
isOverridden(key: string): boolean;
overrideLocalDefault(key: string, newDefault: any): void;
// Warning: (ae-forgotten-export) The symbol "UiSettingsClientParams" needs to be exported by the entry point index.d.ts
//
// (undocumented)
readonly params: UiSettingsClientParams;
remove(key: string): Promise<boolean>;
set(key: string, val: any): Promise<boolean>;
stop(): void;

View file

@ -41,7 +41,7 @@ export class UiSettingsClient {
private readonly defaults: UiSettingsState;
private cache: UiSettingsState;
constructor(readonly params: UiSettingsClientParams) {
constructor(params: UiSettingsClientParams) {
this.api = params.api;
this.defaults = cloneDeep(params.defaults);
this.cache = defaultsDeep({}, this.defaults, cloneDeep(params.initialSettings));

View file

@ -25,7 +25,7 @@ import { distinctUntilChanged, first, map } from 'rxjs/operators';
import { Config, ConfigPath, ConfigWithSchema, Env } from '.';
import { Logger, LoggerFactory } from '../logging';
/** @public */
/** @internal */
export class ConfigService {
private readonly log: Logger;

View file

@ -17,15 +17,10 @@
* under the License.
*/
/** @internal */
export { ConfigService } from './config_service';
/** @internal */
export { RawConfigService } from './raw_config_service';
/** @internal */
export { Config, ConfigPath, isConfigPath } from './config';
/** @internal */
export { ObjectToConfigAdapter } from './object_to_config_adapter';
/** @internal */
export { CliArgs } from './env';
export { Env, EnvironmentMode, PackageInfo } from './env';

View file

@ -57,6 +57,9 @@ export interface CoreSetup {
plugins: PluginsServiceSetup;
}
/**
* @public
*/
export interface CoreStart {
http: HttpServiceStart;
plugins: PluginsServiceStart;

View file

@ -90,7 +90,7 @@ export interface PluginManifest {
/**
* Small container object used to expose information about discovered plugins that may
* or may not have been started.
* @internal
* @public
*/
export interface DiscoveredPlugin {
/**

View file

@ -29,7 +29,7 @@ import { DiscoveredPlugin, DiscoveredPluginInternal, PluginWrapper, PluginName }
import { PluginsConfig } from './plugins_config';
import { PluginsSystem } from './plugins_system';
/** @internal */
/** @public */
export interface PluginsServiceSetup {
contracts: Map<PluginName, unknown>;
uiPlugins: {
@ -38,7 +38,7 @@ export interface PluginsServiceSetup {
};
}
/** @internal */
/** @public */
export interface PluginsServiceStart {
contracts: Map<PluginName, unknown>;
}

View file

@ -56,7 +56,7 @@ export class ClusterClient {
close(): void;
}
// @public (undocumented)
// @internal (undocumented)
export class ConfigService {
// Warning: (ae-forgotten-export) The symbol "Config" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "Env" needs to be exported by the entry point index.d.ts
@ -81,25 +81,19 @@ export interface CoreSetup {
elasticsearch: ElasticsearchServiceSetup;
// (undocumented)
http: HttpServiceSetup;
// Warning: (ae-incompatible-release-tags) The symbol "plugins" is marked as @public, but its signature references "PluginsServiceSetup" which is marked as @internal
//
// (undocumented)
plugins: PluginsServiceSetup;
}
// Warning: (ae-missing-release-tag) "CoreStart" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export interface CoreStart {
// (undocumented)
http: HttpServiceStart;
// Warning: (ae-incompatible-release-tags) The symbol "plugins" is marked as @public, but its signature references "PluginsServiceStart" which is marked as @internal
//
// (undocumented)
plugins: PluginsServiceStart;
}
// @internal
// @public
export interface DiscoveredPlugin {
readonly configPath: ConfigPath;
readonly id: PluginName;
@ -296,7 +290,7 @@ export interface PluginSetupContext {
};
}
// @internal (undocumented)
// @public (undocumented)
export interface PluginsServiceSetup {
// (undocumented)
contracts: Map<PluginName, unknown>;
@ -307,7 +301,7 @@ export interface PluginsServiceSetup {
};
}
// @internal (undocumented)
// @public (undocumented)
export interface PluginsServiceStart {
// (undocumented)
contracts: Map<PluginName, unknown>;