kibana/packages/kbn-std/index.ts
Jean-Louis Leysens 01ecbd48f3
[Files] Limit concurrent uploads (server-side) (#139842)
* updated upload logic to respect aborts...

* added abort$ test

* create kbn-semaphore package

* remove duplicate sempahore implementation

* make sure that scheduling happens async

* limit concurrent upload requests

* fix copy-pasta error

* await the status update to avoid a race condition

* remove setImmediate

* move kbn-sempahore to kbn-std

* remove gettersetter pattern

* PR feedback about try catch block and made error message more clear

* typo
2022-09-05 03:20:26 -07:00

30 lines
1.2 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 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 { assertNever } from './src/assert_never';
export type { Freezable } from './src/deep_freeze';
export { deepFreeze } from './src/deep_freeze';
export { get } from './src/get';
export { mapToObject } from './src/map_to_object';
export { merge } from './src/merge';
export { pick } from './src/pick';
export { withTimeout, isPromise } from './src/promise';
export type { URLMeaningfulParts } from './src/url';
export { isRelativeUrl, modifyUrl, getUrlOrigin } from './src/url';
export { unset } from './src/unset';
export { getFlattenedObject } from './src/get_flattened_object';
export { ensureNoUnsafeProperties } from './src/ensure_no_unsafe_properties';
export {
map$,
mapWithLimit$,
asyncMap,
asyncMapWithLimit,
asyncForEach,
asyncForEachWithLimit,
} from './src/iteration';
export { Semaphore } from './src/semaphore';