## Summary * Changes the value list imports to use a streaming in model * Adds a custom light hand spun multi-part parser for the incoming text * Adds a buffer pause and resume which continues to buffer the incoming data if an async event such as creating a list from the attachment file needs to happen but does not emit the lines until the resume continues. * Adds a data slicing if the buffer becomes larger than the maximum so that if we begin buffering too quickly within memory we don't blow up the limit of Elastic Search. * Adds unit tests ### Checklist - [x] [Unit or functional tests](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#cross-browser-compatibility) were updated or added to match the most common scenarios
18 lines
602 B
TypeScript
18 lines
602 B
TypeScript
/*
|
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
* or more contributor license agreements. Licensed under the Elastic License;
|
|
* you may not use this file except in compliance with the Elastic License.
|
|
*/
|
|
|
|
import { map } from 'rxjs/operators';
|
|
import { PluginInitializerContext } from 'kibana/server';
|
|
import { Observable } from 'rxjs';
|
|
|
|
import { ConfigType } from './config';
|
|
|
|
export const createConfig$ = (
|
|
context: PluginInitializerContext
|
|
): Observable<Readonly<ConfigType>> => {
|
|
return context.config.create<ConfigType>().pipe(map((config) => config));
|
|
};
|