diff --git a/api-documents/kit.domproxy.enhancedebugger.md b/api-documents/kit.domproxy.enhancedebugger.md deleted file mode 100644 index 1e48184..0000000 --- a/api-documents/kit.domproxy.enhancedebugger.md +++ /dev/null @@ -1,11 +0,0 @@ - - -[Home](./index.md) > [@holoflows/kit](./kit.md) > [DOMProxy](./kit.domproxy.md) > [enhanceDebugger](./kit.domproxy.enhancedebugger.md) - -## DOMProxy.enhanceDebugger variable - -Signature: - -```typescript -enhanceDebugger: () => void -``` diff --git a/api-documents/kit.domproxy.md b/api-documents/kit.domproxy.md index 5e967d6..cbd4b7f 100644 --- a/api-documents/kit.domproxy.md +++ b/api-documents/kit.domproxy.md @@ -2,17 +2,52 @@ [Home](./index.md) > [@holoflows/kit](./kit.md) > [DOMProxy](./kit.domproxy.md) -## DOMProxy namespace +## DOMProxy interface + +DOMProxy provide an interface that be stable even dom is changed. Signature: ```typescript -export declare namespace DOMProxy +export interface DOMProxy extends Omit>, '_' | '$'> ``` +Extends: Omit<Emitter<[DOMProxyEvents](./kit.domproxyevents.md) + +## Remarks + +DOMProxy provide 3 nodes. `before`, `current` and `after`. `current` is a fake dom node powered by Proxy, it will forward all your operations to the `realCurrent`. + +`before` and `after` is a true `span` that always point to before and after of `realCurrent` + +Special Handlers: + +\*forward\*: forward to current `realCurrent` + +\*undo\*: undo effect when `realCurrent` changes + +\*move\*: move effect to new `realCurrent` + +- style (forward, undo, move) - addEventListener (forward, undo, move) - appendChild (forward, undo, move) + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [after](./kit.domproxy.after.md) | After | Returns the after element, if it doesn't exist, create it implicitly. | +| [afterShadow](./kit.domproxy.aftershadow.md) | ShadowRoot | Returns the ShadowRoot of the after element. | +| [before](./kit.domproxy.before.md) | Before | Returns the before element, if it doesn't exist, create it implicitly. | +| [beforeShadow](./kit.domproxy.beforeshadow.md) | ShadowRoot | Returns the ShadowRoot of the before element. | +| [current](./kit.domproxy.current.md) | ProxiedElement | A proxy that always point to realCurrent, and if realCurrent changes, all action will be forwarded to new realCurrent | +| [destroyed](./kit.domproxy.destroyed.md) | boolean | | +| [observer](./kit.domproxy.observer.md) | { readonly observer: MutationObserver \| null; callback: MutationCallback \| undefined; init: MutationObserverInit \| undefined; } | Observer for the current node. You need to set callback and init to activate it. | +| [realCurrent](./kit.domproxy.realcurrent.md) | ProxiedElement \| null | The real current of the current | -## Variables +## Methods -| Variable | Description | +| Method | Description | | --- | --- | -| [enhanceDebugger](./kit.domproxy.enhancedebugger.md) | | +| [destroy()](./kit.domproxy.destroy.md) | Destroy the DOMProxy | +| [has(type)](./kit.domproxy.has.md) | Get weak reference to before node | +| [has(type)](./kit.domproxy.has_1.md) | Get weak reference to after node | +| [has(type)](./kit.domproxy.has_2.md) | Get weak reference to beforeShadow or afterShadow node | diff --git a/api-documents/kit.eventwatcher.md b/api-documents/kit.eventwatcher.md index 0b84ace..4ef4942 100644 --- a/api-documents/kit.eventwatcher.md +++ b/api-documents/kit.eventwatcher.md @@ -11,7 +11,7 @@ A Watcher based on event handlers. ```typescript export declare class EventWatcher extends Watcher ``` -Extends: [Watcher](./kit.watcher.md)<T, Before, After, SingleMode> +Extends: [Watcher](./kit.watcher.md) ## Example @@ -19,7 +19,6 @@ export declare class EventWatcher console.log(node)) document.addEventListener('event', e.eventListener) - ``` ## Constructors diff --git a/api-documents/kit.intervalwatcher.md b/api-documents/kit.intervalwatcher.md index f831afa..5ccfa97 100644 --- a/api-documents/kit.intervalwatcher.md +++ b/api-documents/kit.intervalwatcher.md @@ -11,7 +11,7 @@ A watcher based on time interval. ```typescript export declare class IntervalWatcher extends Watcher ``` -Extends: [Watcher](./kit.watcher.md)<T, Before, After, SingleMode> +Extends: [Watcher](./kit.watcher.md) ## Example @@ -22,7 +22,6 @@ new IntervalWatcher(ls) console.log(node) }) .startWatch(1000) - ``` ## Methods diff --git a/api-documents/kit.liveselector._constructor_.md b/api-documents/kit.liveselector._constructor_.md index d637a06..fad1782 100644 --- a/api-documents/kit.liveselector._constructor_.md +++ b/api-documents/kit.liveselector._constructor_.md @@ -16,5 +16,5 @@ constructor(initialElements?: readonly T[]); | Parameter | Type | Description | | --- | --- | --- | -| initialElements | readonly T\[\] | provides initial results, equals to .replace(() => initialElements) | +| initialElements | readonly T\[\] | (Optional) provides initial results, equals to .replace(() => initialElements) | diff --git a/api-documents/kit.liveselector.at.md b/api-documents/kit.liveselector.at.md index 669fbe0..6b7ea9a 100644 --- a/api-documents/kit.liveselector.at.md +++ b/api-documents/kit.liveselector.at.md @@ -27,6 +27,5 @@ at(n: SingleMode extends true ? 'LiveSelector.nth() is not available in SingleMo ```ts ls.at(-1) - ``` diff --git a/api-documents/kit.liveselector.clone.md b/api-documents/kit.liveselector.clone.md index de95d6b..123953e 100644 --- a/api-documents/kit.liveselector.clone.md +++ b/api-documents/kit.liveselector.clone.md @@ -22,6 +22,5 @@ a new LiveSelector with same action ```ts ls.clone() - ``` diff --git a/api-documents/kit.liveselector.closest.md b/api-documents/kit.liveselector.closest.md index 3aa4c15..b9b3534 100644 --- a/api-documents/kit.liveselector.closest.md +++ b/api-documents/kit.liveselector.closest.md @@ -27,6 +27,5 @@ closest(parentOfNth: number): LiveSelector; ```ts ls.closest(2) // parentElement.parentElement - ``` diff --git a/api-documents/kit.liveselector.closest_1.md b/api-documents/kit.liveselector.closest_1.md index 5702a06..4ac7872 100644 --- a/api-documents/kit.liveselector.closest_1.md +++ b/api-documents/kit.liveselector.closest_1.md @@ -27,6 +27,5 @@ closest(selectors: K): LiveSelector(newEle: LiveSelector): LiveSelector - -[Home](./index.md) > [@holoflows/kit](./kit.md) > [LiveSelector](./kit.liveselector.md) > [enhanceDebugger](./kit.liveselector.enhancedebugger.md) - -## LiveSelector.enhanceDebugger() method - -Call this function to enhance the debug experience in the Chrome DevTools - -You need to open "Enable custom formatters" in your DevTools settings. - -Signature: - -```typescript -static enhanceDebugger(): void; -``` -Returns: - -void - diff --git a/api-documents/kit.liveselector.filter.md b/api-documents/kit.liveselector.filter.md index cfaf3b0..ad8e70c 100644 --- a/api-documents/kit.liveselector.filter.md +++ b/api-documents/kit.liveselector.filter.md @@ -27,6 +27,5 @@ filter(f: (value: T, index: number, array: T[]) => any): LiveSelector x.innerText.match('hello')) - ``` diff --git a/api-documents/kit.liveselector.flat.md b/api-documents/kit.liveselector.flat.md index 0b601e8..e42ad55 100644 --- a/api-documents/kit.liveselector.flat.md +++ b/api-documents/kit.liveselector.flat.md @@ -20,6 +20,5 @@ flat(): LiveSelector ? U : never, SingleMode>; ```ts ls.flat() - ``` diff --git a/api-documents/kit.liveselector.getelementsbyclassname.md b/api-documents/kit.liveselector.getelementsbyclassname.md index 9c285b3..7f95db9 100644 --- a/api-documents/kit.liveselector.getelementsbyclassname.md +++ b/api-documents/kit.liveselector.getelementsbyclassname.md @@ -28,6 +28,5 @@ Equal to ls.querySelectorAll('.a .b') ```ts ls.getElementsByClassName('a').getElementsByClassName('b') - ``` diff --git a/api-documents/kit.liveselector.getelementsbytagname.md b/api-documents/kit.liveselector.getelementsbytagname.md index bf0c765..9120818 100644 --- a/api-documents/kit.liveselector.getelementsbytagname.md +++ b/api-documents/kit.liveselector.getelementsbytagname.md @@ -28,6 +28,5 @@ Equal to ls.querySelectorAll('a b') ```ts ls.getElementsByTagName('a').getElementsByTagName('b') - ``` diff --git a/api-documents/kit.liveselector.map.md b/api-documents/kit.liveselector.map.md index 7fd9ac1..d38e5b9 100644 --- a/api-documents/kit.liveselector.map.md +++ b/api-documents/kit.liveselector.map.md @@ -27,6 +27,5 @@ map(callbackfn: (element: T, index: number, array: T[]) => NextType): ```ts ls.map(x => x.parentElement) - ``` diff --git a/api-documents/kit.liveselector.md b/api-documents/kit.liveselector.md index f28252c..c3d9bd4 100644 --- a/api-documents/kit.liveselector.md +++ b/api-documents/kit.liveselector.md @@ -22,7 +22,6 @@ Call [\#evaluate](./kit.liveselector.evaluate.md) to evaluate the element. Falsy ```ts const ls = new LiveSelector().querySelectorAll('a').map(x => x.href) ls.evaluate() // returns all urls at the current time. - ``` ## Constructors @@ -49,7 +48,6 @@ ls.evaluate() // returns all urls at the current time. | [closest(selectors)](./kit.liveselector.closest_3.md) | | | | [concat(newEle)](./kit.liveselector.concat.md) | | Combines two LiveSelector. | | [enableSingleMode()](./kit.liveselector.enablesinglemode.md) | | Enable single mode. Only 1 result will be emitted. | -| [enhanceDebugger()](./kit.liveselector.enhancedebugger.md) | static | Call this function to enhance the debug experience in the Chrome DevToolsYou need to open "Enable custom formatters" in your DevTools settings. | | [evaluate()](./kit.liveselector.evaluate.md) | | Evaluate selector expression | | [filter(f)](./kit.liveselector.filter.md) | | Select the elements of a LiveSelector that meet the condition specified in a callback function. | | [flat()](./kit.liveselector.flat.md) | | Flat T\[\]\[\] to T\[\] | diff --git a/api-documents/kit.liveselector.queryselector.md b/api-documents/kit.liveselector.queryselector.md index 2a8e2d9..9742b15 100644 --- a/api-documents/kit.liveselector.queryselector.md +++ b/api-documents/kit.liveselector.queryselector.md @@ -27,7 +27,6 @@ querySelector(selector: K): LiveSelector< ```ts ls.querySelector('div#root') - ``` About chain on querySelector @@ -35,6 +34,5 @@ About chain on querySelector ls.querySelector('a').querySelector('b') // equals to ls.querySelector('a b') - ``` diff --git a/api-documents/kit.liveselector.queryselectorall.md b/api-documents/kit.liveselector.queryselectorall.md index 1136d01..7573e6d 100644 --- a/api-documents/kit.liveselector.queryselectorall.md +++ b/api-documents/kit.liveselector.queryselectorall.md @@ -27,7 +27,6 @@ querySelectorAll(selector: K): LiveSelect ```ts ls.querySelector('div > div') - ``` About chain on querySelector @@ -35,6 +34,5 @@ About chain on querySelector ls.querySelectorAll('a').querySelectorAll('b') // equals to ls.querySelectorAll('a b') - ``` diff --git a/api-documents/kit.liveselector.replace.md b/api-documents/kit.liveselector.replace.md index 7a7d71c..1297beb 100644 --- a/api-documents/kit.liveselector.replace.md +++ b/api-documents/kit.liveselector.replace.md @@ -27,6 +27,5 @@ replace(f: (arr: T[]) => NextType[]): LiveSelector lodash.dropRight(x, 2)) - ``` diff --git a/api-documents/kit.liveselector.reverse.md b/api-documents/kit.liveselector.reverse.md index 0cc9beb..82bb3e4 100644 --- a/api-documents/kit.liveselector.reverse.md +++ b/api-documents/kit.liveselector.reverse.md @@ -20,6 +20,5 @@ reverse(): LiveSelector; ```ts ls.reverse() - ``` diff --git a/api-documents/kit.liveselector.slice.md b/api-documents/kit.liveselector.slice.md index 7ff744f..6e74e37 100644 --- a/api-documents/kit.liveselector.slice.md +++ b/api-documents/kit.liveselector.slice.md @@ -16,8 +16,8 @@ slice(start?: number, end?: number): LiveSelector; | Parameter | Type | Description | | --- | --- | --- | -| start | number | The beginning of the specified portion of the array. | -| end | number | The end of the specified portion of the array. | +| start | number | (Optional) The beginning of the specified portion of the array. | +| end | number | (Optional) The end of the specified portion of the array. | Returns: @@ -28,6 +28,5 @@ slice(start?: number, end?: number): LiveSelector; ```ts ls.slice(2, 4) - ``` diff --git a/api-documents/kit.liveselector.sort.md b/api-documents/kit.liveselector.sort.md index 0b541b7..d7280bb 100644 --- a/api-documents/kit.liveselector.sort.md +++ b/api-documents/kit.liveselector.sort.md @@ -16,7 +16,7 @@ sort(compareFn?: (a: T, b: T) => number): LiveSelector; | Parameter | Type | Description | | --- | --- | --- | -| compareFn | (a: T, b: T) => number | The name of the function used to determine the order of the elements. If omitted, the elements are sorted in ascending, ASCII character order. | +| compareFn | (a: T, b: T) => number | (Optional) The name of the function used to determine the order of the elements. If omitted, the elements are sorted in ascending, ASCII character order. | Returns: @@ -27,6 +27,5 @@ sort(compareFn?: (a: T, b: T) => number): LiveSelector; ```ts ls.sort((a, b) => a.innerText.length - b.innerText.length) - ``` diff --git a/api-documents/kit.md b/api-documents/kit.md index f4e1e19..2b49373 100644 --- a/api-documents/kit.md +++ b/api-documents/kit.md @@ -56,7 +56,6 @@ A toolkit for browser extension developing. | --- | --- | | [assertEnvironment](./kit.assertenvironment.md) | | | [assertNotEnvironment](./kit.assertnotenvironment.md) | | -| [DOMProxy](./kit.domproxy.md) | | | [isEnvironment](./kit.isenvironment.md) | | ## Type Aliases diff --git a/api-documents/kit.mutationobserverwatcher._constructor_.md b/api-documents/kit.mutationobserverwatcher._constructor_.md index 991260d..eb4928e 100644 --- a/api-documents/kit.mutationobserverwatcher._constructor_.md +++ b/api-documents/kit.mutationobserverwatcher._constructor_.md @@ -20,6 +20,6 @@ constructor( | Parameter | Type | Description | | --- | --- | --- | | liveSelector | [LiveSelector](./kit.liveselector.md)<T, SingleMode> | | -| consistentWatchRoot | Node | | -| stopWatchOnDisconnected | boolean | | +| consistentWatchRoot | Node | (Optional) | +| stopWatchOnDisconnected | boolean | (Optional) | diff --git a/api-documents/kit.mutationobserverwatcher.md b/api-documents/kit.mutationobserverwatcher.md index 3f60d9c..1133cc6 100644 --- a/api-documents/kit.mutationobserverwatcher.md +++ b/api-documents/kit.mutationobserverwatcher.md @@ -11,7 +11,7 @@ A watcher based on MutationObserver ```typescript export declare class MutationObserverWatcher extends Watcher ``` -Extends: [Watcher](./kit.watcher.md)<T, Before, After, SingleMode> +Extends: [Watcher](./kit.watcher.md) ## Example @@ -22,7 +22,6 @@ new MutationObserverWatcher(ls) console.log(node) }) .startWatch() - ``` ## Constructors diff --git a/api-documents/kit.printenvironment.md b/api-documents/kit.printenvironment.md index 61e360b..4e1f99c 100644 --- a/api-documents/kit.printenvironment.md +++ b/api-documents/kit.printenvironment.md @@ -16,7 +16,7 @@ export declare function printEnvironment(e?: Environment): string; | Parameter | Type | Description | | --- | --- | --- | -| e | [Environment](./kit.environment.md) | Printing environment bit flag | +| e | [Environment](./kit.environment.md) | (Optional) Printing environment bit flag | Returns: diff --git a/api-documents/kit.targetboundeventregistry.on.md b/api-documents/kit.targetboundeventregistry.on.md index 872df8d..41c6032 100644 --- a/api-documents/kit.targetboundeventregistry.on.md +++ b/api-documents/kit.targetboundeventregistry.on.md @@ -15,7 +15,7 @@ on(callback: (data: T) => void, options?: TargetBoundEventListenerOptions): () = | Parameter | Type | Description | | --- | --- | --- | | callback | (data: T) => void | | -| options | [TargetBoundEventListenerOptions](./kit.targetboundeventlisteneroptions.md) | | +| options | [TargetBoundEventListenerOptions](./kit.targetboundeventlisteneroptions.md) | (Optional) | Returns: diff --git a/api-documents/kit.unboundedregistry.md b/api-documents/kit.unboundedregistry.md index 4e6e3cb..6c32afc 100644 --- a/api-documents/kit.unboundedregistry.md +++ b/api-documents/kit.unboundedregistry.md @@ -9,7 +9,7 @@ ```typescript export interface UnboundedRegistry extends Omit, 'send'>, AsyncIterable ``` -Extends: Omit<[TargetBoundEventRegistry](./kit.targetboundeventregistry.md)<T>, 'send'>, AsyncIterable<T> +Extends: Omit<[TargetBoundEventRegistry](./kit.targetboundeventregistry.md)<T>, 'send'>, AsyncIterable ## Methods diff --git a/api-documents/kit.valueref._constructor_.md b/api-documents/kit.valueref._constructor_.md index 800a7a3..c411b96 100644 --- a/api-documents/kit.valueref._constructor_.md +++ b/api-documents/kit.valueref._constructor_.md @@ -17,5 +17,5 @@ constructor(_value: T, isEqual?: (a: T, b: T) => boolean); | Parameter | Type | Description | | --- | --- | --- | | \_value | T | The internal value | -| isEqual | (a: T, b: T) => boolean | The comparer function | +| isEqual | (a: T, b: T) => boolean | (Optional) The comparer function | diff --git a/api-documents/kit.valueref.addlistener.md b/api-documents/kit.valueref.addlistener.md index 413876d..29016be 100644 --- a/api-documents/kit.valueref.addlistener.md +++ b/api-documents/kit.valueref.addlistener.md @@ -27,6 +27,5 @@ addListener(fn: (newVal: T, oldVal: T) => void): () => void; ```ts React.useEffect(() => ref.addListener(setState)) - ``` diff --git a/api-documents/kit.valueref.md b/api-documents/kit.valueref.md index 36a1f93..bf9ff53 100644 --- a/api-documents/kit.valueref.md +++ b/api-documents/kit.valueref.md @@ -31,7 +31,6 @@ function useValueRef(ref: ValueRef) { return value } ref.value = 42 // useRef will receive the new value - ``` ## Constructors diff --git a/api-documents/kit.watcher.assignkeys.md b/api-documents/kit.watcher.assignkeys.md index dc43dde..b00bc24 100644 --- a/api-documents/kit.watcher.assignkeys.md +++ b/api-documents/kit.watcher.assignkeys.md @@ -29,6 +29,5 @@ this ```ts watcher.assignKeys(node => node.innerText) - ``` diff --git a/api-documents/kit.watcher.enhancedebugger.md b/api-documents/kit.watcher.enhancedebugger.md deleted file mode 100644 index 243190a..0000000 --- a/api-documents/kit.watcher.enhancedebugger.md +++ /dev/null @@ -1,19 +0,0 @@ - - -[Home](./index.md) > [@holoflows/kit](./kit.md) > [Watcher](./kit.watcher.md) > [enhanceDebugger](./kit.watcher.enhancedebugger.md) - -## Watcher.enhanceDebugger() method - -Call this function to enhance the debug experience in the Chrome DevTools - -You need to open "Enable custom formatters" in your DevTools settings. - -Signature: - -```typescript -static enhanceDebugger(): void; -``` -Returns: - -void - diff --git a/api-documents/kit.watcher.md b/api-documents/kit.watcher.md index ea18a50..30965b4 100644 --- a/api-documents/kit.watcher.md +++ b/api-documents/kit.watcher.md @@ -9,11 +9,9 @@ Use LiveSelector to watch dom change Signature: ```typescript -export declare abstract class Watcher extends Emitter> implements PromiseLike> +export declare abstract class Watcher implements PromiseLike> ``` -Extends: Emitter<[WatcherEvents](./kit.watcherevents.md)<T>> - -Implements: PromiseLike<ResultOf<SingleMode, T>> +Implements: PromiseLike<ResultOf ## Constructors @@ -55,7 +53,6 @@ export declare abstract class Watchernode to keyIf the key is changed, the same node will call through forEachRemove then forEach | | [defaultStarterForThen()](./kit.watcher.defaultstarterforthen.md) | | | | [dismissSingleModeWarning()](./kit.watcher.dismisssinglemodewarning.md) | | Dismiss the warning that let you enable single mode but the warning is false positive. | -| [enhanceDebugger()](./kit.watcher.enhancedebugger.md) | static | Call this function to enhance the debug experience in the Chrome DevToolsYou need to open "Enable custom formatters" in your DevTools settings. | | [getDOMProxyByKey(key)](./kit.watcher.getdomproxybykey.md) | | Get DOMProxy by key. DOMProxy will be unavailable if it is deleted | | [omitWarningForForgetWatch()](./kit.watcher.omitwarningforforgetwatch.md) | | If you're expecting Watcher may not be called, call this function, this will omit the warning. | | [omitWarningForRepeatedKeys()](./kit.watcher.omitwarningforrepeatedkeys.md) | | If you're expecting repeating keys, call this function, this will omit the warning. | diff --git a/api-documents/kit.watcher.setcomparer.md b/api-documents/kit.watcher.setcomparer.md index 014e2e7..b93796d 100644 --- a/api-documents/kit.watcher.setcomparer.md +++ b/api-documents/kit.watcher.setcomparer.md @@ -18,8 +18,8 @@ setComparer(keyComparer?: (a: unknown, b: unknown) => boolean, valueComparer?: ( | Parameter | Type | Description | | --- | --- | --- | -| keyComparer | (a: unknown, b: unknown) => boolean | compare between two keys, defaults to === | -| valueComparer | (a: T, b: T) => boolean | compare between two value, defaults to === | +| keyComparer | (a: unknown, b: unknown) => boolean | (Optional) compare between two keys, defaults to === | +| valueComparer | (a: T, b: T) => boolean | (Optional) compare between two value, defaults to === | Returns: @@ -33,6 +33,5 @@ watcher.setComparer( (a, b) => JSON.stringify(a) === JSON.stringify(b), (a, b) => a.equals(b) ) - ``` diff --git a/api-documents/kit.watcher.then.md b/api-documents/kit.watcher.then.md index ea3381f..fb229d5 100644 --- a/api-documents/kit.watcher.then.md +++ b/api-documents/kit.watcher.then.md @@ -19,9 +19,9 @@ then, TResult2 = never>(onfulfilled?: ((value | Parameter | Type | Description | | --- | --- | --- | -| onfulfilled | ((value: ResultOf<SingleMode, T>) => TResult1 \| PromiseLike<TResult1>) \| null | | -| onrejected | ((reason: any) => TResult2 \| PromiseLike<TResult2>) \| null | | -| options | { minimalResultsRequired?: number; timeout?: number; } | Options for watcher | +| onfulfilled | ((value: ResultOf<SingleMode, T>) => TResult1 \| PromiseLike<TResult1>) \| null | (Optional) | +| onrejected | ((reason: any) => TResult2 \| PromiseLike<TResult2>) \| null | (Optional) | +| options | { minimalResultsRequired?: number; timeout?: number; } | (Optional) Options for watcher | Returns: @@ -37,6 +37,5 @@ This is an implementation of `PromiseLike` ```ts const value = await watcher const value2 = await watcher(undefined, undefined, { minimalResultsRequired: 5 }) - ``` diff --git a/api-documents/kit.watcher.useforeach.md b/api-documents/kit.watcher.useforeach.md index 7678d0b..726defb 100644 --- a/api-documents/kit.watcher.useforeach.md +++ b/api-documents/kit.watcher.useforeach.md @@ -70,6 +70,5 @@ watcher.useForeach((value, key) => { } }) - ``` diff --git a/api-documents/kit.webextensionmessage._constructor_.md b/api-documents/kit.webextensionmessage._constructor_.md index 8d5e22b..9116e39 100644 --- a/api-documents/kit.webextensionmessage._constructor_.md +++ b/api-documents/kit.webextensionmessage._constructor_.md @@ -16,5 +16,5 @@ constructor(options?: WebExtensionMessageOptions); | Parameter | Type | Description | | --- | --- | --- | -| options | [WebExtensionMessageOptions](./kit.webextensionmessageoptions.md) | WebExtensionMessage options | +| options | [WebExtensionMessageOptions](./kit.webextensionmessageoptions.md) | (Optional) WebExtensionMessage options | diff --git a/doc/holoflows-kit.api.report.md b/doc/holoflows-kit.api.report.md index f12e3df..c55cd48 100644 --- a/doc/holoflows-kit.api.report.md +++ b/doc/holoflows-kit.api.report.md @@ -4,7 +4,7 @@ ```ts -/// +/// import { Emitter } from '@servie/events'; import { EventListener as EventListener_2 } from '@servie/events'; @@ -34,12 +34,6 @@ export namespace assertNotEnvironment { // @public export function DOMProxy(options?: Partial>): DOMProxy; -// @public (undocumented) -export namespace DOMProxy { - var // (undocumented) - enhanceDebugger: () => void; -} - // @public export interface DOMProxy extends Omit>, '_' | '$'> { readonly after: After; @@ -136,7 +130,6 @@ export class LiveSelector { closest(selectors: string): LiveSelector; concat(newEle: LiveSelector): LiveSelector; enableSingleMode(): LiveSelector; - static enhanceDebugger(): void; evaluate(): SingleMode extends true ? T | undefined : T[]; filter(f: (value: T, index: number, array: T[]) => any): LiveSelector, SingleMode>; flat(): LiveSelector ? U : never, SingleMode>; @@ -260,7 +253,7 @@ export class ValueRef { // Warning: (ae-forgotten-export) The symbol "ResultOf" needs to be exported by the entry point index.d.ts // // @public -export abstract class Watcher extends Emitter> implements PromiseLike> { +export abstract class Watcher implements PromiseLike> { constructor(liveSelector: LiveSelector); // (undocumented) addListener>(type: K, callback: EventListener_2, K>): this; @@ -269,7 +262,6 @@ export abstract class Watcher>; - static enhanceDebugger(): void; protected findNodeFromListByKey: (list: readonly T[], keys: readonly unknown[]) => (key: unknown) => T | null; get firstDOMProxy(): T extends Node ? DOMProxy : never; protected _firstDOMProxy: DOMProxy; @@ -287,7 +279,7 @@ export abstract class Watcher>(type: K, callback: EventListener_2, K>): this; // Warning: (ae-forgotten-export) The symbol "requestIdleCallback" needs to be exported by the entry point index.d.ts - protected readonly requestIdleCallback: typeof requestIdleCallback; + protected readonly requestIdleCallback: typeof requestIdleCallback_2; protected scheduleWatcherCheck: () => void; setComparer(keyComparer?: (a: unknown, b: unknown) => boolean, valueComparer?: (a: T, b: T) => boolean): this; setDOMProxyOption(option: Partial>): this; diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index 6939be4..0000000 --- a/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - preset: 'ts-jest', - testEnvironment: 'node', - roots: ['./src/'], -} diff --git a/package.json b/package.json index 48e31dd..45ace8b 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,6 @@ { "name": "@holoflows/kit", + "packageManager": "pnpm@7.1.2", "version": "0.9.0", "bugs": { "url": "https://github.com/DimensionDev/Holoflows-Kit/issues" @@ -22,7 +23,7 @@ } }, "scripts": { - "build": "env-cmd -e production run-p clean \"build:tsc -- {@}\" build:rollup", + "build": "env-cmd -e production run-s clean build:tsc build:rollup", "build:rollup": "rollup -c -m", "build:tsc": "tsc", "clean": "rimraf ./es ./umd", @@ -32,41 +33,35 @@ "eslint": "eslint . --ext .ts,.tsx", "eslint:watch": "esw . --ext .ts,.tsx -w --color", "prepublishOnly": "npm run build", - "start": "env-cmd -e development run-p \"start:tsc -- {@}\" start:rollup", + "start": "env-cmd -e development run-p start:tsc start:rollup", "start:rollup": "rollup -c -w", - "start:tsc": "tsc --watch", - "test": "jest --watch", - "test:ci": "jest" + "start:tsc": "tsc --watch" }, "dependencies": { - "@servie/events": "^1.0.0", + "@servie/events": "^3.0.0", "event-iterator": "^2.0.0", - "jsx-jsonml-devtools-renderer": "^1.4.3", "lodash-es": "^4.17.21", - "tslib": "^2.3.0" + "tslib": "^2.4.0" }, "devDependencies": { - "@microsoft/api-documenter": "^7.13.33", - "@microsoft/api-extractor": "^7.18.4", - "@rollup/plugin-commonjs": "^19.0.1", - "@rollup/plugin-node-resolve": "^13.0.4", - "@rollup/plugin-replace": "^3.0.0", - "@types/jest": "^26.0.24", - "@types/lodash-es": "^4.17.4", - "@typescript-eslint/eslint-plugin": "^4.28.4", - "@typescript-eslint/parser": "^4.28.4", + "@microsoft/api-documenter": "^7.17.15", + "@microsoft/api-extractor": "^7.24.1", + "@rollup/plugin-commonjs": "^22.0.0", + "@rollup/plugin-node-resolve": "^13.3.0", + "@rollup/plugin-replace": "^4.0.0", + "@types/lodash-es": "^4.17.6", + "@typescript-eslint/eslint-plugin": "^5.25.0", + "@typescript-eslint/parser": "^5.25.0", "env-cmd": "^10.1.0", - "eslint": "^7.31.0", - "eslint-watch": "^7.0.0", - "jest": "^27.0.6", + "eslint": "^8.15.0", + "eslint-watch": "^8.0.0", "npm-run-all": "^4.1.5", - "rimraf": "^3.0.1", - "rollup": "^2.54.0", + "rimraf": "^3.0.2", + "rollup": "^2.74.1", "rollup-plugin-analyzer": "^4.0.0", - "rollup-plugin-typescript2": "^0.30.0", - "ts-jest": "^27.0.4", - "ts-node": "^10.1.0", - "typescript": "^4.3.5", + "rollup-plugin-typescript2": "^0.31.2", + "ts-node": "^10.7.0", + "typescript": "^4.6.4", "web-ext-types": "^3.2.1" }, "peerDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6d541ea..385d48b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,714 +1,153 @@ -lockfileVersion: 5.3 +lockfileVersion: 5.4 specifiers: - '@microsoft/api-documenter': ^7.13.33 - '@microsoft/api-extractor': ^7.18.4 - '@rollup/plugin-commonjs': ^19.0.1 - '@rollup/plugin-node-resolve': ^13.0.4 - '@rollup/plugin-replace': ^3.0.0 - '@servie/events': ^1.0.0 - '@types/jest': ^26.0.24 - '@types/lodash-es': ^4.17.4 - '@typescript-eslint/eslint-plugin': ^4.28.4 - '@typescript-eslint/parser': ^4.28.4 + '@microsoft/api-documenter': ^7.17.15 + '@microsoft/api-extractor': ^7.24.1 + '@rollup/plugin-commonjs': ^22.0.0 + '@rollup/plugin-node-resolve': ^13.3.0 + '@rollup/plugin-replace': ^4.0.0 + '@servie/events': ^3.0.0 + '@types/lodash-es': ^4.17.6 + '@typescript-eslint/eslint-plugin': ^5.25.0 + '@typescript-eslint/parser': ^5.25.0 env-cmd: ^10.1.0 - eslint: ^7.31.0 - eslint-watch: ^7.0.0 + eslint: ^8.15.0 + eslint-watch: ^8.0.0 event-iterator: ^2.0.0 - jest: ^27.0.6 - jsx-jsonml-devtools-renderer: ^1.4.3 lodash-es: ^4.17.21 npm-run-all: ^4.1.5 - rimraf: ^3.0.1 - rollup: ^2.54.0 + rimraf: ^3.0.2 + rollup: ^2.74.1 rollup-plugin-analyzer: ^4.0.0 - rollup-plugin-typescript2: ^0.30.0 - ts-jest: ^27.0.4 - ts-node: ^10.1.0 - tslib: ^2.3.0 - typescript: ^4.3.5 + rollup-plugin-typescript2: ^0.31.2 + ts-node: ^10.7.0 + tslib: ^2.4.0 + typescript: ^4.6.4 web-ext-types: ^3.2.1 dependencies: - '@servie/events': 1.0.0 + '@servie/events': 3.0.0 event-iterator: 2.0.0 - jsx-jsonml-devtools-renderer: 1.4.3 lodash-es: 4.17.21 - tslib: 2.3.0 + tslib: 2.4.0 devDependencies: - '@microsoft/api-documenter': 7.13.33 - '@microsoft/api-extractor': 7.18.4 - '@rollup/plugin-commonjs': 19.0.1_rollup@2.54.0 - '@rollup/plugin-node-resolve': 13.0.4_rollup@2.54.0 - '@rollup/plugin-replace': 3.0.0_rollup@2.54.0 - '@types/jest': 26.0.24 - '@types/lodash-es': 4.17.4 - '@typescript-eslint/eslint-plugin': 4.28.4_b1648df9f9ba40bdeef3710a5a5af353 - '@typescript-eslint/parser': 4.28.4_eslint@7.31.0+typescript@4.3.5 + '@microsoft/api-documenter': 7.17.15 + '@microsoft/api-extractor': 7.24.1 + '@rollup/plugin-commonjs': 22.0.0_rollup@2.74.1 + '@rollup/plugin-node-resolve': 13.3.0_rollup@2.74.1 + '@rollup/plugin-replace': 4.0.0_rollup@2.74.1 + '@types/lodash-es': 4.17.6 + '@typescript-eslint/eslint-plugin': 5.25.0_qo2hgs5jt7x2a3p77h2rutcdae + '@typescript-eslint/parser': 5.25.0_hcfsmds2fshutdssjqluwm76uu env-cmd: 10.1.0 - eslint: 7.31.0 - eslint-watch: 7.0.0_eslint@7.31.0 - jest: 27.0.6_ts-node@10.1.0 + eslint: 8.15.0 + eslint-watch: 8.0.0_eslint@8.15.0 npm-run-all: 4.1.5 rimraf: 3.0.2 - rollup: 2.54.0 + rollup: 2.74.1 rollup-plugin-analyzer: 4.0.0 - rollup-plugin-typescript2: 0.30.0_rollup@2.54.0+typescript@4.3.5 - ts-jest: 27.0.4_52cc4273aa16028085013af47e479e10 - ts-node: 10.1.0_typescript@4.3.5 - typescript: 4.3.5 + rollup-plugin-typescript2: 0.31.2_lq4dy2bb4fhoyaf2vwyb4geyfa + ts-node: 10.7.0_typescript@4.6.4 + typescript: 4.6.4 web-ext-types: 3.2.1 packages: - /@babel/code-frame/7.12.11: - resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==} - dependencies: - '@babel/highlight': 7.14.5 - dev: true - - /@babel/code-frame/7.14.5: - resolution: {integrity: sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.14.5 - dev: true - - /@babel/compat-data/7.14.7: - resolution: {integrity: sha512-nS6dZaISCXJ3+518CWiBfEr//gHyMO02uDxBkXTKZDN5POruCnOZ1N4YBRZDCabwF8nZMWBpRxIicmXtBs+fvw==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/core/7.14.8: - resolution: {integrity: sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.14.5 - '@babel/generator': 7.14.8 - '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.8 - '@babel/helper-module-transforms': 7.14.8 - '@babel/helpers': 7.14.8 - '@babel/parser': 7.14.8 - '@babel/template': 7.14.5 - '@babel/traverse': 7.14.8 - '@babel/types': 7.14.8 - convert-source-map: 1.8.0 - debug: 4.3.2 - gensync: 1.0.0-beta.2 - json5: 2.2.0 - semver: 6.3.0 - source-map: 0.5.7 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/generator/7.14.8: - resolution: {integrity: sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - jsesc: 2.5.2 - source-map: 0.5.7 - dev: true - - /@babel/helper-compilation-targets/7.14.5_@babel+core@7.14.8: - resolution: {integrity: sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/compat-data': 7.14.7 - '@babel/core': 7.14.8 - '@babel/helper-validator-option': 7.14.5 - browserslist: 4.16.6 - semver: 6.3.0 - dev: true - - /@babel/helper-function-name/7.14.5: - resolution: {integrity: sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-get-function-arity': 7.14.5 - '@babel/template': 7.14.5 - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-get-function-arity/7.14.5: - resolution: {integrity: sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-hoist-variables/7.14.5: - resolution: {integrity: sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-member-expression-to-functions/7.14.7: - resolution: {integrity: sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-module-imports/7.14.5: - resolution: {integrity: sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-module-transforms/7.14.8: - resolution: {integrity: sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-module-imports': 7.14.5 - '@babel/helper-replace-supers': 7.14.5 - '@babel/helper-simple-access': 7.14.8 - '@babel/helper-split-export-declaration': 7.14.5 - '@babel/helper-validator-identifier': 7.14.8 - '@babel/template': 7.14.5 - '@babel/traverse': 7.14.8 - '@babel/types': 7.14.8 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/helper-optimise-call-expression/7.14.5: - resolution: {integrity: sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-plugin-utils/7.14.5: - resolution: {integrity: sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/helper-replace-supers/7.14.5: - resolution: {integrity: sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-member-expression-to-functions': 7.14.7 - '@babel/helper-optimise-call-expression': 7.14.5 - '@babel/traverse': 7.14.8 - '@babel/types': 7.14.8 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/helper-simple-access/7.14.8: - resolution: {integrity: sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-split-export-declaration/7.14.5: - resolution: {integrity: sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@babel/helper-validator-identifier/7.14.8: - resolution: {integrity: sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/helper-validator-option/7.14.5: - resolution: {integrity: sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/helpers/7.14.8: - resolution: {integrity: sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.14.5 - '@babel/traverse': 7.14.8 - '@babel/types': 7.14.8 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/highlight/7.14.5: - resolution: {integrity: sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.14.8 - chalk: 2.4.2 - js-tokens: 4.0.0 - dev: true - - /@babel/parser/7.14.8: - resolution: {integrity: sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==} - engines: {node: '>=6.0.0'} - hasBin: true - dev: true - - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.14.8: - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.14.8: - resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.14.8: - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.14.8: - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.14.8: - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.14.8: - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.14.8: - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.14.8: - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.14.8: - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.14.8: - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 + /@cspotcode/source-map-consumer/0.8.0: + resolution: {integrity: sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==} + engines: {node: '>= 12'} dev: true - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.14.8: - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.14.8: - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 + /@cspotcode/source-map-support/0.7.0: + resolution: {integrity: sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==} + engines: {node: '>=12'} dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 + '@cspotcode/source-map-consumer': 0.8.0 dev: true - /@babel/plugin-syntax-typescript/7.14.5_@babel+core@7.14.8: - resolution: {integrity: sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.14.8 - '@babel/helper-plugin-utils': 7.14.5 - dev: true - - /@babel/template/7.14.5: - resolution: {integrity: sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.14.5 - '@babel/parser': 7.14.8 - '@babel/types': 7.14.8 - dev: true - - /@babel/traverse/7.14.8: - resolution: {integrity: sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.14.5 - '@babel/generator': 7.14.8 - '@babel/helper-function-name': 7.14.5 - '@babel/helper-hoist-variables': 7.14.5 - '@babel/helper-split-export-declaration': 7.14.5 - '@babel/parser': 7.14.8 - '@babel/types': 7.14.8 - debug: 4.3.2 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - dev: true - - /@babel/types/7.14.8: - resolution: {integrity: sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.14.8 - to-fast-properties: 2.0.0 - dev: true - - /@bcoe/v8-coverage/0.2.3: - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - dev: true - - /@eslint/eslintrc/0.4.3: - resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} - engines: {node: ^10.12.0 || >=12.0.0} + /@eslint/eslintrc/1.2.3: + resolution: {integrity: sha512-uGo44hIwoLGNyduRpjdEpovcbMdd+Nv7amtmJxnKmI8xj6yd5LncmSwDa5NgX/41lIFJtkjD6YdVfgEzPfJ5UA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 - debug: 4.3.2 - espree: 7.3.1 - globals: 13.10.0 - ignore: 4.0.6 + debug: 4.3.4 + espree: 9.3.2 + globals: 13.15.0 + ignore: 5.2.0 import-fresh: 3.3.0 - js-yaml: 3.14.1 - minimatch: 3.0.4 + js-yaml: 4.1.0 + minimatch: 3.1.2 strip-json-comments: 3.1.1 transitivePeerDependencies: - supports-color dev: true - /@humanwhocodes/config-array/0.5.0: - resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==} + /@humanwhocodes/config-array/0.9.5: + resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==} engines: {node: '>=10.10.0'} dependencies: - '@humanwhocodes/object-schema': 1.2.0 - debug: 4.3.2 - minimatch: 3.0.4 + '@humanwhocodes/object-schema': 1.2.1 + debug: 4.3.4 + minimatch: 3.1.2 transitivePeerDependencies: - supports-color dev: true - /@humanwhocodes/object-schema/1.2.0: - resolution: {integrity: sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==} + /@humanwhocodes/object-schema/1.2.1: + resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true - /@istanbuljs/load-nyc-config/1.1.0: - resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} - engines: {node: '>=8'} - dependencies: - camelcase: 5.3.1 - find-up: 4.1.0 - get-package-type: 0.1.0 - js-yaml: 3.14.1 - resolve-from: 5.0.0 - dev: true - - /@istanbuljs/schema/0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} - dev: true - - /@jest/console/27.0.6: - resolution: {integrity: sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - chalk: 4.1.1 - jest-message-util: 27.0.6 - jest-util: 27.0.6 - slash: 3.0.0 - dev: true - - /@jest/core/27.0.6_ts-node@10.1.0: - resolution: {integrity: sha512-SsYBm3yhqOn5ZLJCtccaBcvD/ccTLCeuDv8U41WJH/V1MW5eKUkeMHT9U+Pw/v1m1AIWlnIW/eM2XzQr0rEmow==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - dependencies: - '@jest/console': 27.0.6 - '@jest/reporters': 27.0.6 - '@jest/test-result': 27.0.6 - '@jest/transform': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - ansi-escapes: 4.3.2 - chalk: 4.1.1 - emittery: 0.8.1 - exit: 0.1.2 - graceful-fs: 4.2.6 - jest-changed-files: 27.0.6 - jest-config: 27.0.6_ts-node@10.1.0 - jest-haste-map: 27.0.6 - jest-message-util: 27.0.6 - jest-regex-util: 27.0.6 - jest-resolve: 27.0.6 - jest-resolve-dependencies: 27.0.6 - jest-runner: 27.0.6 - jest-runtime: 27.0.6 - jest-snapshot: 27.0.6 - jest-util: 27.0.6 - jest-validate: 27.0.6 - jest-watcher: 27.0.6 - micromatch: 4.0.4 - p-each-series: 2.2.0 - rimraf: 3.0.2 - slash: 3.0.0 - strip-ansi: 6.0.0 - transitivePeerDependencies: - - bufferutil - - canvas - - supports-color - - ts-node - - utf-8-validate - dev: true - - /@jest/environment/27.0.6: - resolution: {integrity: sha512-4XywtdhwZwCpPJ/qfAkqExRsERW+UaoSRStSHCCiQTUpoYdLukj+YJbQSFrZjhlUDRZeNiU9SFH0u7iNimdiIg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/fake-timers': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - jest-mock: 27.0.6 - dev: true - - /@jest/fake-timers/27.0.6: - resolution: {integrity: sha512-sqd+xTWtZ94l3yWDKnRTdvTeZ+A/V7SSKrxsrOKSqdyddb9CeNRF8fbhAU0D7ZJBpTTW2nbp6MftmKJDZfW2LQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - '@sinonjs/fake-timers': 7.1.2 - '@types/node': 16.4.3 - jest-message-util: 27.0.6 - jest-mock: 27.0.6 - jest-util: 27.0.6 - dev: true - - /@jest/globals/27.0.6: - resolution: {integrity: sha512-DdTGCP606rh9bjkdQ7VvChV18iS7q0IMJVP1piwTWyWskol4iqcVwthZmoJEf7obE1nc34OpIyoVGPeqLC+ryw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/environment': 27.0.6 - '@jest/types': 27.0.6 - expect: 27.0.6 - dev: true - - /@jest/reporters/27.0.6: - resolution: {integrity: sha512-TIkBt09Cb2gptji3yJXb3EE+eVltW6BjO7frO7NEfjI9vSIYoISi5R3aI3KpEDXlB1xwB+97NXIqz84qYeYsfA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - dependencies: - '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 27.0.6 - '@jest/test-result': 27.0.6 - '@jest/transform': 27.0.6 - '@jest/types': 27.0.6 - chalk: 4.1.1 - collect-v8-coverage: 1.0.1 - exit: 0.1.2 - glob: 7.1.7 - graceful-fs: 4.2.6 - istanbul-lib-coverage: 3.0.0 - istanbul-lib-instrument: 4.0.3 - istanbul-lib-report: 3.0.0 - istanbul-lib-source-maps: 4.0.0 - istanbul-reports: 3.0.2 - jest-haste-map: 27.0.6 - jest-resolve: 27.0.6 - jest-util: 27.0.6 - jest-worker: 27.0.6 - slash: 3.0.0 - source-map: 0.6.1 - string-length: 4.0.2 - terminal-link: 2.1.1 - v8-to-istanbul: 8.0.0 - transitivePeerDependencies: - - supports-color - dev: true - - /@jest/source-map/27.0.6: - resolution: {integrity: sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - callsites: 3.1.0 - graceful-fs: 4.2.6 - source-map: 0.6.1 - dev: true - - /@jest/test-result/27.0.6: - resolution: {integrity: sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/console': 27.0.6 - '@jest/types': 27.0.6 - '@types/istanbul-lib-coverage': 2.0.3 - collect-v8-coverage: 1.0.1 - dev: true - - /@jest/test-sequencer/27.0.6: - resolution: {integrity: sha512-bISzNIApazYOlTHDum9PwW22NOyDa6VI31n6JucpjTVM0jD6JDgqEZ9+yn575nDdPF0+4csYDxNNW13NvFQGZA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/test-result': 27.0.6 - graceful-fs: 4.2.6 - jest-haste-map: 27.0.6 - jest-runtime: 27.0.6 - transitivePeerDependencies: - - supports-color - dev: true - - /@jest/transform/27.0.6: - resolution: {integrity: sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@babel/core': 7.14.8 - '@jest/types': 27.0.6 - babel-plugin-istanbul: 6.0.0 - chalk: 4.1.1 - convert-source-map: 1.8.0 - fast-json-stable-stringify: 2.1.0 - graceful-fs: 4.2.6 - jest-haste-map: 27.0.6 - jest-regex-util: 27.0.6 - jest-util: 27.0.6 - micromatch: 4.0.4 - pirates: 4.0.1 - slash: 3.0.0 - source-map: 0.6.1 - write-file-atomic: 3.0.3 - transitivePeerDependencies: - - supports-color - dev: true - - /@jest/types/26.6.2: - resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} - engines: {node: '>= 10.14.2'} - dependencies: - '@types/istanbul-lib-coverage': 2.0.3 - '@types/istanbul-reports': 3.0.1 - '@types/node': 16.4.3 - '@types/yargs': 15.0.14 - chalk: 4.1.1 - dev: true - - /@jest/types/27.0.6: - resolution: {integrity: sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@types/istanbul-lib-coverage': 2.0.3 - '@types/istanbul-reports': 3.0.1 - '@types/node': 16.4.3 - '@types/yargs': 16.0.4 - chalk: 4.1.1 - dev: true - - /@microsoft/api-documenter/7.13.33: - resolution: {integrity: sha512-m+Yv/NTP2nvKaey20AszOv9QnQ0O3SxEGWeQF1mci920bQskcz9/5uaVMCtfq7PKPelc8k9NG4gqmzw1dRgKBA==} + /@microsoft/api-documenter/7.17.15: + resolution: {integrity: sha512-in3Av3nDEFPOFYxI7Dc4NhT7hUHfjbeyFsTO+Y3y6FUbx3YVTiNv/WRLBTt8EM86hp+p2H2CT9LgMfogTnCowA==} hasBin: true dependencies: - '@microsoft/api-extractor-model': 7.13.4 - '@microsoft/tsdoc': 0.13.2 - '@rushstack/node-core-library': 3.39.1 - '@rushstack/ts-command-line': 4.8.1 + '@microsoft/api-extractor-model': 7.17.3 + '@microsoft/tsdoc': 0.14.1 + '@rushstack/node-core-library': 3.45.5 + '@rushstack/ts-command-line': 4.11.0 colors: 1.2.5 js-yaml: 3.13.1 resolve: 1.17.0 dev: true - /@microsoft/api-extractor-model/7.13.4: - resolution: {integrity: sha512-NYaR3hJinh089/Gkee8fvmEFf9zKkoUvNxgkqUlKBCDXH2+Ou4tNDuL8G6zjhKBPicHkp2VcL8l7q9H6txUkjQ==} + /@microsoft/api-extractor-model/7.17.3: + resolution: {integrity: sha512-ETslFxVEZTEK6mrOARxM34Ll2W/5H2aTk9Pe9dxsMCnthE8O/CaStV4WZAGsvvZKyjelSWgPVYGowxGVnwOMlQ==} dependencies: - '@microsoft/tsdoc': 0.13.2 - '@microsoft/tsdoc-config': 0.15.2 - '@rushstack/node-core-library': 3.39.1 + '@microsoft/tsdoc': 0.14.1 + '@microsoft/tsdoc-config': 0.16.1 + '@rushstack/node-core-library': 3.45.5 dev: true - /@microsoft/api-extractor/7.18.4: - resolution: {integrity: sha512-Wx45VuIAu09Pk9Qwzt0I57OX31BaWO2r6+mfSXqYFsJjYTqwUkdFh92G1GKYgvuR9oF/ai7w10wrFpx5WZYbGg==} + /@microsoft/api-extractor/7.24.1: + resolution: {integrity: sha512-RjcKRvKRAtTK4z8UdC2qYsvgTYHEYvdsqF4QGoX4mNAVo7s6Jj4zcHtSrMEQMTUHujZbSd5+ihI5ktISp338mQ==} hasBin: true dependencies: - '@microsoft/api-extractor-model': 7.13.4 - '@microsoft/tsdoc': 0.13.2 - '@microsoft/tsdoc-config': 0.15.2 - '@rushstack/node-core-library': 3.39.1 - '@rushstack/rig-package': 0.2.13 - '@rushstack/ts-command-line': 4.8.1 + '@microsoft/api-extractor-model': 7.17.3 + '@microsoft/tsdoc': 0.14.1 + '@microsoft/tsdoc-config': 0.16.1 + '@rushstack/node-core-library': 3.45.5 + '@rushstack/rig-package': 0.3.11 + '@rushstack/ts-command-line': 4.11.0 colors: 1.2.5 lodash: 4.17.21 resolve: 1.17.0 - semver: 7.3.5 + semver: 7.3.7 source-map: 0.6.1 - typescript: 4.3.5 + typescript: 4.6.4 dev: true - /@microsoft/tsdoc-config/0.15.2: - resolution: {integrity: sha512-mK19b2wJHSdNf8znXSMYVShAHktVr/ib0Ck2FA3lsVBSEhSI/TfXT7DJQkAYgcztTuwazGcg58ZjYdk0hTCVrA==} + /@microsoft/tsdoc-config/0.16.1: + resolution: {integrity: sha512-2RqkwiD4uN6MLnHFljqBlZIXlt/SaUT6cuogU1w2ARw4nKuuppSmR0+s+NC+7kXBQykd9zzu0P4HtBpZT5zBpQ==} dependencies: - '@microsoft/tsdoc': 0.13.2 + '@microsoft/tsdoc': 0.14.1 ajv: 6.12.6 jju: 1.4.0 resolve: 1.19.0 dev: true - /@microsoft/tsdoc/0.13.2: - resolution: {integrity: sha512-WrHvO8PDL8wd8T2+zBGKrMwVL5IyzR3ryWUsl0PXgEV0QHup4mTLi0QcATefGI6Gx9Anu7vthPyyyLpY0EpiQg==} + /@microsoft/tsdoc/0.14.1: + resolution: {integrity: sha512-6Wci+Tp3CgPt/B9B0a3J4s3yMgLNSku6w5TV6mN+61C71UqsRBv2FUibBf3tPGlNxebgPHMEUzKpb1ggE8KCKw==} dev: true /@nodelib/fs.scandir/2.1.5: @@ -729,51 +168,51 @@ packages: engines: {node: '>= 8'} dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.11.1 + fastq: 1.13.0 dev: true - /@rollup/plugin-commonjs/19.0.1_rollup@2.54.0: - resolution: {integrity: sha512-bRrPTIAsWw2LmEspEMvV9f+7N7CEQgZCj2Zi1F0e0P3+/tbjQaSNNVVRSRWVhuDagp8yjK5kbIut8KTPsseRhg==} - engines: {node: '>= 8.0.0'} + /@rollup/plugin-commonjs/22.0.0_rollup@2.74.1: + resolution: {integrity: sha512-Ktvf2j+bAO+30awhbYoCaXpBcyPmJbaEUYClQns/+6SNCYFURbvBiNbWgHITEsIgDDWCDUclWRKEuf8cwZCFoQ==} + engines: {node: '>= 12.0.0'} peerDependencies: - rollup: ^2.38.3 + rollup: ^2.68.0 dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.54.0 + '@rollup/pluginutils': 3.1.0_rollup@2.74.1 commondir: 1.0.1 estree-walker: 2.0.2 - glob: 7.1.7 + glob: 7.2.3 is-reference: 1.2.1 - magic-string: 0.25.7 - resolve: 1.20.0 - rollup: 2.54.0 + magic-string: 0.25.9 + resolve: 1.22.0 + rollup: 2.74.1 dev: true - /@rollup/plugin-node-resolve/13.0.4_rollup@2.54.0: - resolution: {integrity: sha512-eYq4TFy40O8hjeDs+sIxEH/jc9lyuI2k9DM557WN6rO5OpnC2qXMBNj4IKH1oHrnAazL49C5p0tgP0/VpqJ+/w==} + /@rollup/plugin-node-resolve/13.3.0_rollup@2.74.1: + resolution: {integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==} engines: {node: '>= 10.0.0'} peerDependencies: rollup: ^2.42.0 dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.54.0 + '@rollup/pluginutils': 3.1.0_rollup@2.74.1 '@types/resolve': 1.17.1 - builtin-modules: 3.2.0 deepmerge: 4.2.2 + is-builtin-module: 3.1.0 is-module: 1.0.0 - resolve: 1.20.0 - rollup: 2.54.0 + resolve: 1.22.0 + rollup: 2.74.1 dev: true - /@rollup/plugin-replace/3.0.0_rollup@2.54.0: - resolution: {integrity: sha512-3c7JCbMuYXM4PbPWT4+m/4Y6U60SgsnDT/cCyAyUKwFHg7pTSfsSQzIpETha3a3ig6OdOKzZz87D9ZXIK3qsDg==} + /@rollup/plugin-replace/4.0.0_rollup@2.74.1: + resolution: {integrity: sha512-+rumQFiaNac9y64OHtkHGmdjm7us9bo1PlbgQfdihQtuNxzjpaB064HbRnewUOggLQxVCCyINfStkgmBeQpv1g==} peerDependencies: rollup: ^1.20.0 || ^2.0.0 dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.54.0 - magic-string: 0.25.7 - rollup: 2.54.0 + '@rollup/pluginutils': 3.1.0_rollup@2.74.1 + magic-string: 0.25.9 + rollup: 2.74.1 dev: true - /@rollup/pluginutils/3.1.0_rollup@2.54.0: + /@rollup/pluginutils/3.1.0_rollup@2.74.1: resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} engines: {node: '>= 8.0.0'} peerDependencies: @@ -781,41 +220,41 @@ packages: dependencies: '@types/estree': 0.0.39 estree-walker: 1.0.1 - picomatch: 2.3.0 - rollup: 2.54.0 + picomatch: 2.3.1 + rollup: 2.74.1 dev: true - /@rollup/pluginutils/4.1.1: - resolution: {integrity: sha512-clDjivHqWGXi7u+0d2r2sBi4Ie6VLEAzWMIkvJLnDmxoOhBYOTfzGbOQBA32THHm11/LiJbd01tJUpJsbshSWQ==} + /@rollup/pluginutils/4.2.1: + resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} engines: {node: '>= 8.0.0'} dependencies: estree-walker: 2.0.2 - picomatch: 2.3.0 + picomatch: 2.3.1 dev: true - /@rushstack/node-core-library/3.39.1: - resolution: {integrity: sha512-HHgMEHZTXQ3NjpQzWd5+fSt2Eod9yFwj6qBPbaeaNtDNkOL8wbLoxVimQNtcH0Qhn4wxF5u2NTDNFsxf2yd1jw==} + /@rushstack/node-core-library/3.45.5: + resolution: {integrity: sha512-KbN7Hp9vH3bD3YJfv6RnVtzzTAwGYIBl7y2HQLY4WEQqRbvE3LgI78W9l9X+cTAXCX//p0EeoiUYNTFdqJrMZg==} dependencies: - '@types/node': 10.17.13 + '@types/node': 12.20.24 colors: 1.2.5 fs-extra: 7.0.1 import-lazy: 4.0.0 jju: 1.4.0 resolve: 1.17.0 - semver: 7.3.5 + semver: 7.3.7 timsort: 0.3.0 - z-schema: 3.18.4 + z-schema: 5.0.3 dev: true - /@rushstack/rig-package/0.2.13: - resolution: {integrity: sha512-qQMAFKvfb2ooaWU9DrGIK9d8QfyHy/HiuITJbWenlKgzcDXQvQgEduk57YF4Y7LLasDJ5ZzLaaXwlfX8qCRe5Q==} + /@rushstack/rig-package/0.3.11: + resolution: {integrity: sha512-uI1/g5oQPtyrT9nStoyX/xgZSLa2b+srRFaDk3r1eqC7zA5th4/bvTGl2QfV3C9NcP+coSqmk5mFJkUfH6i3Lw==} dependencies: resolve: 1.17.0 strip-json-comments: 3.1.1 dev: true - /@rushstack/ts-command-line/4.8.1: - resolution: {integrity: sha512-rmxvYdCNRbyRs+DYAPye3g6lkCkWHleqO40K8UPvUAzFqEuj6+YCVssBiOmrUDCoM5gaegSNT0wFDYhz24DWtw==} + /@rushstack/ts-command-line/4.11.0: + resolution: {integrity: sha512-ptG9L0mjvJ5QtK11GsAFY+jGfsnqHDS6CY6Yw1xT7a9bhjfNYnf6UPwjV+pF6UgiucfNcMDNW9lkDLxvZKKxMg==} dependencies: '@types/argparse': 1.0.38 argparse: 1.0.10 @@ -823,27 +262,10 @@ packages: string-argv: 0.3.1 dev: true - /@servie/events/1.0.0: - resolution: {integrity: sha512-sBSO19KzdrJCM3gdx6eIxV8M9Gxfgg6iDQmH5TIAGaUu+X9VDdsINXJOnoiZ1Kx3TrHdH4bt5UVglkjsEGBcvw==} + /@servie/events/3.0.0: + resolution: {integrity: sha512-Zd79bWhTuG8NvPgSiOcivorJIDg+goMw76TIqYTIR5ua5HOEkS29fmIh2VVSeDeabNF6z8ceTwzB0pSh/BhXyw==} dev: false - /@sinonjs/commons/1.8.3: - resolution: {integrity: sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==} - dependencies: - type-detect: 4.0.8 - dev: true - - /@sinonjs/fake-timers/7.1.2: - resolution: {integrity: sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg==} - dependencies: - '@sinonjs/commons': 1.8.3 - dev: true - - /@tootallnate/once/1.1.2: - resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} - engines: {node: '>= 6'} - dev: true - /@tsconfig/node10/1.0.8: resolution: {integrity: sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==} dev: true @@ -864,274 +286,195 @@ packages: resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} dev: true - /@types/babel__core/7.1.15: - resolution: {integrity: sha512-bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew==} - dependencies: - '@babel/parser': 7.14.8 - '@babel/types': 7.14.8 - '@types/babel__generator': 7.6.3 - '@types/babel__template': 7.4.1 - '@types/babel__traverse': 7.14.2 - dev: true - - /@types/babel__generator/7.6.3: - resolution: {integrity: sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==} - dependencies: - '@babel/types': 7.14.8 - dev: true - - /@types/babel__template/7.4.1: - resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} - dependencies: - '@babel/parser': 7.14.8 - '@babel/types': 7.14.8 - dev: true - - /@types/babel__traverse/7.14.2: - resolution: {integrity: sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==} - dependencies: - '@babel/types': 7.14.8 - dev: true - /@types/estree/0.0.39: resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} dev: true - /@types/estree/0.0.50: - resolution: {integrity: sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==} + /@types/estree/0.0.51: + resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} dev: true - /@types/graceful-fs/4.1.5: - resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} - dependencies: - '@types/node': 16.4.3 - dev: true - - /@types/istanbul-lib-coverage/2.0.3: - resolution: {integrity: sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==} - dev: true - - /@types/istanbul-lib-report/3.0.0: - resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} - dependencies: - '@types/istanbul-lib-coverage': 2.0.3 + /@types/json-schema/7.0.11: + resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} dev: true - /@types/istanbul-reports/3.0.1: - resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} + /@types/lodash-es/4.17.6: + resolution: {integrity: sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==} dependencies: - '@types/istanbul-lib-report': 3.0.0 + '@types/lodash': 4.14.182 dev: true - /@types/jest/26.0.24: - resolution: {integrity: sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==} - dependencies: - jest-diff: 26.6.2 - pretty-format: 26.6.2 + /@types/lodash/4.14.182: + resolution: {integrity: sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==} dev: true - /@types/json-schema/7.0.8: - resolution: {integrity: sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==} + /@types/node/12.20.24: + resolution: {integrity: sha512-yxDeaQIAJlMav7fH5AQqPH1u8YIuhYJXYBzxaQ4PifsU0GDO38MSdmEDeRlIxrKbC6NbEaaEHDanWb+y30U8SQ==} dev: true - /@types/lodash-es/4.17.4: - resolution: {integrity: sha512-BBz79DCJbD2CVYZH67MBeHZRX++HF+5p8Mo5MzjZi64Wac39S3diedJYHZtScbRVf4DjZyN6LzA0SB0zy+HSSQ==} - dependencies: - '@types/lodash': 4.14.171 - dev: true - - /@types/lodash/4.14.171: - resolution: {integrity: sha512-7eQ2xYLLI/LsicL2nejW9Wyko3lcpN6O/z0ZLHrEQsg280zIdCv1t/0m6UtBjUHokCGBQ3gYTbHzDkZ1xOBwwg==} - dev: true - - /@types/node/10.17.13: - resolution: {integrity: sha512-pMCcqU2zT4TjqYFrWtYHKal7Sl30Ims6ulZ4UFXxI4xbtQqK/qqKwkDoBFCfooRqqmRu9vY3xaJRwxSh673aYg==} - dev: true - - /@types/node/16.4.3: - resolution: {integrity: sha512-GKM4FLMkWDc0sfx7tXqPWkM6NBow1kge0fgQh0bOnlqo4iT1kvTvMEKE0c1RtUGnbLlGRXiAA8SumE//90uKAg==} - dev: true - - /@types/prettier/2.3.2: - resolution: {integrity: sha512-eI5Yrz3Qv4KPUa/nSIAi0h+qX0XyewOliug5F2QAtuRg6Kjg6jfmxe1GIwoIRhZspD1A0RP8ANrPwvEXXtRFog==} + /@types/node/17.0.35: + resolution: {integrity: sha512-vu1SrqBjbbZ3J6vwY17jBs8Sr/BKA+/a/WtjRG+whKg1iuLFOosq872EXS0eXWILdO36DHQQeku/ZcL6hz2fpg==} dev: true /@types/resolve/1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 16.4.3 - dev: true - - /@types/stack-utils/2.0.1: - resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} - dev: true - - /@types/yargs-parser/20.2.1: - resolution: {integrity: sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==} - dev: true - - /@types/yargs/15.0.14: - resolution: {integrity: sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==} - dependencies: - '@types/yargs-parser': 20.2.1 - dev: true - - /@types/yargs/16.0.4: - resolution: {integrity: sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==} - dependencies: - '@types/yargs-parser': 20.2.1 + '@types/node': 17.0.35 dev: true - /@typescript-eslint/eslint-plugin/4.28.4_b1648df9f9ba40bdeef3710a5a5af353: - resolution: {integrity: sha512-s1oY4RmYDlWMlcV0kKPBaADn46JirZzvvH7c2CtAqxCY96S538JRBAzt83RrfkDheV/+G/vWNK0zek+8TB3Gmw==} - engines: {node: ^10.12.0 || >=12.0.0} + /@typescript-eslint/eslint-plugin/5.25.0_qo2hgs5jt7x2a3p77h2rutcdae: + resolution: {integrity: sha512-icYrFnUzvm+LhW0QeJNKkezBu6tJs9p/53dpPLFH8zoM9w1tfaKzVurkPotEpAqQ8Vf8uaFyL5jHd0Vs6Z0ZQg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - '@typescript-eslint/parser': ^4.0.0 - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/experimental-utils': 4.28.4_eslint@7.31.0+typescript@4.3.5 - '@typescript-eslint/parser': 4.28.4_eslint@7.31.0+typescript@4.3.5 - '@typescript-eslint/scope-manager': 4.28.4 - debug: 4.3.2 - eslint: 7.31.0 + '@typescript-eslint/parser': 5.25.0_hcfsmds2fshutdssjqluwm76uu + '@typescript-eslint/scope-manager': 5.25.0 + '@typescript-eslint/type-utils': 5.25.0_hcfsmds2fshutdssjqluwm76uu + '@typescript-eslint/utils': 5.25.0_hcfsmds2fshutdssjqluwm76uu + debug: 4.3.4 + eslint: 8.15.0 functional-red-black-tree: 1.0.1 + ignore: 5.2.0 regexpp: 3.2.0 - semver: 7.3.5 - tsutils: 3.21.0_typescript@4.3.5 - typescript: 4.3.5 + semver: 7.3.7 + tsutils: 3.21.0_typescript@4.6.4 + typescript: 4.6.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/experimental-utils/4.28.4_eslint@7.31.0+typescript@4.3.5: - resolution: {integrity: sha512-OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==} - engines: {node: ^10.12.0 || >=12.0.0} + /@typescript-eslint/parser/5.25.0_hcfsmds2fshutdssjqluwm76uu: + resolution: {integrity: sha512-r3hwrOWYbNKP1nTcIw/aZoH+8bBnh/Lh1iDHoFpyG4DnCpvEdctrSl6LOo19fZbzypjQMHdajolxs6VpYoChgA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: '*' + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true dependencies: - '@types/json-schema': 7.0.8 - '@typescript-eslint/scope-manager': 4.28.4 - '@typescript-eslint/types': 4.28.4 - '@typescript-eslint/typescript-estree': 4.28.4_typescript@4.3.5 - eslint: 7.31.0 - eslint-scope: 5.1.1 - eslint-utils: 3.0.0_eslint@7.31.0 + '@typescript-eslint/scope-manager': 5.25.0 + '@typescript-eslint/types': 5.25.0 + '@typescript-eslint/typescript-estree': 5.25.0_typescript@4.6.4 + debug: 4.3.4 + eslint: 8.15.0 + typescript: 4.6.4 transitivePeerDependencies: - supports-color - - typescript dev: true - /@typescript-eslint/parser/4.28.4_eslint@7.31.0+typescript@4.3.5: - resolution: {integrity: sha512-4i0jq3C6n+og7/uCHiE6q5ssw87zVdpUj1k6VlVYMonE3ILdFApEzTWgppSRG4kVNB/5jxnH+gTeKLMNfUelQA==} - engines: {node: ^10.12.0 || >=12.0.0} + /@typescript-eslint/scope-manager/5.25.0: + resolution: {integrity: sha512-p4SKTFWj+2VpreUZ5xMQsBMDdQ9XdRvODKXN4EksyBjFp2YvQdLkyHqOffakYZPuWJUDNu3jVXtHALDyTv3cww==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.25.0 + '@typescript-eslint/visitor-keys': 5.25.0 + dev: true + + /@typescript-eslint/type-utils/5.25.0_hcfsmds2fshutdssjqluwm76uu: + resolution: {integrity: sha512-B6nb3GK3Gv1Rsb2pqalebe/RyQoyG/WDy9yhj8EE0Ikds4Xa8RR28nHz+wlt4tMZk5bnAr0f3oC8TuDAd5CPrw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + eslint: '*' typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 4.28.4 - '@typescript-eslint/types': 4.28.4 - '@typescript-eslint/typescript-estree': 4.28.4_typescript@4.3.5 - debug: 4.3.2 - eslint: 7.31.0 - typescript: 4.3.5 + '@typescript-eslint/utils': 5.25.0_hcfsmds2fshutdssjqluwm76uu + debug: 4.3.4 + eslint: 8.15.0 + tsutils: 3.21.0_typescript@4.6.4 + typescript: 4.6.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager/4.28.4: - resolution: {integrity: sha512-ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==} - engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} - dependencies: - '@typescript-eslint/types': 4.28.4 - '@typescript-eslint/visitor-keys': 4.28.4 - dev: true - - /@typescript-eslint/types/4.28.4: - resolution: {integrity: sha512-3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==} - engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + /@typescript-eslint/types/5.25.0: + resolution: {integrity: sha512-7fWqfxr0KNHj75PFqlGX24gWjdV/FDBABXL5dyvBOWHpACGyveok8Uj4ipPX/1fGU63fBkzSIycEje4XsOxUFA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/4.28.4_typescript@4.3.5: - resolution: {integrity: sha512-z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==} - engines: {node: ^10.12.0 || >=12.0.0} + /@typescript-eslint/typescript-estree/5.25.0_typescript@4.6.4: + resolution: {integrity: sha512-MrPODKDych/oWs/71LCnuO7NyR681HuBly2uLnX3r5i4ME7q/yBqC4hW33kmxtuauLTM0OuBOhhkFaxCCOjEEw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/types': 4.28.4 - '@typescript-eslint/visitor-keys': 4.28.4 - debug: 4.3.2 - globby: 11.0.4 - is-glob: 4.0.1 - semver: 7.3.5 - tsutils: 3.21.0_typescript@4.3.5 - typescript: 4.3.5 + '@typescript-eslint/types': 5.25.0 + '@typescript-eslint/visitor-keys': 5.25.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.3.7 + tsutils: 3.21.0_typescript@4.6.4 + typescript: 4.6.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/visitor-keys/4.28.4: - resolution: {integrity: sha512-NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==} - engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + /@typescript-eslint/utils/5.25.0_hcfsmds2fshutdssjqluwm76uu: + resolution: {integrity: sha512-qNC9bhnz/n9Kba3yI6HQgQdBLuxDoMgdjzdhSInZh6NaDnFpTUlwNGxplUFWfY260Ya0TRPvkg9dd57qxrJI9g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@typescript-eslint/types': 4.28.4 - eslint-visitor-keys: 2.1.0 + '@types/json-schema': 7.0.11 + '@typescript-eslint/scope-manager': 5.25.0 + '@typescript-eslint/types': 5.25.0 + '@typescript-eslint/typescript-estree': 5.25.0_typescript@4.6.4 + eslint: 8.15.0 + eslint-scope: 5.1.1 + eslint-utils: 3.0.0_eslint@8.15.0 + transitivePeerDependencies: + - supports-color + - typescript dev: true - /abab/2.0.5: - resolution: {integrity: sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==} + /@typescript-eslint/visitor-keys/5.25.0: + resolution: {integrity: sha512-yd26vFgMsC4h2dgX4+LR+GeicSKIfUvZREFLf3DDjZPtqgLx5AJZr6TetMNwFP9hcKreTTeztQYBTNbNoOycwA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.25.0 + eslint-visitor-keys: 3.3.0 dev: true - /acorn-globals/6.0.0: - resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==} + /@yarn-tool/resolve-package/1.0.47: + resolution: {integrity: sha512-Zaw58gQxjQceJqhqybJi1oUDaORT8i2GTgwICPs8v/X/Pkx35FXQba69ldHVg5pQZ6YLKpROXgyHvBaCJOFXiA==} dependencies: - acorn: 7.4.1 - acorn-walk: 7.2.0 + pkg-dir: 5.0.0 + tslib: 2.4.0 + upath2: 3.1.13 dev: true - /acorn-jsx/5.3.2_acorn@7.4.1: + /acorn-jsx/5.3.2_acorn@8.7.1: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - acorn: 7.4.1 + acorn: 8.7.1 dev: true - /acorn-walk/7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} + /acorn-walk/8.2.0: + resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} dev: true - /acorn/7.4.1: - resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} + /acorn/8.7.1: + resolution: {integrity: sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==} engines: {node: '>=0.4.0'} hasBin: true dev: true - /acorn/8.4.1: - resolution: {integrity: sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - - /agent-base/6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - dependencies: - debug: 4.3.2 - transitivePeerDependencies: - - supports-color - dev: true - /ajv/6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -1141,29 +484,8 @@ packages: uri-js: 4.4.1 dev: true - /ajv/8.6.2: - resolution: {integrity: sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - dev: true - - /ansi-colors/4.1.1: - resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} - engines: {node: '>=6'} - dev: true - - /ansi-escapes/4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.21.3 - dev: true - - /ansi-regex/5.0.0: - resolution: {integrity: sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==} + /ansi-regex/5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} dev: true @@ -1181,25 +503,12 @@ packages: color-convert: 2.0.1 dev: true - /ansi-styles/5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - dev: true - - /anymatch/3.1.1: - resolution: {integrity: sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==} - engines: {node: '>= 8'} - dependencies: - normalize-path: 3.0.0 - picomatch: 2.2.2 - dev: true - /anymatch/3.1.2: resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} engines: {node: '>= 8'} dependencies: normalize-path: 3.0.0 - picomatch: 2.3.0 + picomatch: 2.3.1 dev: true /arg/4.1.3: @@ -1212,99 +521,21 @@ packages: sprintf-js: 1.0.3 dev: true - /array-union/2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - dev: true - - /astral-regex/2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} - dev: true - - /asynckit/0.4.0: - resolution: {integrity: sha1-x57Zf380y48robyXkLzDZkdLS3k=} - dev: true - - /babel-jest/27.0.6_@babel+core@7.14.8: - resolution: {integrity: sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - peerDependencies: - '@babel/core': ^7.8.0 - dependencies: - '@babel/core': 7.14.8 - '@jest/transform': 27.0.6 - '@jest/types': 27.0.6 - '@types/babel__core': 7.1.15 - babel-plugin-istanbul: 6.0.0 - babel-preset-jest: 27.0.6_@babel+core@7.14.8 - chalk: 4.1.1 - graceful-fs: 4.2.6 - slash: 3.0.0 - transitivePeerDependencies: - - supports-color + /argparse/2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} dev: true - /babel-plugin-istanbul/6.0.0: - resolution: {integrity: sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==} + /array-union/2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - dependencies: - '@babel/helper-plugin-utils': 7.14.5 - '@istanbuljs/load-nyc-config': 1.1.0 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-instrument: 4.0.3 - test-exclude: 6.0.0 - transitivePeerDependencies: - - supports-color - dev: true - - /babel-plugin-jest-hoist/27.0.6: - resolution: {integrity: sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@babel/template': 7.14.5 - '@babel/types': 7.14.8 - '@types/babel__core': 7.1.15 - '@types/babel__traverse': 7.14.2 - dev: true - - /babel-preset-current-node-syntax/1.0.1_@babel+core@7.14.8: - resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.14.8 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.14.8 - '@babel/plugin-syntax-bigint': 7.8.3_@babel+core@7.14.8 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.14.8 - '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.14.8 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.14.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.14.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.14.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.14.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.14.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.14.8 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.14.8 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.14.8 - dev: true - - /babel-preset-jest/27.0.6_@babel+core@7.14.8: - resolution: {integrity: sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.14.8 - babel-plugin-jest-hoist: 27.0.6 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.14.8 dev: true /balanced-match/1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true - /binary-extensions/2.1.0: - resolution: {integrity: sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==} + /binary-extensions/2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} dev: true @@ -1322,42 +553,16 @@ packages: fill-range: 7.0.1 dev: true - /browser-process-hrtime/1.0.0: - resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==} - dev: true - - /browserslist/4.16.6: - resolution: {integrity: sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - dependencies: - caniuse-lite: 1.0.30001247 - colorette: 1.2.2 - electron-to-chromium: 1.3.786 - escalade: 3.1.1 - node-releases: 1.1.73 - dev: true - - /bs-logger/0.2.6: - resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} - engines: {node: '>= 6'} - dependencies: - fast-json-stable-stringify: 2.1.0 + /builtin-modules/3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} + engines: {node: '>=6'} dev: true - /bser/2.1.1: - resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + /call-bind/1.0.2: + resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: - node-int64: 0.4.0 - dev: true - - /buffer-from/1.1.1: - resolution: {integrity: sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==} - dev: true - - /builtin-modules/3.2.0: - resolution: {integrity: sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==} - engines: {node: '>=6'} + function-bind: 1.1.1 + get-intrinsic: 1.1.1 dev: true /callsites/3.1.0: @@ -1365,20 +570,6 @@ packages: engines: {node: '>=6'} dev: true - /camelcase/5.3.1: - resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} - engines: {node: '>=6'} - dev: true - - /camelcase/6.2.0: - resolution: {integrity: sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==} - engines: {node: '>=10'} - dev: true - - /caniuse-lite/1.0.30001247: - resolution: {integrity: sha512-4rS7co+7+AoOSPRPOPUt5/GdaqZc0EsUpWk66ofE3HJTAajUK2Ss2VwoNzVN69ghg8lYYlh0an0Iy4LIHHo9UQ==} - dev: true - /chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -1388,57 +579,27 @@ packages: supports-color: 5.5.0 dev: true - /chalk/4.1.1: - resolution: {integrity: sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==} + /chalk/4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 dev: true - /char-regex/1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - dev: true - - /chokidar/3.4.2: - resolution: {integrity: sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==} + /chokidar/3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} dependencies: - anymatch: 3.1.1 + anymatch: 3.1.2 braces: 3.0.2 - glob-parent: 5.1.1 + glob-parent: 5.1.2 is-binary-path: 2.1.0 - is-glob: 4.0.1 + is-glob: 4.0.3 normalize-path: 3.0.0 - readdirp: 3.4.0 + readdirp: 3.6.0 optionalDependencies: - fsevents: 2.1.3 - dev: true - - /ci-info/3.2.0: - resolution: {integrity: sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==} - dev: true - - /cjs-module-lexer/1.2.2: - resolution: {integrity: sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==} - dev: true - - /cliui/7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} - dependencies: - string-width: 4.2.2 - strip-ansi: 6.0.0 - wrap-ansi: 7.0.0 - dev: true - - /co/4.6.0: - resolution: {integrity: sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=} - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - dev: true - - /collect-v8-coverage/1.0.1: - resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==} + fsevents: 2.3.2 dev: true /color-convert/1.9.3: @@ -1462,24 +623,14 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true - /colorette/1.2.2: - resolution: {integrity: sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==} - dev: true - /colors/1.2.5: resolution: {integrity: sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==} engines: {node: '>=0.1.90'} dev: true - /combined-stream/1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - dependencies: - delayed-stream: 1.0.0 - dev: true - /commander/2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + requiresBuild: true dev: true optional: true @@ -1496,17 +647,6 @@ packages: resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} dev: true - /convert-source-map/1.8.0: - resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} - dependencies: - safe-buffer: 5.1.2 - dev: true - - /core-js/3.6.5: - resolution: {integrity: sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA==} - requiresBuild: true - dev: true - /create-require/1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} dev: true @@ -1531,48 +671,8 @@ packages: which: 2.0.2 dev: true - /cssom/0.3.8: - resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==} - dev: true - - /cssom/0.4.4: - resolution: {integrity: sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==} - dev: true - - /cssstyle/2.3.0: - resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==} - engines: {node: '>=8'} - dependencies: - cssom: 0.3.8 - dev: true - - /csstype/3.0.3: - resolution: {integrity: sha512-jPl+wbWPOWJ7SXsWyqGRk3lGecbar0Cb0OvZF/r/ZU011R4YqiRehgkQ9p4eQfo9DSDLqLL3wHwfxeJiuIsNag==} - dev: false - - /data-urls/2.0.0: - resolution: {integrity: sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==} - engines: {node: '>=10'} - dependencies: - abab: 2.0.5 - whatwg-mimetype: 2.3.0 - whatwg-url: 8.7.0 - dev: true - - /debug/4.2.0: - resolution: {integrity: sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.2 - dev: true - - /debug/4.3.2: - resolution: {integrity: sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==} + /debug/4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -1583,16 +683,8 @@ packages: ms: 2.1.2 dev: true - /decimal.js/10.3.1: - resolution: {integrity: sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==} - dev: true - - /dedent/0.7.0: - resolution: {integrity: sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=} - dev: true - - /deep-is/0.1.3: - resolution: {integrity: sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=} + /deep-is/0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true /deepmerge/4.2.2: @@ -1600,83 +692,31 @@ packages: engines: {node: '>=0.10.0'} dev: true - /define-properties/1.1.3: - resolution: {integrity: sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==} + /define-properties/1.1.4: + resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} engines: {node: '>= 0.4'} dependencies: + has-property-descriptors: 1.0.0 object-keys: 1.1.1 dev: true - /delayed-stream/1.0.0: - resolution: {integrity: sha1-3zrhmayt+31ECqrgsp4icrJOxhk=} - engines: {node: '>=0.4.0'} - dev: true - - /detect-newline/3.1.0: - resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} - engines: {node: '>=8'} - dev: true - - /diff-sequences/26.6.2: - resolution: {integrity: sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==} - engines: {node: '>= 10.14.2'} - dev: true - - /diff-sequences/27.0.6: - resolution: {integrity: sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dev: true - /diff/4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - dev: true - - /dir-glob/3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - dependencies: - path-type: 4.0.0 - dev: true - - /doctrine/3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - dependencies: - esutils: 2.0.3 - dev: true - - /domexception/2.0.1: - resolution: {integrity: sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==} - engines: {node: '>=8'} - dependencies: - webidl-conversions: 5.0.0 - dev: true - - /electron-to-chromium/1.3.786: - resolution: {integrity: sha512-AmvbLBj3hepRk8v/DHrFF8gINxOFfDbrn6Ts3PcK46/FBdQb5OMmpamSpZQXSkfi77FfBzYtQtAk+00LCLYMVw==} - dev: true - - /emittery/0.8.1: - resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==} - engines: {node: '>=10'} - dev: true - - /emoji-regex/8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} dev: true - /end-of-stream/1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} + /dir-glob/3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} dependencies: - once: 1.4.0 + path-type: 4.0.0 dev: true - /enquirer/2.3.6: - resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} - engines: {node: '>=8.6'} + /doctrine/3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} dependencies: - ansi-colors: 4.1.1 + esutils: 2.0.3 dev: true /env-cmd/10.1.0: @@ -1694,53 +734,42 @@ packages: is-arrayish: 0.2.1 dev: true - /es-abstract/1.17.6: - resolution: {integrity: sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==} - engines: {node: '>= 0.4'} - dependencies: - es-to-primitive: 1.2.1 - function-bind: 1.1.1 - has: 1.0.3 - has-symbols: 1.0.1 - is-callable: 1.2.2 - is-regex: 1.1.1 - object-inspect: 1.8.0 - object-keys: 1.1.1 - object.assign: 4.1.1 - string.prototype.trimend: 1.0.1 - string.prototype.trimstart: 1.0.1 - dev: true - - /es-abstract/1.18.0-next.0: - resolution: {integrity: sha512-elZXTZXKn51hUBdJjSZGYRujuzilgXo8vSPQzjGYXLvSlGiCo8VO8ZGV3kjo9a0WNJJ57hENagwbtlRuHuzkcQ==} + /es-abstract/1.20.1: + resolution: {integrity: sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==} engines: {node: '>= 0.4'} dependencies: + call-bind: 1.0.2 es-to-primitive: 1.2.1 function-bind: 1.1.1 + function.prototype.name: 1.1.5 + get-intrinsic: 1.1.1 + get-symbol-description: 1.0.0 has: 1.0.3 - has-symbols: 1.0.1 - is-callable: 1.2.2 - is-negative-zero: 2.0.0 - is-regex: 1.1.1 - object-inspect: 1.8.0 + has-property-descriptors: 1.0.0 + has-symbols: 1.0.3 + internal-slot: 1.0.3 + is-callable: 1.2.4 + is-negative-zero: 2.0.2 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.2 + is-string: 1.0.7 + is-weakref: 1.0.2 + object-inspect: 1.12.0 object-keys: 1.1.1 - object.assign: 4.1.1 - string.prototype.trimend: 1.0.1 - string.prototype.trimstart: 1.0.1 + object.assign: 4.1.2 + regexp.prototype.flags: 1.4.3 + string.prototype.trimend: 1.0.5 + string.prototype.trimstart: 1.0.5 + unbox-primitive: 1.0.2 dev: true /es-to-primitive/1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} engines: {node: '>= 0.4'} dependencies: - is-callable: 1.2.2 - is-date-object: 1.0.2 - is-symbol: 1.0.3 - dev: true - - /escalade/3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} + is-callable: 1.2.4 + is-date-object: 1.0.5 + is-symbol: 1.0.4 dev: true /escape-string-regexp/1.0.5: @@ -1748,29 +777,11 @@ packages: engines: {node: '>=0.8.0'} dev: true - /escape-string-regexp/2.0.0: - resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} - engines: {node: '>=8'} - dev: true - /escape-string-regexp/4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} dev: true - /escodegen/2.0.0: - resolution: {integrity: sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==} - engines: {node: '>=6.0'} - hasBin: true - dependencies: - esprima: 4.0.1 - estraverse: 5.2.0 - esutils: 2.0.3 - optionator: 0.8.3 - optionalDependencies: - source-map: 0.6.1 - dev: true - /eslint-scope/5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -1779,45 +790,45 @@ packages: estraverse: 4.3.0 dev: true - /eslint-utils/2.1.0: - resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} - engines: {node: '>=6'} + /eslint-scope/7.1.1: + resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - eslint-visitor-keys: 1.3.0 + esrecurse: 4.3.0 + estraverse: 5.3.0 dev: true - /eslint-utils/3.0.0_eslint@7.31.0: + /eslint-utils/3.0.0_eslint@8.15.0: resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} peerDependencies: eslint: '>=5' dependencies: - eslint: 7.31.0 + eslint: 8.15.0 eslint-visitor-keys: 2.1.0 dev: true - /eslint-visitor-keys/1.3.0: - resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} - engines: {node: '>=4'} - dev: true - /eslint-visitor-keys/2.1.0: resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} engines: {node: '>=10'} dev: true - /eslint-watch/7.0.0_eslint@7.31.0: - resolution: {integrity: sha512-xwEm3blWQbBoYI1eZTfpPAXfqkCteQPgMa28u8k/J97tFwtffSgDc7hCOoR1vxsSzmRLtEthxB0a6pwimPTgLQ==} - engines: {node: '>=10'} + /eslint-visitor-keys/3.3.0: + resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /eslint-watch/8.0.0_eslint@8.15.0: + resolution: {integrity: sha512-piws/uE4gkZdz1pwkaEFx+kSWvoGnVX8IegFRrE1NUvlXjtU0rg7KhT1QDj/NzhAwbiLEfdRHWz5q738R4zDKA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true peerDependencies: - eslint: '>=7 <8.0.0' + eslint: '>=8 <9.0.0' dependencies: - chokidar: 3.4.2 - core-js: 3.6.5 - debug: 4.2.0 - eslint: 7.31.0 - execa: 4.0.3 + chokidar: 3.5.3 + debug: 4.3.4 + eslint: 8.15.0 + execa: 5.1.1 keypress: 0.2.1 lodash.debounce: 4.0.8 lodash.isempty: 4.4.0 @@ -1825,67 +836,61 @@ packages: lodash.kebabcase: 4.1.1 lodash.unionwith: 4.6.0 optionator: 0.9.1 - source-map-support: 0.5.19 transitivePeerDependencies: - supports-color dev: true - /eslint/7.31.0: - resolution: {integrity: sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==} - engines: {node: ^10.12.0 || >=12.0.0} + /eslint/8.15.0: + resolution: {integrity: sha512-GG5USZ1jhCu8HJkzGgeK8/+RGnHaNYZGrGDzUtigK3BsGESW/rs2az23XqE0WVwDxy1VRvvjSSGu5nB0Bu+6SA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@babel/code-frame': 7.12.11 - '@eslint/eslintrc': 0.4.3 - '@humanwhocodes/config-array': 0.5.0 + '@eslint/eslintrc': 1.2.3 + '@humanwhocodes/config-array': 0.9.5 ajv: 6.12.6 - chalk: 4.1.1 + chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.2 + debug: 4.3.4 doctrine: 3.0.0 - enquirer: 2.3.6 escape-string-regexp: 4.0.0 - eslint-scope: 5.1.1 - eslint-utils: 2.1.0 - eslint-visitor-keys: 2.1.0 - espree: 7.3.1 + eslint-scope: 7.1.1 + eslint-utils: 3.0.0_eslint@8.15.0 + eslint-visitor-keys: 3.3.0 + espree: 9.3.2 esquery: 1.4.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 6.0.1 functional-red-black-tree: 1.0.1 - glob-parent: 5.1.2 - globals: 13.10.0 - ignore: 4.0.6 + glob-parent: 6.0.2 + globals: 13.15.0 + ignore: 5.2.0 import-fresh: 3.3.0 imurmurhash: 0.1.4 - is-glob: 4.0.1 - js-yaml: 3.14.1 + is-glob: 4.0.3 + js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 levn: 0.4.1 lodash.merge: 4.6.2 - minimatch: 3.0.4 + minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.1 - progress: 2.0.3 regexpp: 3.2.0 - semver: 7.3.5 - strip-ansi: 6.0.0 + strip-ansi: 6.0.1 strip-json-comments: 3.1.1 - table: 6.7.1 text-table: 0.2.0 v8-compile-cache: 2.3.0 transitivePeerDependencies: - supports-color dev: true - /espree/7.3.1: - resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==} - engines: {node: ^10.12.0 || >=12.0.0} + /espree/9.3.2: + resolution: {integrity: sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - acorn: 7.4.1 - acorn-jsx: 5.3.2_acorn@7.4.1 - eslint-visitor-keys: 1.3.0 + acorn: 8.7.1 + acorn-jsx: 5.3.2_acorn@8.7.1 + eslint-visitor-keys: 3.3.0 dev: true /esprima/4.0.1: @@ -1898,14 +903,14 @@ packages: resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} engines: {node: '>=0.10'} dependencies: - estraverse: 5.2.0 + estraverse: 5.3.0 dev: true /esrecurse/4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} dependencies: - estraverse: 5.2.0 + estraverse: 5.3.0 dev: true /estraverse/4.3.0: @@ -1913,8 +918,8 @@ packages: engines: {node: '>=4.0'} dev: true - /estraverse/5.2.0: - resolution: {integrity: sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==} + /estraverse/5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} dev: true @@ -1935,21 +940,6 @@ packages: resolution: {integrity: sha512-KGft0ldl31BZVV//jj+IAIGCxkvvUkkON+ScH6zfoX+l+omX6001ggyRSpI0Io2Hlro0ThXotswCtfzS8UkIiQ==} dev: false - /execa/4.0.3: - resolution: {integrity: sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==} - engines: {node: '>=10'} - dependencies: - cross-spawn: 7.0.3 - get-stream: 5.2.0 - human-signals: 1.1.1 - is-stream: 2.0.0 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.3 - strip-final-newline: 2.0.0 - dev: true - /execa/5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -1957,44 +947,27 @@ packages: cross-spawn: 7.0.3 get-stream: 6.0.1 human-signals: 2.1.0 - is-stream: 2.0.0 + is-stream: 2.0.1 merge-stream: 2.0.0 npm-run-path: 4.0.1 onetime: 5.1.2 - signal-exit: 3.0.3 + signal-exit: 3.0.7 strip-final-newline: 2.0.0 dev: true - /exit/0.1.2: - resolution: {integrity: sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=} - engines: {node: '>= 0.8.0'} - dev: true - - /expect/27.0.6: - resolution: {integrity: sha512-psNLt8j2kwg42jGBDSfAlU49CEZxejN1f1PlANWDZqIhBOVU/c2Pm888FcjWJzFewhIsNWfZJeLjUjtKGiPuSw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - ansi-styles: 5.2.0 - jest-get-type: 27.0.6 - jest-matcher-utils: 27.0.6 - jest-message-util: 27.0.6 - jest-regex-util: 27.0.6 - dev: true - /fast-deep-equal/3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true - /fast-glob/3.2.7: - resolution: {integrity: sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==} - engines: {node: '>=8'} + /fast-glob/3.2.11: + resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} + engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.4 + micromatch: 4.0.5 dev: true /fast-json-stable-stringify/2.1.0: @@ -2005,18 +978,12 @@ packages: resolution: {integrity: sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=} dev: true - /fastq/1.11.1: - resolution: {integrity: sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==} + /fastq/1.13.0: + resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==} dependencies: reusify: 1.0.4 dev: true - /fb-watchman/2.0.1: - resolution: {integrity: sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==} - dependencies: - bser: 2.1.1 - dev: true - /file-entry-cache/6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -2031,8 +998,8 @@ packages: to-regex-range: 5.0.1 dev: true - /find-cache-dir/3.3.1: - resolution: {integrity: sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==} + /find-cache-dir/3.3.2: + resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} engines: {node: '>=8'} dependencies: commondir: 1.0.1 @@ -2048,41 +1015,40 @@ packages: path-exists: 4.0.0 dev: true + /find-up/5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + dev: true + /flat-cache/3.0.4: resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flatted: 3.2.1 + flatted: 3.2.5 rimraf: 3.0.2 dev: true - /flatted/3.2.1: - resolution: {integrity: sha512-OMQjaErSFHmHqZe+PSidH5n8j3O0F2DdnVh8JB4j4eUQ2k6KvB0qGfrKIhapvez5JerBbmWkaLYUYWISaESoXg==} + /flatted/3.2.5: + resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==} dev: true - /form-data/3.0.1: - resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==} - engines: {node: '>= 6'} + /fs-extra/10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.31 + graceful-fs: 4.2.10 + jsonfile: 6.1.0 + universalify: 2.0.0 dev: true /fs-extra/7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} dependencies: - graceful-fs: 4.2.6 - jsonfile: 4.0.0 - universalify: 0.1.2 - dev: true - - /fs-extra/8.1.0: - resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} - engines: {node: '>=6 <7 || >=8'} - dependencies: - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 jsonfile: 4.0.0 universalify: 0.1.2 dev: true @@ -2091,17 +1057,11 @@ packages: resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} dev: true - /fsevents/2.1.3: - resolution: {integrity: sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - dev: true - optional: true - /fsevents/2.3.2: resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] + requiresBuild: true dev: true optional: true @@ -2109,880 +1069,320 @@ packages: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} dev: true - /functional-red-black-tree/1.0.1: - resolution: {integrity: sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=} - dev: true - - /gensync/1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - dev: true - - /get-caller-file/2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - dev: true - - /get-package-type/0.1.0: - resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} - engines: {node: '>=8.0.0'} - dev: true - - /get-stream/5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: true - - /get-stream/6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - dev: true - - /glob-parent/5.1.1: - resolution: {integrity: sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==} - engines: {node: '>= 6'} - dependencies: - is-glob: 4.0.1 - dev: true - - /glob-parent/5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - dependencies: - is-glob: 4.0.1 - dev: true - - /glob/7.1.6: - resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.0.4 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true - - /glob/7.1.7: - resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.0.4 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true - - /globals/11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - dev: true - - /globals/13.10.0: - resolution: {integrity: sha512-piHC3blgLGFjvOuMmWZX60f+na1lXFDhQXBf1UYp2fXPXqvEUbOhNwi6BsQ0bQishwedgnjkwv1d9zKf+MWw3g==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.20.2 - dev: true - - /globby/11.0.4: - resolution: {integrity: sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==} - engines: {node: '>=10'} - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.2.7 - ignore: 5.1.8 - merge2: 1.4.1 - slash: 3.0.0 - dev: true - - /graceful-fs/4.2.4: - resolution: {integrity: sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==} - dev: true - - /graceful-fs/4.2.6: - resolution: {integrity: sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==} - dev: true - - /has-flag/3.0.0: - resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} - engines: {node: '>=4'} - dev: true - - /has-flag/4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - dev: true - - /has-symbols/1.0.1: - resolution: {integrity: sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==} + /function.prototype.name/1.1.5: + resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} engines: {node: '>= 0.4'} - dev: true - - /has/1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} - dependencies: - function-bind: 1.1.1 - dev: true - - /hosted-git-info/2.8.8: - resolution: {integrity: sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==} - dev: true - - /html-encoding-sniffer/2.0.1: - resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==} - engines: {node: '>=10'} - dependencies: - whatwg-encoding: 1.0.5 - dev: true - - /html-escaper/2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - dev: true - - /http-proxy-agent/4.0.1: - resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} - engines: {node: '>= 6'} - dependencies: - '@tootallnate/once': 1.1.2 - agent-base: 6.0.2 - debug: 4.3.2 - transitivePeerDependencies: - - supports-color - dev: true - - /https-proxy-agent/5.0.0: - resolution: {integrity: sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==} - engines: {node: '>= 6'} - dependencies: - agent-base: 6.0.2 - debug: 4.3.2 - transitivePeerDependencies: - - supports-color - dev: true - - /human-signals/1.1.1: - resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} - engines: {node: '>=8.12.0'} - dev: true - - /human-signals/2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - dev: true - - /iconv-lite/0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - dependencies: - safer-buffer: 2.1.2 - dev: true - - /ignore/4.0.6: - resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} - engines: {node: '>= 4'} - dev: true - - /ignore/5.1.8: - resolution: {integrity: sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==} - engines: {node: '>= 4'} - dev: true - - /import-fresh/3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - dev: true - - /import-lazy/4.0.0: - resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} - engines: {node: '>=8'} - dev: true - - /import-local/3.0.2: - resolution: {integrity: sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==} - engines: {node: '>=8'} - hasBin: true - dependencies: - pkg-dir: 4.2.0 - resolve-cwd: 3.0.0 - dev: true - - /imurmurhash/0.1.4: - resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} - engines: {node: '>=0.8.19'} - dev: true - - /inflight/1.0.6: - resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - dev: true - - /inherits/2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - dev: true - - /is-arrayish/0.2.1: - resolution: {integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=} - dev: true - - /is-binary-path/2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} dependencies: - binary-extensions: 2.1.0 + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.1 + functions-have-names: 1.2.3 dev: true - /is-callable/1.2.2: - resolution: {integrity: sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==} - engines: {node: '>= 0.4'} + /functional-red-black-tree/1.0.1: + resolution: {integrity: sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=} dev: true - - /is-ci/3.0.0: - resolution: {integrity: sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==} - hasBin: true - dependencies: - ci-info: 3.2.0 + + /functions-have-names/1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} dev: true - /is-core-module/2.0.0: - resolution: {integrity: sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw==} + /get-intrinsic/1.1.1: + resolution: {integrity: sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==} dependencies: + function-bind: 1.1.1 has: 1.0.3 + has-symbols: 1.0.3 dev: true - /is-core-module/2.5.0: - resolution: {integrity: sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==} - dependencies: - has: 1.0.3 + /get-stream/6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} dev: true - /is-date-object/1.0.2: - resolution: {integrity: sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==} + /get-symbol-description/1.0.0: + resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.1.1 dev: true - /is-extglob/2.1.1: - resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} - engines: {node: '>=0.10.0'} + /glob-parent/5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 dev: true - /is-fullwidth-code-point/3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} + /glob-parent/6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 dev: true - /is-generator-fn/2.1.0: - resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} - engines: {node: '>=6'} + /glob/7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 dev: true - /is-glob/4.0.1: - resolution: {integrity: sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==} - engines: {node: '>=0.10.0'} + /globals/13.15.0: + resolution: {integrity: sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==} + engines: {node: '>=8'} dependencies: - is-extglob: 2.1.1 + type-fest: 0.20.2 dev: true - /is-module/1.0.0: - resolution: {integrity: sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=} + /globby/11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.2.11 + ignore: 5.2.0 + merge2: 1.4.1 + slash: 3.0.0 dev: true - /is-negative-zero/2.0.0: - resolution: {integrity: sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=} - engines: {node: '>= 0.4'} + /graceful-fs/4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} dev: true - /is-number/7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} + /has-bigints/1.0.2: + resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} dev: true - /is-potential-custom-element-name/1.0.1: - resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + /has-flag/3.0.0: + resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} + engines: {node: '>=4'} dev: true - /is-reference/1.2.1: - resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - dependencies: - '@types/estree': 0.0.50 + /has-flag/4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} dev: true - /is-regex/1.1.1: - resolution: {integrity: sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==} - engines: {node: '>= 0.4'} + /has-property-descriptors/1.0.0: + resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: - has-symbols: 1.0.1 + get-intrinsic: 1.1.1 dev: true - /is-stream/2.0.0: - resolution: {integrity: sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==} - engines: {node: '>=8'} + /has-symbols/1.0.3: + resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + engines: {node: '>= 0.4'} dev: true - /is-symbol/1.0.3: - resolution: {integrity: sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==} + /has-tostringtag/1.0.0: + resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} engines: {node: '>= 0.4'} dependencies: - has-symbols: 1.0.1 + has-symbols: 1.0.3 dev: true - /is-typedarray/1.0.0: - resolution: {integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=} - dev: true - - /isexe/2.0.0: - resolution: {integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=} + /has/1.0.3: + resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} + engines: {node: '>= 0.4.0'} + dependencies: + function-bind: 1.1.1 dev: true - /istanbul-lib-coverage/3.0.0: - resolution: {integrity: sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==} - engines: {node: '>=8'} + /hosted-git-info/2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} dev: true - /istanbul-lib-instrument/4.0.3: - resolution: {integrity: sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==} - engines: {node: '>=8'} - dependencies: - '@babel/core': 7.14.8 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.0.0 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color + /human-signals/2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} dev: true - /istanbul-lib-report/3.0.0: - resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==} - engines: {node: '>=8'} - dependencies: - istanbul-lib-coverage: 3.0.0 - make-dir: 3.1.0 - supports-color: 7.2.0 + /ignore/5.2.0: + resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} + engines: {node: '>= 4'} dev: true - /istanbul-lib-source-maps/4.0.0: - resolution: {integrity: sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==} - engines: {node: '>=8'} + /import-fresh/3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} dependencies: - debug: 4.3.2 - istanbul-lib-coverage: 3.0.0 - source-map: 0.6.1 - transitivePeerDependencies: - - supports-color + parent-module: 1.0.1 + resolve-from: 4.0.0 dev: true - /istanbul-reports/3.0.2: - resolution: {integrity: sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==} + /import-lazy/4.0.0: + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} engines: {node: '>=8'} - dependencies: - html-escaper: 2.0.2 - istanbul-lib-report: 3.0.0 dev: true - /jest-changed-files/27.0.6: - resolution: {integrity: sha512-BuL/ZDauaq5dumYh5y20sn4IISnf1P9A0TDswTxUi84ORGtVa86ApuBHqICL0vepqAnZiY6a7xeSPWv2/yy4eA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - execa: 5.1.1 - throat: 6.0.1 - dev: true - - /jest-circus/27.0.6: - resolution: {integrity: sha512-OJlsz6BBeX9qR+7O9lXefWoc2m9ZqcZ5Ohlzz0pTEAG4xMiZUJoacY8f4YDHxgk0oKYxj277AfOk9w6hZYvi1Q==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/environment': 27.0.6 - '@jest/test-result': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - chalk: 4.1.1 - co: 4.6.0 - dedent: 0.7.0 - expect: 27.0.6 - is-generator-fn: 2.1.0 - jest-each: 27.0.6 - jest-matcher-utils: 27.0.6 - jest-message-util: 27.0.6 - jest-runtime: 27.0.6 - jest-snapshot: 27.0.6 - jest-util: 27.0.6 - pretty-format: 27.0.6 - slash: 3.0.0 - stack-utils: 2.0.3 - throat: 6.0.1 - transitivePeerDependencies: - - supports-color + /imurmurhash/0.1.4: + resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} + engines: {node: '>=0.8.19'} dev: true - /jest-cli/27.0.6_ts-node@10.1.0: - resolution: {integrity: sha512-qUUVlGb9fdKir3RDE+B10ULI+LQrz+MCflEH2UJyoUjoHHCbxDrMxSzjQAPUMsic4SncI62ofYCcAvW6+6rhhg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true + /inflight/1.0.6: + resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} dependencies: - '@jest/core': 27.0.6_ts-node@10.1.0 - '@jest/test-result': 27.0.6 - '@jest/types': 27.0.6 - chalk: 4.1.1 - exit: 0.1.2 - graceful-fs: 4.2.6 - import-local: 3.0.2 - jest-config: 27.0.6_ts-node@10.1.0 - jest-util: 27.0.6 - jest-validate: 27.0.6 - prompts: 2.4.1 - yargs: 16.2.0 - transitivePeerDependencies: - - bufferutil - - canvas - - supports-color - - ts-node - - utf-8-validate + once: 1.4.0 + wrappy: 1.0.2 dev: true - /jest-config/27.0.6_ts-node@10.1.0: - resolution: {integrity: sha512-JZRR3I1Plr2YxPBhgqRspDE2S5zprbga3swYNrvY3HfQGu7p/GjyLOqwrYad97tX3U3mzT53TPHVmozacfP/3w==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - peerDependencies: - ts-node: '>=9.0.0' - peerDependenciesMeta: - ts-node: - optional: true - dependencies: - '@babel/core': 7.14.8 - '@jest/test-sequencer': 27.0.6 - '@jest/types': 27.0.6 - babel-jest: 27.0.6_@babel+core@7.14.8 - chalk: 4.1.1 - deepmerge: 4.2.2 - glob: 7.1.7 - graceful-fs: 4.2.6 - is-ci: 3.0.0 - jest-circus: 27.0.6 - jest-environment-jsdom: 27.0.6 - jest-environment-node: 27.0.6 - jest-get-type: 27.0.6 - jest-jasmine2: 27.0.6 - jest-regex-util: 27.0.6 - jest-resolve: 27.0.6 - jest-runner: 27.0.6 - jest-util: 27.0.6 - jest-validate: 27.0.6 - micromatch: 4.0.4 - pretty-format: 27.0.6 - ts-node: 10.1.0_typescript@4.3.5 - transitivePeerDependencies: - - bufferutil - - canvas - - supports-color - - utf-8-validate + /inherits/2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} dev: true - /jest-diff/26.6.2: - resolution: {integrity: sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==} - engines: {node: '>= 10.14.2'} + /internal-slot/1.0.3: + resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==} + engines: {node: '>= 0.4'} dependencies: - chalk: 4.1.1 - diff-sequences: 26.6.2 - jest-get-type: 26.3.0 - pretty-format: 26.6.2 + get-intrinsic: 1.1.1 + has: 1.0.3 + side-channel: 1.0.4 dev: true - /jest-diff/27.0.6: - resolution: {integrity: sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - chalk: 4.1.1 - diff-sequences: 27.0.6 - jest-get-type: 27.0.6 - pretty-format: 27.0.6 + /is-arrayish/0.2.1: + resolution: {integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=} dev: true - /jest-docblock/27.0.6: - resolution: {integrity: sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-bigint/1.0.4: + resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: - detect-newline: 3.1.0 + has-bigints: 1.0.2 dev: true - /jest-each/27.0.6: - resolution: {integrity: sha512-m6yKcV3bkSWrUIjxkE9OC0mhBZZdhovIW5ergBYirqnkLXkyEn3oUUF/QZgyecA1cF1QFyTE8bRRl8Tfg1pfLA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-binary-path/2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} dependencies: - '@jest/types': 27.0.6 - chalk: 4.1.1 - jest-get-type: 27.0.6 - jest-util: 27.0.6 - pretty-format: 27.0.6 + binary-extensions: 2.2.0 dev: true - /jest-environment-jsdom/27.0.6: - resolution: {integrity: sha512-FvetXg7lnXL9+78H+xUAsra3IeZRTiegA3An01cWeXBspKXUhAwMM9ycIJ4yBaR0L7HkoMPaZsozCLHh4T8fuw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-boolean-object/1.1.2: + resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + engines: {node: '>= 0.4'} dependencies: - '@jest/environment': 27.0.6 - '@jest/fake-timers': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - jest-mock: 27.0.6 - jest-util: 27.0.6 - jsdom: 16.6.0 - transitivePeerDependencies: - - bufferutil - - canvas - - supports-color - - utf-8-validate + call-bind: 1.0.2 + has-tostringtag: 1.0.0 dev: true - /jest-environment-node/27.0.6: - resolution: {integrity: sha512-+Vi6yLrPg/qC81jfXx3IBlVnDTI6kmRr08iVa2hFCWmJt4zha0XW7ucQltCAPhSR0FEKEoJ3i+W4E6T0s9is0w==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-builtin-module/3.1.0: + resolution: {integrity: sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==} + engines: {node: '>=6'} dependencies: - '@jest/environment': 27.0.6 - '@jest/fake-timers': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - jest-mock: 27.0.6 - jest-util: 27.0.6 - dev: true - - /jest-get-type/26.3.0: - resolution: {integrity: sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==} - engines: {node: '>= 10.14.2'} + builtin-modules: 3.3.0 dev: true - /jest-get-type/27.0.6: - resolution: {integrity: sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-callable/1.2.4: + resolution: {integrity: sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==} + engines: {node: '>= 0.4'} dev: true - /jest-haste-map/27.0.6: - resolution: {integrity: sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-core-module/2.9.0: + resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==} dependencies: - '@jest/types': 27.0.6 - '@types/graceful-fs': 4.1.5 - '@types/node': 16.4.3 - anymatch: 3.1.2 - fb-watchman: 2.0.1 - graceful-fs: 4.2.6 - jest-regex-util: 27.0.6 - jest-serializer: 27.0.6 - jest-util: 27.0.6 - jest-worker: 27.0.6 - micromatch: 4.0.4 - walker: 1.0.7 - optionalDependencies: - fsevents: 2.3.2 + has: 1.0.3 dev: true - /jest-jasmine2/27.0.6: - resolution: {integrity: sha512-cjpH2sBy+t6dvCeKBsHpW41mjHzXgsavaFMp+VWRf0eR4EW8xASk1acqmljFtK2DgyIECMv2yCdY41r2l1+4iA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@babel/traverse': 7.14.8 - '@jest/environment': 27.0.6 - '@jest/source-map': 27.0.6 - '@jest/test-result': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - chalk: 4.1.1 - co: 4.6.0 - expect: 27.0.6 - is-generator-fn: 2.1.0 - jest-each: 27.0.6 - jest-matcher-utils: 27.0.6 - jest-message-util: 27.0.6 - jest-runtime: 27.0.6 - jest-snapshot: 27.0.6 - jest-util: 27.0.6 - pretty-format: 27.0.6 - throat: 6.0.1 - transitivePeerDependencies: - - supports-color + /is-date-object/1.0.5: + resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 dev: true - /jest-leak-detector/27.0.6: - resolution: {integrity: sha512-2/d6n2wlH5zEcdctX4zdbgX8oM61tb67PQt4Xh8JFAIy6LRKUnX528HulkaG6nD5qDl5vRV1NXejCe1XRCH5gQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - jest-get-type: 27.0.6 - pretty-format: 27.0.6 + /is-extglob/2.1.1: + resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} + engines: {node: '>=0.10.0'} dev: true - /jest-matcher-utils/27.0.6: - resolution: {integrity: sha512-OFgF2VCQx9vdPSYTHWJ9MzFCehs20TsyFi6bIHbk5V1u52zJOnvF0Y/65z3GLZHKRuTgVPY4Z6LVePNahaQ+tA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-glob/4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} dependencies: - chalk: 4.1.1 - jest-diff: 27.0.6 - jest-get-type: 27.0.6 - pretty-format: 27.0.6 + is-extglob: 2.1.1 dev: true - /jest-message-util/27.0.6: - resolution: {integrity: sha512-rBxIs2XK7rGy+zGxgi+UJKP6WqQ+KrBbD1YMj517HYN3v2BG66t3Xan3FWqYHKZwjdB700KiAJ+iES9a0M+ixw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@babel/code-frame': 7.14.5 - '@jest/types': 27.0.6 - '@types/stack-utils': 2.0.1 - chalk: 4.1.1 - graceful-fs: 4.2.6 - micromatch: 4.0.4 - pretty-format: 27.0.6 - slash: 3.0.0 - stack-utils: 2.0.3 + /is-module/1.0.0: + resolution: {integrity: sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=} dev: true - /jest-mock/27.0.6: - resolution: {integrity: sha512-lzBETUoK8cSxts2NYXSBWT+EJNzmUVtVVwS1sU9GwE1DLCfGsngg+ZVSIe0yd0ZSm+y791esiuo+WSwpXJQ5Bw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - '@types/node': 16.4.3 + /is-negative-zero/2.0.2: + resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} + engines: {node: '>= 0.4'} dev: true - /jest-pnp-resolver/1.2.2_jest-resolve@27.0.6: - resolution: {integrity: sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==} - engines: {node: '>=6'} - peerDependencies: - jest-resolve: '*' - peerDependenciesMeta: - jest-resolve: - optional: true + /is-number-object/1.0.7: + resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + engines: {node: '>= 0.4'} dependencies: - jest-resolve: 27.0.6 + has-tostringtag: 1.0.0 dev: true - /jest-regex-util/27.0.6: - resolution: {integrity: sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-number/7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} dev: true - /jest-resolve-dependencies/27.0.6: - resolution: {integrity: sha512-mg9x9DS3BPAREWKCAoyg3QucCr0n6S8HEEsqRCKSPjPcu9HzRILzhdzY3imsLoZWeosEbJZz6TKasveczzpJZA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-reference/1.2.1: + resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} dependencies: - '@jest/types': 27.0.6 - jest-regex-util: 27.0.6 - jest-snapshot: 27.0.6 - transitivePeerDependencies: - - supports-color + '@types/estree': 0.0.51 dev: true - /jest-resolve/27.0.6: - resolution: {integrity: sha512-yKmIgw2LgTh7uAJtzv8UFHGF7Dm7XfvOe/LQ3Txv101fLM8cx2h1QVwtSJ51Q/SCxpIiKfVn6G2jYYMDNHZteA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-regex/1.1.4: + resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} + engines: {node: '>= 0.4'} dependencies: - '@jest/types': 27.0.6 - chalk: 4.1.1 - escalade: 3.1.1 - graceful-fs: 4.2.6 - jest-pnp-resolver: 1.2.2_jest-resolve@27.0.6 - jest-util: 27.0.6 - jest-validate: 27.0.6 - resolve: 1.20.0 - slash: 3.0.0 - dev: true - - /jest-runner/27.0.6: - resolution: {integrity: sha512-W3Bz5qAgaSChuivLn+nKOgjqNxM7O/9JOJoKDCqThPIg2sH/d4A/lzyiaFgnb9V1/w29Le11NpzTJSzga1vyYQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/console': 27.0.6 - '@jest/environment': 27.0.6 - '@jest/test-result': 27.0.6 - '@jest/transform': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - chalk: 4.1.1 - emittery: 0.8.1 - exit: 0.1.2 - graceful-fs: 4.2.6 - jest-docblock: 27.0.6 - jest-environment-jsdom: 27.0.6 - jest-environment-node: 27.0.6 - jest-haste-map: 27.0.6 - jest-leak-detector: 27.0.6 - jest-message-util: 27.0.6 - jest-resolve: 27.0.6 - jest-runtime: 27.0.6 - jest-util: 27.0.6 - jest-worker: 27.0.6 - source-map-support: 0.5.19 - throat: 6.0.1 - transitivePeerDependencies: - - bufferutil - - canvas - - supports-color - - utf-8-validate - dev: true - - /jest-runtime/27.0.6: - resolution: {integrity: sha512-BhvHLRVfKibYyqqEFkybsznKwhrsu7AWx2F3y9G9L95VSIN3/ZZ9vBpm/XCS2bS+BWz3sSeNGLzI3TVQ0uL85Q==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/console': 27.0.6 - '@jest/environment': 27.0.6 - '@jest/fake-timers': 27.0.6 - '@jest/globals': 27.0.6 - '@jest/source-map': 27.0.6 - '@jest/test-result': 27.0.6 - '@jest/transform': 27.0.6 - '@jest/types': 27.0.6 - '@types/yargs': 16.0.4 - chalk: 4.1.1 - cjs-module-lexer: 1.2.2 - collect-v8-coverage: 1.0.1 - exit: 0.1.2 - glob: 7.1.7 - graceful-fs: 4.2.6 - jest-haste-map: 27.0.6 - jest-message-util: 27.0.6 - jest-mock: 27.0.6 - jest-regex-util: 27.0.6 - jest-resolve: 27.0.6 - jest-snapshot: 27.0.6 - jest-util: 27.0.6 - jest-validate: 27.0.6 - slash: 3.0.0 - strip-bom: 4.0.0 - yargs: 16.2.0 - transitivePeerDependencies: - - supports-color + call-bind: 1.0.2 + has-tostringtag: 1.0.0 dev: true - /jest-serializer/27.0.6: - resolution: {integrity: sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@types/node': 16.4.3 - graceful-fs: 4.2.6 - dev: true - - /jest-snapshot/27.0.6: - resolution: {integrity: sha512-NTHaz8He+ATUagUgE7C/UtFcRoHqR2Gc+KDfhQIyx+VFgwbeEMjeP+ILpUTLosZn/ZtbNdCF5LkVnN/l+V751A==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@babel/core': 7.14.8 - '@babel/generator': 7.14.8 - '@babel/parser': 7.14.8 - '@babel/plugin-syntax-typescript': 7.14.5_@babel+core@7.14.8 - '@babel/traverse': 7.14.8 - '@babel/types': 7.14.8 - '@jest/transform': 27.0.6 - '@jest/types': 27.0.6 - '@types/babel__traverse': 7.14.2 - '@types/prettier': 2.3.2 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.14.8 - chalk: 4.1.1 - expect: 27.0.6 - graceful-fs: 4.2.6 - jest-diff: 27.0.6 - jest-get-type: 27.0.6 - jest-haste-map: 27.0.6 - jest-matcher-utils: 27.0.6 - jest-message-util: 27.0.6 - jest-resolve: 27.0.6 - jest-util: 27.0.6 - natural-compare: 1.4.0 - pretty-format: 27.0.6 - semver: 7.3.5 - transitivePeerDependencies: - - supports-color + /is-shared-array-buffer/1.0.2: + resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + dependencies: + call-bind: 1.0.2 dev: true - /jest-util/27.0.6: - resolution: {integrity: sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - chalk: 4.1.1 - graceful-fs: 4.2.6 - is-ci: 3.0.0 - picomatch: 2.3.0 + /is-stream/2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} dev: true - /jest-validate/27.0.6: - resolution: {integrity: sha512-yhZZOaMH3Zg6DC83n60pLmdU1DQE46DW+KLozPiPbSbPhlXXaiUTDlhHQhHFpaqIFRrInko1FHXjTRpjWRuWfA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-string/1.0.7: + resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + engines: {node: '>= 0.4'} dependencies: - '@jest/types': 27.0.6 - camelcase: 6.2.0 - chalk: 4.1.1 - jest-get-type: 27.0.6 - leven: 3.1.0 - pretty-format: 27.0.6 + has-tostringtag: 1.0.0 dev: true - /jest-watcher/27.0.6: - resolution: {integrity: sha512-/jIoKBhAP00/iMGnTwUBLgvxkn7vsOweDrOTSPzc7X9uOyUtJIDthQBTI1EXz90bdkrxorUZVhJwiB69gcHtYQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + /is-symbol/1.0.4: + resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + engines: {node: '>= 0.4'} dependencies: - '@jest/test-result': 27.0.6 - '@jest/types': 27.0.6 - '@types/node': 16.4.3 - ansi-escapes: 4.3.2 - chalk: 4.1.1 - jest-util: 27.0.6 - string-length: 4.0.2 + has-symbols: 1.0.3 dev: true - /jest-worker/27.0.6: - resolution: {integrity: sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==} - engines: {node: '>= 10.13.0'} + /is-weakref/1.0.2: + resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: - '@types/node': 16.4.3 - merge-stream: 2.0.0 - supports-color: 8.1.1 + call-bind: 1.0.2 dev: true - /jest/27.0.6_ts-node@10.1.0: - resolution: {integrity: sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - dependencies: - '@jest/core': 27.0.6_ts-node@10.1.0 - import-local: 3.0.2 - jest-cli: 27.0.6_ts-node@10.1.0 - transitivePeerDependencies: - - bufferutil - - canvas - - supports-color - - ts-node - - utf-8-validate + /isexe/2.0.0: + resolution: {integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=} dev: true /jju/1.4.0: resolution: {integrity: sha1-o6vicYryQaKykE+EpiWXDzia4yo=} dev: true - /js-tokens/4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: true - /js-yaml/3.13.1: resolution: {integrity: sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==} hasBin: true @@ -2991,60 +1391,11 @@ packages: esprima: 4.0.1 dev: true - /js-yaml/3.14.1: - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + /js-yaml/4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true dependencies: - argparse: 1.0.10 - esprima: 4.0.1 - dev: true - - /jsdom/16.6.0: - resolution: {integrity: sha512-Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg==} - engines: {node: '>=10'} - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - dependencies: - abab: 2.0.5 - acorn: 8.4.1 - acorn-globals: 6.0.0 - cssom: 0.4.4 - cssstyle: 2.3.0 - data-urls: 2.0.0 - decimal.js: 10.3.1 - domexception: 2.0.1 - escodegen: 2.0.0 - form-data: 3.0.1 - html-encoding-sniffer: 2.0.1 - http-proxy-agent: 4.0.1 - https-proxy-agent: 5.0.0 - is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.0 - parse5: 6.0.1 - saxes: 5.0.1 - symbol-tree: 3.2.4 - tough-cookie: 4.0.0 - w3c-hr-time: 1.0.2 - w3c-xmlserializer: 2.0.0 - webidl-conversions: 6.1.0 - whatwg-encoding: 1.0.5 - whatwg-mimetype: 2.3.0 - whatwg-url: 8.7.0 - ws: 7.5.3 - xml-name-validator: 3.0.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - dev: true - - /jsesc/2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true + argparse: 2.0.1 dev: true /json-parse-better-errors/1.0.2: @@ -3055,56 +1406,28 @@ packages: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} dev: true - /json-schema-traverse/1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - dev: true - /json-stable-stringify-without-jsonify/1.0.1: resolution: {integrity: sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=} dev: true - /json5/2.2.0: - resolution: {integrity: sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==} - engines: {node: '>=6'} - hasBin: true - dependencies: - minimist: 1.2.5 - dev: true - /jsonfile/4.0.0: resolution: {integrity: sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=} optionalDependencies: - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 dev: true - /jsx-jsonml-devtools-renderer/1.4.3: - resolution: {integrity: sha512-U1Ayx2VUF6plTLrQkNnJAg8UInToPseWqugxYTKEyaWG8G83Vqpx8BpyW9MObK1kPHdtMkevKfLi+PVwqp5Rtw==} + /jsonfile/6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: - csstype: 3.0.3 - dev: false + universalify: 2.0.0 + optionalDependencies: + graceful-fs: 4.2.10 + dev: true /keypress/0.2.1: resolution: {integrity: sha1-HoBFQlABjbrUw/6USX1uZ7YmnHc=} dev: true - /kleur/3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} - dev: true - - /leven/3.1.0: - resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} - engines: {node: '>=6'} - dev: true - - /levn/0.3.0: - resolution: {integrity: sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=} - engines: {node: '>= 0.8.0'} - dependencies: - prelude-ls: 1.1.2 - type-check: 0.3.2 - dev: true - /levn/0.4.1: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} @@ -3117,7 +1440,7 @@ packages: resolution: {integrity: sha1-L19Fq5HjMhYjT9U62rZo607AmTs=} engines: {node: '>=4'} dependencies: - graceful-fs: 4.2.4 + graceful-fs: 4.2.10 parse-json: 4.0.0 pify: 3.0.0 strip-bom: 3.0.0 @@ -3130,14 +1453,17 @@ packages: p-locate: 4.1.0 dev: true + /locate-path/6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + dependencies: + p-locate: 5.0.0 + dev: true + /lodash-es/4.17.21: resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} dev: false - /lodash.clonedeep/4.5.0: - resolution: {integrity: sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=} - dev: true - /lodash.debounce/4.0.8: resolution: {integrity: sha1-gteb/zCmfEAF/9XiUVMArZyk168=} dev: true @@ -3162,10 +1488,6 @@ packages: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true - /lodash.truncate/4.4.2: - resolution: {integrity: sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=} - dev: true - /lodash.unionwith/4.6.0: resolution: {integrity: sha1-dNFAtcqBRubGQ8NyT1FSU42awfA=} dev: true @@ -3181,8 +1503,8 @@ packages: yallist: 4.0.0 dev: true - /magic-string/0.25.7: - resolution: {integrity: sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==} + /magic-string/0.25.9: + resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} dependencies: sourcemap-codec: 1.4.8 dev: true @@ -3198,12 +1520,6 @@ packages: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} dev: true - /makeerror/1.0.11: - resolution: {integrity: sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=} - dependencies: - tmpl: 1.0.4 - dev: true - /memorystream/0.3.1: resolution: {integrity: sha1-htcJCzDORV1j+64S3aUaR93K+bI=} engines: {node: '>= 0.10.0'} @@ -3218,24 +1534,12 @@ packages: engines: {node: '>= 8'} dev: true - /micromatch/4.0.4: - resolution: {integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==} + /micromatch/4.0.5: + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} dependencies: braces: 3.0.2 - picomatch: 2.3.0 - dev: true - - /mime-db/1.48.0: - resolution: {integrity: sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==} - engines: {node: '>= 0.6'} - dev: true - - /mime-types/2.1.31: - resolution: {integrity: sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==} - engines: {node: '>= 0.6'} - dependencies: - mime-db: 1.48.0 + picomatch: 2.3.1 dev: true /mimic-fn/2.1.0: @@ -3243,22 +1547,12 @@ packages: engines: {node: '>=6'} dev: true - /minimatch/3.0.4: - resolution: {integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==} + /minimatch/3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 dev: true - /minimist/1.2.5: - resolution: {integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==} - dev: true - - /mkdirp/1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - dev: true - /ms/2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} dev: true @@ -3271,24 +1565,11 @@ packages: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} dev: true - /node-int64/0.4.0: - resolution: {integrity: sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=} - dev: true - - /node-modules-regexp/1.0.0: - resolution: {integrity: sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=} - engines: {node: '>=0.10.0'} - dev: true - - /node-releases/1.1.73: - resolution: {integrity: sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==} - dev: true - /normalize-package-data/2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} dependencies: - hosted-git-info: 2.8.8 - resolve: 1.18.1 + hosted-git-info: 2.8.9 + resolve: 1.22.0 semver: 5.7.1 validate-npm-package-license: 3.0.4 dev: true @@ -3307,11 +1588,11 @@ packages: chalk: 2.4.2 cross-spawn: 6.0.5 memorystream: 0.3.1 - minimatch: 3.0.4 + minimatch: 3.1.2 pidtree: 0.3.1 read-pkg: 3.0.0 - shell-quote: 1.7.2 - string.prototype.padend: 3.1.0 + shell-quote: 1.7.3 + string.prototype.padend: 3.1.3 dev: true /npm-run-path/4.0.1: @@ -3321,12 +1602,8 @@ packages: path-key: 3.1.1 dev: true - /nwsapi/2.2.0: - resolution: {integrity: sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==} - dev: true - - /object-inspect/1.8.0: - resolution: {integrity: sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==} + /object-inspect/1.12.0: + resolution: {integrity: sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==} dev: true /object-keys/1.1.1: @@ -3334,13 +1611,13 @@ packages: engines: {node: '>= 0.4'} dev: true - /object.assign/4.1.1: - resolution: {integrity: sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==} + /object.assign/4.1.2: + resolution: {integrity: sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==} engines: {node: '>= 0.4'} dependencies: - define-properties: 1.1.3 - es-abstract: 1.18.0-next.0 - has-symbols: 1.0.1 + call-bind: 1.0.2 + define-properties: 1.1.4 + has-symbols: 1.0.3 object-keys: 1.1.1 dev: true @@ -3357,23 +1634,11 @@ packages: mimic-fn: 2.1.0 dev: true - /optionator/0.8.3: - resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==} - engines: {node: '>= 0.8.0'} - dependencies: - deep-is: 0.1.3 - fast-levenshtein: 2.0.6 - levn: 0.3.0 - prelude-ls: 1.1.2 - type-check: 0.3.2 - word-wrap: 1.2.3 - dev: true - /optionator/0.9.1: resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} engines: {node: '>= 0.8.0'} dependencies: - deep-is: 0.1.3 + deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.4.1 prelude-ls: 1.2.1 @@ -3381,11 +1646,6 @@ packages: word-wrap: 1.2.3 dev: true - /p-each-series/2.2.0: - resolution: {integrity: sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==} - engines: {node: '>=8'} - dev: true - /p-limit/2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} @@ -3393,6 +1653,13 @@ packages: p-try: 2.2.0 dev: true + /p-limit/3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + dependencies: + yocto-queue: 0.1.0 + dev: true + /p-locate/4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -3400,6 +1667,13 @@ packages: p-limit: 2.3.0 dev: true + /p-locate/5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + dependencies: + p-limit: 3.1.0 + dev: true + /p-try/2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} @@ -3420,10 +1694,6 @@ packages: json-parse-better-errors: 1.0.2 dev: true - /parse5/6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - dev: true - /path-exists/4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -3434,6 +1704,12 @@ packages: engines: {node: '>=0.10.0'} dev: true + /path-is-network-drive/1.0.15: + resolution: {integrity: sha512-bJGs1SxUne+q29P1xCLMkNBhMetku+vPN+yVQu8FGL/7diHesCSSIKoF4Wq42tcbwm7rK72XrGfK8FUXN00LLQ==} + dependencies: + tslib: 2.4.0 + dev: true + /path-key/2.0.1: resolution: {integrity: sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=} engines: {node: '>=4'} @@ -3444,14 +1720,16 @@ packages: engines: {node: '>=8'} dev: true - /path-parse/1.0.6: - resolution: {integrity: sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==} - dev: true - /path-parse/1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true + /path-strip-sep/1.0.12: + resolution: {integrity: sha512-EJZSC5WBjVlA9XHLCiluiyisYg6yzeMJ4nY3BQVCuedyEHA/I2crcHWdwuQ74h3V599U9nEbEZUTvvSxOK3vbQ==} + dependencies: + tslib: 2.4.0 + dev: true + /path-type/3.0.0: resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} engines: {node: '>=4'} @@ -3464,13 +1742,8 @@ packages: engines: {node: '>=8'} dev: true - /picomatch/2.2.2: - resolution: {integrity: sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==} - engines: {node: '>=8.6'} - dev: true - - /picomatch/2.3.0: - resolution: {integrity: sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==} + /picomatch/2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} dev: true @@ -3485,13 +1758,6 @@ packages: engines: {node: '>=4'} dev: true - /pirates/4.0.1: - resolution: {integrity: sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==} - engines: {node: '>= 6'} - dependencies: - node-modules-regexp: 1.0.0 - dev: true - /pkg-dir/4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -3499,9 +1765,11 @@ packages: find-up: 4.1.0 dev: true - /prelude-ls/1.1.2: - resolution: {integrity: sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=} - engines: {node: '>= 0.8.0'} + /pkg-dir/5.0.0: + resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} + engines: {node: '>=10'} + dependencies: + find-up: 5.0.0 dev: true /prelude-ls/1.2.1: @@ -3509,50 +1777,6 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /pretty-format/26.6.2: - resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==} - engines: {node: '>= 10'} - dependencies: - '@jest/types': 26.6.2 - ansi-regex: 5.0.0 - ansi-styles: 4.3.0 - react-is: 17.0.2 - dev: true - - /pretty-format/27.0.6: - resolution: {integrity: sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - dependencies: - '@jest/types': 27.0.6 - ansi-regex: 5.0.0 - ansi-styles: 5.2.0 - react-is: 17.0.2 - dev: true - - /progress/2.0.3: - resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} - engines: {node: '>=0.4.0'} - dev: true - - /prompts/2.4.1: - resolution: {integrity: sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==} - engines: {node: '>= 6'} - dependencies: - kleur: 3.0.3 - sisteransi: 1.0.5 - dev: true - - /psl/1.8.0: - resolution: {integrity: sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==} - dev: true - - /pump/3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - dev: true - /punycode/2.1.1: resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} engines: {node: '>=6'} @@ -3562,10 +1786,6 @@ packages: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: true - /react-is/17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - dev: true - /read-pkg/3.0.0: resolution: {integrity: sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=} engines: {node: '>=4'} @@ -3575,33 +1795,25 @@ packages: path-type: 3.0.0 dev: true - /readdirp/3.4.0: - resolution: {integrity: sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==} + /readdirp/3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} dependencies: - picomatch: 2.2.2 - dev: true - - /regexpp/3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} + picomatch: 2.3.1 dev: true - /require-directory/2.1.1: - resolution: {integrity: sha1-jGStX9MNqxyXbiNE/+f3kqam30I=} - engines: {node: '>=0.10.0'} - dev: true - - /require-from-string/2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} + /regexp.prototype.flags/1.4.3: + resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.1.4 + functions-have-names: 1.2.3 dev: true - /resolve-cwd/3.0.0: - resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} + /regexpp/3.2.0: + resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} engines: {node: '>=8'} - dependencies: - resolve-from: 5.0.0 dev: true /resolve-from/4.0.0: @@ -3609,36 +1821,26 @@ packages: engines: {node: '>=4'} dev: true - /resolve-from/5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - dev: true - /resolve/1.17.0: resolution: {integrity: sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==} dependencies: path-parse: 1.0.7 dev: true - /resolve/1.18.1: - resolution: {integrity: sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==} - dependencies: - is-core-module: 2.0.0 - path-parse: 1.0.6 - dev: true - /resolve/1.19.0: resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==} dependencies: - is-core-module: 2.5.0 + is-core-module: 2.9.0 path-parse: 1.0.7 dev: true - /resolve/1.20.0: - resolution: {integrity: sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==} + /resolve/1.22.0: + resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==} + hasBin: true dependencies: - is-core-module: 2.5.0 + is-core-module: 2.9.0 path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 dev: true /reusify/1.0.4: @@ -3650,7 +1852,7 @@ packages: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true dependencies: - glob: 7.1.6 + glob: 7.2.3 dev: true /rollup-plugin-analyzer/4.0.0: @@ -3658,23 +1860,24 @@ packages: engines: {node: '>=8.0.0'} dev: true - /rollup-plugin-typescript2/0.30.0_rollup@2.54.0+typescript@4.3.5: - resolution: {integrity: sha512-NUFszIQyhgDdhRS9ya/VEmsnpTe+GERDMmFo0Y+kf8ds51Xy57nPNGglJY+W6x1vcouA7Au7nsTgsLFj2I0PxQ==} + /rollup-plugin-typescript2/0.31.2_lq4dy2bb4fhoyaf2vwyb4geyfa: + resolution: {integrity: sha512-hRwEYR1C8xDGVVMFJQdEVnNAeWRvpaY97g5mp3IeLnzhNXzSVq78Ye/BJ9PAaUfN4DXa/uDnqerifMOaMFY54Q==} peerDependencies: rollup: '>=1.26.3' typescript: '>=2.4.0' dependencies: - '@rollup/pluginutils': 4.1.1 - find-cache-dir: 3.3.1 - fs-extra: 8.1.0 - resolve: 1.20.0 - rollup: 2.54.0 - tslib: 2.1.0 - typescript: 4.3.5 + '@rollup/pluginutils': 4.2.1 + '@yarn-tool/resolve-package': 1.0.47 + find-cache-dir: 3.3.2 + fs-extra: 10.1.0 + resolve: 1.22.0 + rollup: 2.74.1 + tslib: 2.4.0 + typescript: 4.6.4 dev: true - /rollup/2.54.0: - resolution: {integrity: sha512-RHzvstAVwm9A751NxWIbGPFXs3zL4qe/eYg+N7WwGtIXVLy1cK64MiU37+hXeFm1jqipK6DGgMi6Z2hhPuCC3A==} + /rollup/2.74.1: + resolution: {integrity: sha512-K2zW7kV8Voua5eGkbnBtWYfMIhYhT9Pel2uhBk2WO5eMee161nPze/XRfvEQPFYz7KgrCCnmh2Wy0AMFLGGmMA==} engines: {node: '>=10.0.0'} hasBin: true optionalDependencies: @@ -3687,21 +1890,6 @@ packages: queue-microtask: 1.2.3 dev: true - /safe-buffer/5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - dev: true - - /safer-buffer/2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - dev: true - - /saxes/5.0.1: - resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} - engines: {node: '>=10'} - dependencies: - xmlchars: 2.2.0 - dev: true - /semver/5.7.1: resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} hasBin: true @@ -3712,8 +1900,8 @@ packages: hasBin: true dev: true - /semver/7.3.5: - resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} + /semver/7.3.7: + resolution: {integrity: sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==} engines: {node: '>=10'} hasBin: true dependencies: @@ -3744,16 +1932,20 @@ packages: engines: {node: '>=8'} dev: true - /shell-quote/1.7.2: - resolution: {integrity: sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==} + /shell-quote/1.7.3: + resolution: {integrity: sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==} dev: true - /signal-exit/3.0.3: - resolution: {integrity: sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==} + /side-channel/1.0.4: + resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} + dependencies: + call-bind: 1.0.2 + get-intrinsic: 1.1.1 + object-inspect: 1.12.0 dev: true - /sisteransi/1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + /signal-exit/3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: true /slash/3.0.0: @@ -3761,37 +1953,11 @@ packages: engines: {node: '>=8'} dev: true - /slice-ansi/4.0.0: - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - dev: true - - /source-map-support/0.5.19: - resolution: {integrity: sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==} - dependencies: - buffer-from: 1.1.1 - source-map: 0.6.1 - dev: true - - /source-map/0.5.7: - resolution: {integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=} - engines: {node: '>=0.10.0'} - dev: true - /source-map/0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} dev: true - /source-map/0.7.3: - resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==} - engines: {node: '>= 8'} - dev: true - /sourcemap-codec/1.4.8: resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} dev: true @@ -3800,7 +1966,7 @@ packages: resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} dependencies: spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.6 + spdx-license-ids: 3.0.11 dev: true /spdx-exceptions/2.3.0: @@ -3811,73 +1977,52 @@ packages: resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} dependencies: spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.6 + spdx-license-ids: 3.0.11 dev: true - /spdx-license-ids/3.0.6: - resolution: {integrity: sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==} + /spdx-license-ids/3.0.11: + resolution: {integrity: sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==} dev: true /sprintf-js/1.0.3: resolution: {integrity: sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=} dev: true - /stack-utils/2.0.3: - resolution: {integrity: sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==} - engines: {node: '>=10'} - dependencies: - escape-string-regexp: 2.0.0 - dev: true - /string-argv/0.3.1: resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==} engines: {node: '>=0.6.19'} dev: true - /string-length/4.0.2: - resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} - engines: {node: '>=10'} - dependencies: - char-regex: 1.0.2 - strip-ansi: 6.0.0 - dev: true - - /string-width/4.2.2: - resolution: {integrity: sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==} - engines: {node: '>=8'} - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.0 - dev: true - - /string.prototype.padend/3.1.0: - resolution: {integrity: sha512-3aIv8Ffdp8EZj8iLwREGpQaUZiPyrWrpzMBHvkiSW/bK/EGve9np07Vwy7IJ5waydpGXzQZu/F8Oze2/IWkBaA==} + /string.prototype.padend/3.1.3: + resolution: {integrity: sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==} engines: {node: '>= 0.4'} dependencies: - define-properties: 1.1.3 - es-abstract: 1.17.6 + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.1 dev: true - /string.prototype.trimend/1.0.1: - resolution: {integrity: sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==} + /string.prototype.trimend/1.0.5: + resolution: {integrity: sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==} dependencies: - define-properties: 1.1.3 - es-abstract: 1.17.6 + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.1 dev: true - /string.prototype.trimstart/1.0.1: - resolution: {integrity: sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==} + /string.prototype.trimstart/1.0.5: + resolution: {integrity: sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==} dependencies: - define-properties: 1.1.3 - es-abstract: 1.17.6 + call-bind: 1.0.2 + define-properties: 1.1.4 + es-abstract: 1.20.1 dev: true - /strip-ansi/6.0.0: - resolution: {integrity: sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==} + /strip-ansi/6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} dependencies: - ansi-regex: 5.0.0 + ansi-regex: 5.0.1 dev: true /strip-bom/3.0.0: @@ -3885,11 +2030,6 @@ packages: engines: {node: '>=4'} dev: true - /strip-bom/4.0.0: - resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} - engines: {node: '>=8'} - dev: true - /strip-final-newline/2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} @@ -3914,75 +2054,19 @@ packages: has-flag: 4.0.0 dev: true - /supports-color/8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} - dependencies: - has-flag: 4.0.0 - dev: true - - /supports-hyperlinks/2.2.0: - resolution: {integrity: sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==} - engines: {node: '>=8'} - dependencies: - has-flag: 4.0.0 - supports-color: 7.2.0 - dev: true - - /symbol-tree/3.2.4: - resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} - dev: true - - /table/6.7.1: - resolution: {integrity: sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==} - engines: {node: '>=10.0.0'} - dependencies: - ajv: 8.6.2 - lodash.clonedeep: 4.5.0 - lodash.truncate: 4.4.2 - slice-ansi: 4.0.0 - string-width: 4.2.2 - strip-ansi: 6.0.0 - dev: true - - /terminal-link/2.1.1: - resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==} - engines: {node: '>=8'} - dependencies: - ansi-escapes: 4.3.2 - supports-hyperlinks: 2.2.0 - dev: true - - /test-exclude/6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} - dependencies: - '@istanbuljs/schema': 0.1.3 - glob: 7.1.7 - minimatch: 3.0.4 + /supports-preserve-symlinks-flag/1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} dev: true /text-table/0.2.0: resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=} dev: true - /throat/6.0.1: - resolution: {integrity: sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==} - dev: true - /timsort/0.3.0: resolution: {integrity: sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=} dev: true - /tmpl/1.0.4: - resolution: {integrity: sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=} - dev: true - - /to-fast-properties/2.0.0: - resolution: {integrity: sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=} - engines: {node: '>=4'} - dev: true - /to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -3990,58 +2074,8 @@ packages: is-number: 7.0.0 dev: true - /tough-cookie/4.0.0: - resolution: {integrity: sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==} - engines: {node: '>=6'} - dependencies: - psl: 1.8.0 - punycode: 2.1.1 - universalify: 0.1.2 - dev: true - - /tr46/2.1.0: - resolution: {integrity: sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==} - engines: {node: '>=8'} - dependencies: - punycode: 2.1.1 - dev: true - - /ts-jest/27.0.4_52cc4273aa16028085013af47e479e10: - resolution: {integrity: sha512-c4E1ECy9Xz2WGfTMyHbSaArlIva7Wi2p43QOMmCqjSSjHP06KXv+aT+eSY+yZMuqsMi3k7pyGsGj2q5oSl5WfQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - hasBin: true - peerDependencies: - '@babel/core': '>=7.0.0-beta.0 <8' - '@types/jest': ^26.0.0 - babel-jest: '>=27.0.0 <28' - jest: ^27.0.0 - typescript: '>=3.8 <5.0' - peerDependenciesMeta: - '@babel/core': - optional: true - '@types/jest': - optional: true - babel-jest: - optional: true - dependencies: - '@types/jest': 26.0.24 - bs-logger: 0.2.6 - buffer-from: 1.1.1 - fast-json-stable-stringify: 2.1.0 - jest: 27.0.6_ts-node@10.1.0 - jest-util: 27.0.6 - json5: 2.2.0 - lodash: 4.17.21 - make-error: 1.3.6 - mkdirp: 1.0.4 - semver: 7.3.5 - typescript: 4.3.5 - yargs-parser: 20.2.9 - dev: true - - /ts-node/10.1.0_typescript@4.3.5: - resolution: {integrity: sha512-6szn3+J9WyG2hE+5W8e0ruZrzyk1uFLYye6IGMBadnOzDh8aP7t8CbFpsfCiEx2+wMixAhjFt7lOZC4+l+WbEA==} - engines: {node: '>=12.0.0'} + /ts-node/10.7.0_typescript@4.6.4: + resolution: {integrity: sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==} hasBin: true peerDependencies: '@swc/core': '>=1.2.50' @@ -4054,16 +2088,19 @@ packages: '@swc/wasm': optional: true dependencies: + '@cspotcode/source-map-support': 0.7.0 '@tsconfig/node10': 1.0.8 '@tsconfig/node12': 1.0.9 '@tsconfig/node14': 1.0.1 '@tsconfig/node16': 1.0.2 + acorn: 8.7.1 + acorn-walk: 8.2.0 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - source-map-support: 0.5.19 - typescript: 4.3.5 + typescript: 4.6.4 + v8-compile-cache-lib: 3.0.1 yn: 3.1.1 dev: true @@ -4071,29 +2108,17 @@ packages: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true - /tslib/2.1.0: - resolution: {integrity: sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==} - dev: true - - /tslib/2.3.0: - resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==} - dev: false + /tslib/2.4.0: + resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} - /tsutils/3.21.0_typescript@4.3.5: + /tsutils/3.21.0_typescript@4.6.4: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.3.5 - dev: true - - /type-check/0.3.2: - resolution: {integrity: sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=} - engines: {node: '>= 0.8.0'} - dependencies: - prelude-ls: 1.1.2 + typescript: 4.6.4 dev: true /type-check/0.4.0: @@ -4103,31 +2128,24 @@ packages: prelude-ls: 1.2.1 dev: true - /type-detect/4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} - dev: true - /type-fest/0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} dev: true - /type-fest/0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} + /typescript/4.6.4: + resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} + engines: {node: '>=4.2.0'} + hasBin: true dev: true - /typedarray-to-buffer/3.1.5: - resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} + /unbox-primitive/1.0.2: + resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: - is-typedarray: 1.0.0 - dev: true - - /typescript/4.3.5: - resolution: {integrity: sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==} - engines: {node: '>=4.2.0'} - hasBin: true + call-bind: 1.0.2 + has-bigints: 1.0.2 + has-symbols: 1.0.3 + which-boxed-primitive: 1.0.2 dev: true /universalify/0.1.2: @@ -4135,23 +2153,32 @@ packages: engines: {node: '>= 4.0.0'} dev: true + /universalify/2.0.0: + resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} + engines: {node: '>= 10.0.0'} + dev: true + + /upath2/3.1.13: + resolution: {integrity: sha512-M88uBoqgzrkXvXrF/+oSIPsTmL21uRwGhPVJKODrl+3lXkQ5NPKrTYuSBZVa+lgPGFoI6qYyHlSKACFHO0AoNw==} + dependencies: + '@types/node': 17.0.35 + path-is-network-drive: 1.0.15 + path-strip-sep: 1.0.12 + tslib: 2.4.0 + dev: true + /uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.1.1 dev: true - /v8-compile-cache/2.3.0: - resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} + /v8-compile-cache-lib/3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} dev: true - /v8-to-istanbul/8.0.0: - resolution: {integrity: sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg==} - engines: {node: '>=10.12.0'} - dependencies: - '@types/istanbul-lib-coverage': 2.0.3 - convert-source-map: 1.8.0 - source-map: 0.7.3 + /v8-compile-cache/2.3.0: + resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} dev: true /validate-npm-package-license/3.0.4: @@ -4161,61 +2188,23 @@ packages: spdx-expression-parse: 3.0.1 dev: true - /validator/8.2.0: - resolution: {integrity: sha512-Yw5wW34fSv5spzTXNkokD6S6/Oq92d8q/t14TqsS3fAiA1RYnxSFSIZ+CY3n6PGGRCq5HhJTSepQvFUS2QUDxA==} + /validator/13.7.0: + resolution: {integrity: sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==} engines: {node: '>= 0.10'} dev: true - /w3c-hr-time/1.0.2: - resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==} - dependencies: - browser-process-hrtime: 1.0.0 - dev: true - - /w3c-xmlserializer/2.0.0: - resolution: {integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==} - engines: {node: '>=10'} - dependencies: - xml-name-validator: 3.0.0 - dev: true - - /walker/1.0.7: - resolution: {integrity: sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=} - dependencies: - makeerror: 1.0.11 - dev: true - /web-ext-types/3.2.1: resolution: {integrity: sha512-oQZYDU3W8X867h8Jmt3129kRVKklz70db40Y6OzoTTuzOJpF/dB2KULJUf0txVPyUUXuyzV8GmT3nVvRHoG+Ew==} dev: true - /webidl-conversions/5.0.0: - resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==} - engines: {node: '>=8'} - dev: true - - /webidl-conversions/6.1.0: - resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==} - engines: {node: '>=10.4'} - dev: true - - /whatwg-encoding/1.0.5: - resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==} + /which-boxed-primitive/1.0.2: + resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: - iconv-lite: 0.4.24 - dev: true - - /whatwg-mimetype/2.3.0: - resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==} - dev: true - - /whatwg-url/8.7.0: - resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==} - engines: {node: '>=10'} - dependencies: - lodash: 4.17.21 - tr46: 2.1.0 - webidl-conversions: 6.1.0 + is-bigint: 1.0.4 + is-boolean-object: 1.1.2 + is-number-object: 1.0.7 + is-string: 1.0.7 + is-symbol: 1.0.4 dev: true /which/1.3.1: @@ -4238,88 +2227,32 @@ packages: engines: {node: '>=0.10.0'} dev: true - /wrap-ansi/7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.2 - strip-ansi: 6.0.0 - dev: true - /wrappy/1.0.2: resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} dev: true - /write-file-atomic/3.0.3: - resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} - dependencies: - imurmurhash: 0.1.4 - is-typedarray: 1.0.0 - signal-exit: 3.0.3 - typedarray-to-buffer: 3.1.5 - dev: true - - /ws/7.5.3: - resolution: {integrity: sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==} - engines: {node: '>=8.3.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: true - - /xml-name-validator/3.0.0: - resolution: {integrity: sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==} - dev: true - - /xmlchars/2.2.0: - resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} - dev: true - - /y18n/5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - dev: true - /yallist/4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: true - /yargs-parser/20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} - engines: {node: '>=10'} - dev: true - - /yargs/16.2.0: - resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} - engines: {node: '>=10'} - dependencies: - cliui: 7.0.4 - escalade: 3.1.1 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.2 - y18n: 5.0.8 - yargs-parser: 20.2.9 - dev: true - /yn/3.1.1: resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} engines: {node: '>=6'} dev: true - /z-schema/3.18.4: - resolution: {integrity: sha512-DUOKC/IhbkdLKKiV89gw9DUauTV8U/8yJl1sjf6MtDmzevLKOF2duNJ495S3MFVjqZarr+qNGCPbkg4mu4PpLw==} + /yocto-queue/0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true + + /z-schema/5.0.3: + resolution: {integrity: sha512-sGvEcBOTNum68x9jCpCVGPFJ6mWnkD0YxOcddDlJHRx3tKdB2q8pCHExMVZo/AV/6geuVJXG7hljDaWG8+5GDw==} + engines: {node: '>=8.0.0'} hasBin: true dependencies: lodash.get: 4.4.2 lodash.isequal: 4.5.0 - validator: 8.2.0 + validator: 13.7.0 optionalDependencies: commander: 2.20.3 dev: true diff --git a/rollup.config.js b/rollup.config.js index d8278f8..78cd1a6 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,16 +1,9 @@ -import typescript from 'rollup-plugin-typescript2' import commonjs from '@rollup/plugin-commonjs' import nodeResolve from '@rollup/plugin-node-resolve' import replace from '@rollup/plugin-replace' -// import analyze from 'rollup-plugin-analyzer' -// import { writeFileSync } from 'fs' - -function parseMaybe(s) { - return typeof s === 'string' ? JSON.parse(s) : {} -} const config = { - input: './src/index.ts', + input: './es/index.js', output: [ { file: './umd/index.cjs', format: 'umd', name: 'HoloflowsKit' }, { file: './test-extension/kit.js', format: 'umd', name: 'HoloflowsKit' }, @@ -20,19 +13,6 @@ const config = { browser: true, preferBuiltins: false, mainFields: ['module', 'main'], - customResolveOptions: { - moduleDirectories: [process.env.MODULE_DIR || 'node_modules'], - }, - }), - typescript({ - tsconfigOverride: { - compilerOptions: { - target: 'ES2018', - declaration: false, - declarationMap: false, - ...parseMaybe(process.env.TS_OPTS), - }, - }, }), replace({ 'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV || 'production'), @@ -41,10 +21,6 @@ const config = { extensions: ['.js', '.ts', '.tsx'], exclude: ['node_modules/lodash-es/'], }), - // analyze({ - // writeTo: (k) => writeFileSync('./out.log', k), - // filter: (x) => !x.id.includes('lodash') && !x.id.includes('src/'), - // }), ], } diff --git a/src/DOM/LiveSelector.ts b/src/DOM/LiveSelector.ts index 15c227e..f1c37f7 100644 --- a/src/DOM/LiveSelector.ts +++ b/src/DOM/LiveSelector.ts @@ -1,6 +1,3 @@ -import { LiveSelectorDevtoolsEnhancer } from '../Debuggers/LiveSelectorDevtoolsEnhancer' -import { installCustomObjectFormatter } from 'jsx-jsonml-devtools-renderer' - /** * Define all possible recordable operations. */ @@ -435,15 +432,6 @@ export class LiveSelector { return (arr.filter(nonNull) as T[]) as any } //#endregion - /** - * Call this function to enhance the debug experience in the Chrome DevTools - * - * You need to open "Enable custom formatters" in your DevTools settings. - */ - static enhanceDebugger() { - installCustomObjectFormatter(new LiveSelectorDevtoolsEnhancer()) - this.enhanceDebugger = () => {} - } } // https://github.com/tc39/proposal-relative-indexing-method function at(arr: readonly T[], n: number) { diff --git a/src/DOM/Proxy.ts b/src/DOM/Proxy.ts index a9a6585..208c5a7 100644 --- a/src/DOM/Proxy.ts +++ b/src/DOM/Proxy.ts @@ -1,5 +1,3 @@ -import { DOMProxyDevtoolsEnhancer } from '../Debuggers/DOMProxyDevtoolsEnhancer' -import { installCustomObjectFormatter } from 'jsx-jsonml-devtools-renderer' import { Emitter } from '@servie/events' /** @@ -295,14 +293,9 @@ export function DOMProxy< current = defaultCurrent }, } as DOMProxy - DOMProxyDevtoolsEnhancer.allDOMProxy.set(event as any, changes) Object.defineProperties(event, Object.getOwnPropertyDescriptors(DOMProxyObject)) return event as any } -DOMProxy.enhanceDebugger = function enhanceDebugger() { - installCustomObjectFormatter(new DOMProxyDevtoolsEnhancer()) - DOMProxy.enhanceDebugger = () => {} -} /** * {@inheritdoc (DOMProxy:function)} */ diff --git a/src/DOM/Watcher.ts b/src/DOM/Watcher.ts index 8b4862e..050e536 100644 --- a/src/DOM/Watcher.ts +++ b/src/DOM/Watcher.ts @@ -11,26 +11,25 @@ */ import { DOMProxy, DOMProxyOptions } from './Proxy' import { Emitter, EventListener } from '@servie/events' -import { LiveSelector } from './LiveSelector' +import type { LiveSelector } from './LiveSelector' import { Deadline, requestIdleCallback } from '../util/requestIdleCallback' import { isNil, uniqWith, intersectionWith, differenceWith } from 'lodash-es' import { timeout } from '../util/timeout' -import { WatcherDevtoolsEnhancer } from '../Debuggers/WatcherDevtoolsEnhancer' -import { installCustomObjectFormatter } from 'jsx-jsonml-devtools-renderer' /** * Use LiveSelector to watch dom change */ export abstract class Watcher - extends Emitter> - implements PromiseLike> { + implements PromiseLike> +{ + private eventEmitter: Emitter> = new Emitter() + private removeListenerWeakMap = new Map>() /** * The liveSelector that this object holds. */ protected readonly liveSelector: LiveSelector constructor(liveSelector: LiveSelector) { - super() this.liveSelector = liveSelector.clone() } //#region How to start and stop the watcher @@ -168,7 +167,7 @@ export abstract class Watcher>((resolve, reject) => { done = (state, val) => { this.stopWatch() - this.off('onIteration', f) + this.removeListener('onIteration', f) if (state) resolve(val) else reject(val) } @@ -180,7 +179,7 @@ export abstract class Watcher Boolean(item?.length) - if (has(this.$.onIteration) && changedNodes.length + goneKeys.length + newKeys.length > 0) { + if (this.eventEmitter.$.onIteration.size && changedNodes.length + goneKeys.length + newKeys.length > 0) { // Make a copy to prevent modifications const newMap = new Map(newKeys.map((key) => [key, findFromNew(key)!])) const removedMap = new Map(goneKeys.map((key) => [key, findFromLast(key)!])) const currentMap = new Map(thisKeyList.map((key) => [key, findFromNew(key)!])) - this.emit('onIteration', { + this.eventEmitter.emit('onIteration', { new: newMap, removed: removedMap, current: currentMap, }) } - if (has(this.$.onChange)) + if (this.eventEmitter.$.onChange.size) for (const [oldNode, newNode, oldKey, newKey] of changedNodes) { - this.emit('onChange', { oldValue: oldNode, newValue: newNode, oldKey, newKey }) + this.eventEmitter.emit('onChange', { oldValue: oldNode, newValue: newNode, oldKey, newKey }) } - if (has(this.$.onRemove)) + if (this.eventEmitter.$.onRemove.size) for (const key of goneKeys) { - this.emit('onRemove', { key, value: findFromLast(key)! }) + this.eventEmitter.emit('onRemove', { key, value: findFromLast(key)! }) } - if (has(this.$.onAdd)) + if (this.eventEmitter.$.onAdd.size) for (const key of newKeys) { - this.emit('onAdd', { key, value: findFromNew(key)! }) + this.eventEmitter.emit('onAdd', { key, value: findFromNew(key)! }) } // For firstDOMProxy const first = currentIteration[0] @@ -394,7 +392,7 @@ export abstract class Watcher>(type: K, callback: EventListener, K>): this { - this.on(type, callback) + if (!this.removeListenerWeakMap.has(type)) this.removeListenerWeakMap.set(type, new WeakMap()) + this.removeListenerWeakMap.get(type)!.set(callback, this.eventEmitter.on(type, callback)) return this } removeListener>(type: K, callback: EventListener, K>): this { - this.off(type, callback) + this.removeListenerWeakMap.get(type)?.get(callback)?.() return this } //#endregion @@ -489,7 +488,7 @@ export abstract class Watcher : never + return this._firstDOMProxy as unknown as T extends Node ? DOMProxy : never } //#endregion //#region Watcher settings @@ -635,15 +634,6 @@ Or to ignore this message, call \`.dismissSingleModeWarning()\` on the watcher.\ }, }) //#endregion - /** - * Call this function to enhance the debug experience in the Chrome DevTools - * - * You need to open "Enable custom formatters" in your DevTools settings. - */ - static enhanceDebugger() { - installCustomObjectFormatter(new WatcherDevtoolsEnhancer()) - this.enhanceDebugger = () => {} - } } export interface WatcherEvents { @@ -738,11 +728,12 @@ function applyUseForeachCallback(callback: useForeachReturns) { (type: 'target change'): TargetChangedCallback (type: 'warn mutation'): (x: ReturnType) => void } - return ((type: string) => (...args: any[]) => { - if (type === 'remove') remove && remove(...args) - else if (type === 'target change') change && change(...args) - else if (type === 'warn mutation') mutation && args[0]() - }) as applyUseForeach + return ((type: string) => + (...args: any[]) => { + if (type === 'remove') remove && remove(...args) + else if (type === 'target change') change && change(...args) + else if (type === 'warn mutation') mutation && args[0]() + }) as applyUseForeach } //#endregion //#region Typescript generic helper diff --git a/src/DOM/Watchers/EventWatcher.ts b/src/DOM/Watchers/EventWatcher.ts index d5c985e..a053a08 100644 --- a/src/DOM/Watchers/EventWatcher.ts +++ b/src/DOM/Watchers/EventWatcher.ts @@ -1,5 +1,5 @@ import { Watcher } from '../Watcher' -import { LiveSelector } from '../LiveSelector' +import type { LiveSelector } from '../LiveSelector' /** * A Watcher based on event handlers. diff --git a/src/DOM/Watchers/IntervalWatcher.ts b/src/DOM/Watchers/IntervalWatcher.ts index b19ea7c..8b8fb9f 100644 --- a/src/DOM/Watchers/IntervalWatcher.ts +++ b/src/DOM/Watchers/IntervalWatcher.ts @@ -19,7 +19,7 @@ export class IntervalWatcher< > extends Watcher { private timer: NodeJS.Timer | undefined /** Start to watch the LiveSelector at a interval(ms). */ - startWatch(interval: number) { + override startWatch(interval: number) { super.startWatch() this.timer = setInterval(this.scheduleWatcherCheck, interval) return this @@ -27,7 +27,7 @@ export class IntervalWatcher< /** * {@inheritdoc Watcher.stopWatch} */ - stopWatch() { + override stopWatch() { super.stopWatch() if (this.timer) clearInterval(this.timer) } diff --git a/src/DOM/Watchers/MutationObserverWatcher.ts b/src/DOM/Watchers/MutationObserverWatcher.ts index 8606c82..190be95 100644 --- a/src/DOM/Watchers/MutationObserverWatcher.ts +++ b/src/DOM/Watchers/MutationObserverWatcher.ts @@ -1,5 +1,5 @@ import { Watcher } from '../Watcher' -import { LiveSelector } from '../LiveSelector' +import type { LiveSelector } from '../LiveSelector' /** * A watcher based on MutationObserver * @@ -20,7 +20,7 @@ export class MutationObserverWatcher< > extends Watcher { constructor( /** LiveSelector that this object holds */ - protected liveSelector: LiveSelector, + protected override liveSelector: LiveSelector, /** * If you know the element is always inside of a node, set this option. * This may improve performance. @@ -50,7 +50,7 @@ export class MutationObserverWatcher< * * https://mdn.io/MutationObserverInit */ - startWatch(options: MutationObserverInit) { + override startWatch(options: MutationObserverInit) { super.startWatch() this.isWatching = true const watch = (root?: Node) => { @@ -62,13 +62,13 @@ export class MutationObserverWatcher< } else watch(this.consistentWatchRoot) return this } - protected defaultStarterForThen() { + protected override defaultStarterForThen() { if (!this.isWatching) this.startWatch({ subtree: true, childList: true, characterData: true }) } /** * {@inheritdoc Watcher.stopWatch} */ - stopWatch() { + override stopWatch() { super.stopWatch() this.observer.disconnect() } diff --git a/src/Debuggers/DOMProxyDevtoolsEnhancer.tsx b/src/Debuggers/DOMProxyDevtoolsEnhancer.tsx deleted file mode 100644 index 561c83c..0000000 --- a/src/Debuggers/DOMProxyDevtoolsEnhancer.tsx +++ /dev/null @@ -1,110 +0,0 @@ -import * as React from 'jsx-jsonml-devtools-renderer' -import { DOMProxy, LiveSelector } from '..' -type State = { refreshed: boolean } -const x = () => ({ refreshed: false } as State) -export class DOMProxyDevtoolsEnhancer implements React.CustomObjectFormatter { - static allDOMProxy = new WeakMap, any[]>() - isDOMProxy(obj: unknown): obj is DOMProxy { - return DOMProxyDevtoolsEnhancer.allDOMProxy.has(obj as any) - } - hasBody(obj: unknown) { - if (this.isDOMProxy(obj) && obj.destroyed === false) { - if (obj.destroyed) return false - const [state] = React.useState(obj, x) - if (state.refreshed) return false - return true - } - return false - } - showObject(name: JSX.Element, obj: any, obj2?: any, obj3?: any) { - return ( - - {name} - {obj} - {obj2 !== undefined ? {obj2} : null} - {obj3 !== undefined ? {obj3} : null} - - ) - } - decorateShadow(obj: ShadowRoot) { - return {`#shadow-root (${obj.mode})`} - } - body(obj: DOMProxy, clearState: boolean) { - const [state, setState, render] = React.useState(obj, x) - if (clearState) setState({ refreshed: false }) - - const before = obj.has('before') ? this.showObject('::before', obj.before) : null - const beforeShadow = obj.has('beforeShadow') - ? this.showObject('::before', obj.beforeShadow, '', this.decorateShadow(obj.beforeShadow)) - : null - const after = obj.has('after') ? this.showObject('::after', obj.after) : null - const afterShadow = obj.has('afterShadow') - ? this.showObject('::after', obj.afterShadow, '', this.decorateShadow(obj.afterShadow)) - : null - return ( -
- - - - - - - - {this.showObject('current', obj.current, '->', obj.realCurrent)} - {before} - {beforeShadow} - {after} - {afterShadow} -
ElementReal Current
-
- - Changes on the current Proxy - - -
{ - setState({ refreshed: true }) - render() - }}> - Refresh -
- - ) - } - header(obj: unknown) { - if (!this.isDOMProxy(obj)) return null - const [state] = React.useState(obj, x) - return ( -
- DOMProxy{obj.destroyed ? (destroyed) : null} - {state.refreshed ? this.body(obj, true) : null} -
- ) - } - displaySelectorChain(obj: LiveSelector) { - // @ts-ignore - const priv = LiveSelectorDevtoolsEnhancer.getPrivateItems(obj) - return ( - - {priv.selectorChain.map((chain: any) => ( - - - - - - ))} -
|{chain.type} - {Array.isArray(chain.param) ? ( - chain.param.map((paramI: any, index: any, params: any) => ( - - - {index === params.length - 1 ? '' : , } - - )) - ) : ( - - )} -
- ) - } -} diff --git a/src/Debuggers/LiveSelectorDevtoolsEnhancer.tsx b/src/Debuggers/LiveSelectorDevtoolsEnhancer.tsx deleted file mode 100644 index c612554..0000000 --- a/src/Debuggers/LiveSelectorDevtoolsEnhancer.tsx +++ /dev/null @@ -1,106 +0,0 @@ -import * as React from 'jsx-jsonml-devtools-renderer' -import { LiveSelector } from '../DOM/LiveSelector' -export class LiveSelectorDevtoolsEnhancer implements React.CustomObjectFormatter { - hasBody(obj: unknown) { - if (obj instanceof LiveSelector) return true - return false - } - body(obj: LiveSelector) { - const priv = LiveSelectorDevtoolsEnhancer.getPrivateItems(obj) - return ( -
- {this.displayInitialElements(obj)} - {this.displaySelectorChain(obj)} -
- Actions: -
console.log(priv.stack)}>👀 See who created this LiveSelector
-
console.log(obj.evaluate())}>🧮 Evaluate this LiveSelector
-
- ) - } - header(obj: unknown) { - if (!(obj instanceof LiveSelector)) return null - return ( -
- LiveSelector{' '} - - {LiveSelectorDevtoolsEnhancer.getPrivateItems(obj).single ? ' (SingleMode)' : null} - -
- ) - } - displayInitialElements(obj: LiveSelector) { - const maxDisplayItems = 7 - const priv = LiveSelectorDevtoolsEnhancer.getPrivateItems(obj) - const jsx: JSX.Element[] = [] - for (const i in priv.initialElements) { - const index = parseInt(i) - const _ = priv.initialElements[i] - if (index === maxDisplayItems && priv.initialElements.length > maxDisplayItems) { - jsx.push(and {priv.initialElements.length - maxDisplayItems} more) - break - } - jsx.push( - - - {index === priv.initialElements.length - 1 ? '' : , } - , - ) - } - return ( - - [ - {jsx} - ] - - (initial elements - {priv.initialElements.length > maxDisplayItems ? : ''}) - - - ) - } - displaySelectorChain(obj: LiveSelector) { - const priv = LiveSelectorDevtoolsEnhancer.getPrivateItems(obj) - return ( - - {priv.selectorChain.map(chain => ( - - - - - - ))} -
|{chain.type} - {Array.isArray(chain.param) ? ( - chain.param.map((paramI, index, params) => ( - - - {index === params.length - 1 ? '' : , } - - )) - ) : ( - - )} -
- ) - } - static getPrivateItems( - obj: LiveSelector, - ): { - single: boolean - initialElements: unknown[] - stack: string - selectorChain: { type: string; param: unknown }[] - } { - return { - // @ts-ignore - single: obj.isSingleMode, - // @ts-ignore - initialElements: obj.initialElements, - // @ts-ignore - stack: obj.stack ?? '', - // @ts-ignore - selectorChain: obj.selectorChain, - } - } -} diff --git a/src/Debuggers/WatcherDevtoolsEnhancer.tsx b/src/Debuggers/WatcherDevtoolsEnhancer.tsx deleted file mode 100644 index 2dc0389..0000000 --- a/src/Debuggers/WatcherDevtoolsEnhancer.tsx +++ /dev/null @@ -1,202 +0,0 @@ -import * as React from 'jsx-jsonml-devtools-renderer' -import { Watcher } from '../DOM/Watcher' -import { LiveSelectorDevtoolsEnhancer } from './LiveSelectorDevtoolsEnhancer' - -type AnyWatcher = Watcher -type Everything = { - hooks: unknown - DOMProxy: unknown - value: unknown -} -interface State { - refreshed: boolean - everything: Map - new: Map - removed: Map -} -const WatcherMapNotReady = Symbol('Not available now (WatcherMapNotReady)') -const initState = (obj: AnyWatcher): State => { - const everythingMap = new Map() - const newMap = new Map([[WatcherMapNotReady, 0]]) - const removedMap = new Map([[WatcherMapNotReady, 0]]) - - const priv = WatcherDevtoolsEnhancer.prototype.getPrivateItems(obj) - const find = priv.findNodeFromListByKey(priv.lastNodeList, priv.lastKeyList) - priv.lastKeyList.forEach(key => { - everythingMap.set(key, { - value: find(key), - DOMProxy: priv.lastDOMProxyMap.get(key), - hooks: priv.lastCallbackMap.get(key), - }) - }) - obj.on('onIteration', iter => { - const priv = WatcherDevtoolsEnhancer.prototype.getPrivateItems(obj) - everythingMap.clear() - newMap.clear() - removedMap.clear() - Array.from(iter.current.entries()).forEach(([key, value]) => { - everythingMap.set(key, { - value, - DOMProxy: priv.lastDOMProxyMap.get(key), - hooks: priv.lastCallbackMap.get(key), - }) - }) - iter.new.forEach((v, k) => newMap.set(v, k)) - iter.removed.forEach((v, k) => removedMap.set(v, k)) - }) - return { - refreshed: false, - everything: everythingMap, - new: newMap, - removed: removedMap, - } -} -export class WatcherDevtoolsEnhancer implements React.CustomObjectFormatter { - header(obj: unknown) { - if (obj instanceof Watcher) { - const [state] = React.useState(obj, initState) - const watcher = this.getPrivateItems(obj) - const ls = LiveSelectorDevtoolsEnhancer.getPrivateItems(watcher.liveSelector) - return ( - - {obj.constructor.name} - {ls.single ? ' (SingleMode)' : null} - {watcher.isWatching ? ' Running' : ' Not running'} - {state.refreshed ? this.body(obj) : null} - - ) - } - return null - } - hasBody(obj: unknown): obj is AnyWatcher { - if (obj instanceof Watcher) { - const [state, setState] = React.useState(obj, initState) - if (state.refreshed === true) { - setState({ refreshed: false }) - return false - } - return true - } - return false - } - body(obj: AnyWatcher) { - const [state, setState, forceRender] = React.useState(obj, initState) - const priv = this.getPrivateItems(obj) - const test = Symbol('used to test equality') - const valueTag = 'Values' - const removeTag = 'Removed in the last check' - const newTag = 'New in the last check' - const refresh = () => { - setState({ refreshed: true }) - forceRender() - } - function isNil(x: any): boolean { - if (x === null || x === undefined) return false - return true - } - return ( -
- Last values: - - {this.dataDisplayRow(valueTag, state.everything)} - {state.removed.has(WatcherMapNotReady) ? null : this.dataDisplayRow(removeTag, state.removed)} - {state.new.has(WatcherMapNotReady) ? null : this.dataDisplayRow(newTag, state.new)} -
-
- Other: - - {this.optionsRow('LiveSelector', priv.liveSelector, () => false)} - {this.optionsRow( - 'ConsistentWatchRoot', - priv.consistentWatchRoot, - x => x === document.body || isNil(x), - )} - {this.optionsRow('DomProxyOptions', priv.domProxyOption, x => Object.keys(x).length === 0)} - {this.optionsRow('KeyComparer', priv.keyComparer, x => x(test, test))} - {this.optionsRow('ValueComparer', priv.valueComparer, x => x(test, test))} - {this.optionsRow('MapNodeToKey', priv.mapNodeToKey, x => x(test, 0, []) === test)} - {this.optionsRow('FirstDOMProxy', obj.firstDOMProxy, x => true)} - {this.optionsRow('stopWatchOnDisconnected', priv.stopWatchOnDisconnected, isNil)} -
-
-
Actions:
-
console.log(priv.stack)}>👀 See who created this Watcher
-
🔃 Refresh the data
-
{ - // @ts-ignore - obj.watcherChecker() - setTimeout(refresh, 50) - }}> - 🔨 Manually run the watcher's checker -
-
- ) - } - optionsRow(name: string, object: T, isEmpty: (obj: T) => boolean) { - try { - if (isEmpty(object)) return null - } catch {} - return ( - - {name} - - - - - ) - } - dataDisplayRow(name: string, object: T) { - return ( - - - {name} - - - - - - ) - } - getPrivateItems(obj: AnyWatcher) { - return { - // @ts-ignore - liveSelector: obj.liveSelector, - // @ts-ignore - isWatching: obj.isWatching, - // @ts-ignore - consistentWatchRoot: obj.consistentWatchRoot, - // @ts-ignore - domProxyOption: obj.domProxyOption, - // @ts-ignore - keyComparer: obj.keyComparer, - // @ts-ignore - valueComparer: obj.valueComparer, - // @ts-ignore - mapNodeToKey: obj.mapNodeToKey, - // @ts-ignore - lastCallbackMap: obj.lastCallbackMap, - // @ts-ignore - lastDOMProxyMap: obj.lastDOMProxyMap, - // @ts-ignore - lastKeyList: obj.lastKeyList, - // @ts-ignore - lastNodeList: obj.lastNodeList, - // @ts-ignore - liveSelector: obj.liveSelector, - - // @ts-ignore - singleModeHasLastValue: obj.singleModeHasLastValue, - // @ts-ignore - singleModeLastValue: obj.singleModeLastValue, - // @ts-ignore - singleModeCallback: obj.singleModeCallback, - // @ts-ignore - stack: obj.stack, - // @ts-ignore - findNodeFromListByKey: obj.findNodeFromListByKey, - // @ts-ignore - stopWatchOnDisconnected: obj.stopWatchOnDisconnected, - } - } -} diff --git a/src/Extension/MessageChannel.ts b/src/Extension/MessageChannel.ts index 8090259..12c04e8 100644 --- a/src/Extension/MessageChannel.ts +++ b/src/Extension/MessageChannel.ts @@ -293,16 +293,17 @@ function UnboundedRegistry( }) } let binder: TargetBoundEventRegistry + const removeListenerWeakMap = new WeakMap() function on(cb: (data: T) => void, options?: TargetBoundEventListenerOptions) { - eventListener.on(eventName, cb) + const off = eventListener.on(eventName, cb) + removeListenerWeakMap.set(cb, off) - const off = () => eventListener.off(eventName, cb) if (options?.once) eventListener.on(eventName, off) - if (options?.signal) options.signal.addEventListener('abort', off) + if (options?.signal) options.signal.addEventListener('abort', off, { once: true }) return off } function off(cb: (data: T) => void) { - eventListener.off(eventName, cb) + removeListenerWeakMap.get(cb)?.() } function pause() { pausing = true diff --git a/src/util/__tests__/ValueRef.ts b/src/util/__tests__/ValueRef.ts deleted file mode 100644 index 394d820..0000000 --- a/src/util/__tests__/ValueRef.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { ValueRef } from '../ValueRef' - -const symb = Symbol() -const symb2 = Symbol() -test('keep the same value', () => { - const ref = new ValueRef(symb) - expect(ref.value).toBe(symb) -}) -test('call the listener', done => { - const ref = new ValueRef(symb) - ref.addListener((newVal, oldVal) => { - expect(oldVal).toBe(symb) - expect(newVal).toBe(symb2) - done() - }) - ref.value = symb2 -}) -test("do nothing when value isn't changed", done => { - const ref = new ValueRef(symb) - ref.addListener(() => { - done.fail() - }) - ref.value = symb - done() -}) -test('isEqual should work', done => { - const ref = new ValueRef({ a: 1 }, (a, b) => JSON.stringify(a) === JSON.stringify(b)) - ref.addListener(() => done.fail()) - ref.value = { a: 1 } - done() -}) -test('remove the listener', done => { - const ref = new ValueRef(symb) - const f = () => done.fail() - ref.addListener(f) - ref.removeListener(f) - ref.value = symb2 - done() -}) -test('remove all the listener', done => { - const ref = new ValueRef(symb) - ref.addListener(() => done.fail()) - ref.removeAllListener() - ref.value = Math.random() - done() -}) diff --git a/src/util/requestIdleCallback.ts b/src/util/requestIdleCallback.ts index d373d86..ece45c7 100644 --- a/src/util/requestIdleCallback.ts +++ b/src/util/requestIdleCallback.ts @@ -1,12 +1,10 @@ /** - * @internal */ export interface Deadline { didTimeout: boolean timeRemaining(): number } /** - * @internal * @param fn function to execute * @param timeout timeout */ diff --git a/test-extension/package.json b/test-extension/package.json index 3f372cd..d6b96e8 100644 --- a/test-extension/package.json +++ b/test-extension/package.json @@ -9,6 +9,6 @@ "author": "", "license": "ISC", "dependencies": { - "webextension-polyfill": "^0.8.0" + "webextension-polyfill": "^0.9.0" } } diff --git a/test-extension/pnpm-lock.yaml b/test-extension/pnpm-lock.yaml index a125878..c08ef51 100644 --- a/test-extension/pnpm-lock.yaml +++ b/test-extension/pnpm-lock.yaml @@ -1,13 +1,13 @@ -lockfileVersion: 5.3 +lockfileVersion: 5.4 specifiers: - webextension-polyfill: ^0.8.0 + webextension-polyfill: ^0.9.0 dependencies: - webextension-polyfill: 0.8.0 + webextension-polyfill: 0.9.0 packages: - /webextension-polyfill/0.8.0: - resolution: {integrity: sha512-a19+DzlT6Kp9/UI+mF9XQopeZ+n2ussjhxHJ4/pmIGge9ijCDz7Gn93mNnjpZAk95T4Tae8iHZ6sSf869txqiQ==} + /webextension-polyfill/0.9.0: + resolution: {integrity: sha512-LTtHb0yR49xa9irkstDxba4GATDAcDw3ncnFH9RImoFwDlW47U95ME5sn5IiQX2ghfaECaf6xyXM8yvClIBkkw==} dev: false diff --git a/tsconfig.json b/tsconfig.json index 86aaa3a..201ce6e 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,70 +1,61 @@ { "compilerOptions": { - /* Basic Options */ - // "incremental": true /* Enable incremental compilation */, - "target": "ES2018" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */, - "module": "ESNext" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */, - "lib": ["ES2018", "DOM", "DOM.Iterable"] /* Specify library files to be included in the compilation. */, - // "allowJs": true, /* Allow javascript files to be compiled. */ - // "checkJs": true, /* Report errors in .js files. */ - "jsx": "react" /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */, - "declaration": true /* Generates corresponding '.d.ts' file. */, - "declarationMap": true /* Generates a sourcemap for each corresponding '.d.ts' file. */, - "sourceMap": true /* Generates corresponding '.map' file. */, - // "outFile": "./", /* Concatenate and emit output to single file. */ "outDir": "./es/" /* Redirect output structure to the directory. */, "rootDir": "./src/" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */, - // "composite": true, /* Enable project compilation */ - // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ - // "removeComments": true, /* Do not emit comments to output. */ - // "noEmit": true, /* Do not emit outputs. */ - // "importHelpers": true, /* Import emit helpers from 'tslib'. */ - // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ - // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ - /* Strict Type-Checking Options */ - "strict": true /* Enable all strict type-checking options. */, - "noImplicitAny": true /* Raise error on expressions and declarations with an implied 'any' type. */, - "strictNullChecks": true /* Enable strict null checks. */, - "strictFunctionTypes": true /* Enable strict checking of function types. */, - "strictBindCallApply": true /* Enable strict 'bind', 'call', and 'apply' methods on functions. */, - "strictPropertyInitialization": true /* Enable strict checking of property initialization in classes. */, - "noImplicitThis": true /* Raise error on 'this' expressions with an implied 'any' type. */, - "alwaysStrict": true /* Parse in strict mode and emit "use strict" for each source file. */, + // Classification follows https://www.typescriptlang.org/tsconfig - /* Additional Checks */ - // "noUnusedLocals": true, /* Report errors on unused locals. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - "noImplicitReturns": true /* Report error when not all code paths in function return a value. */, - "noFallthroughCasesInSwitch": true /* Report errors for fallthrough cases in switch statement. */, + // Type Checking + "strict": true, + // exactOptionalPropertyTypes: false, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitOverride": true, + "noImplicitReturns": true, + "noImplicitThis": true, + // noPropertyAccessFromIndexSignature: false, + // noUncheckedIndexedAccess: false, + // noUnusedLocals: false, + // noUnusedParameters: false, + "useUnknownInCatchVariables": true, - /* Module Resolution Options */ - "moduleResolution": "node" /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */, - // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ - // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ - // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ - "typeRoots": [ - "node_modules/@types", - "node_modules/web-ext-types" - ] /* List of folders to include type definitions from. */, - // "types": [], /* Type declaration files to be included in compilation. */ - // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ - "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */, - // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ - // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + // Modules + "module": "ESNext", + "moduleResolution": "node", + "resolveJsonModule": true, + // Exclude everything by default. Include them in each project on-demand + "types": ["web-ext-types"], - /* Source Map Options */ - // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ - // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ - // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ - // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ + // Emit + "declaration": true, + "declarationMap": true, + "importsNotUsedAsValues": "error", + "noEmitOnError": true, + // "preserveValueImports": true, + "sourceMap": true, + "stripInternal": true, // skip type emit for @internal types - /* Experimental Options */ - // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ - // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ + // JavaScript Support + "allowJs": true, + "checkJs": false, - /* Advanced Options */ - "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */, - "pretty": true - } + // Interop Constraints + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "isolatedModules": true, + + // Language and Environment + "jsx": "react-jsx", + "lib": ["ES2018", "DOM", "DOM.Iterable"], + "target": "ES2018", + "useDefineForClassFields": true, + + // Projects + "composite": true, + "incremental": true, + + // Completeness + "skipLibCheck": true // skip all type checks for .d.ts files + }, + "include": ["./src/"] }