From 025e0ea908b412824782e57a59d99a7b59a4e531 Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Wed, 5 May 2021 13:04:43 -0400 Subject: [PATCH 01/12] docs: update typedoc and plugins and regenerate docs --- README.md | 478 ++++++++++++++++++++++++---------------------- package-lock.json | 139 ++++++++++---- package.json | 6 +- src/types.ts | 13 +- tasks/docs.js | 130 ++++++++----- 5 files changed, 441 insertions(+), 325 deletions(-) diff --git a/README.md b/README.md index 29978cf8..5db7783f 100644 --- a/README.md +++ b/README.md @@ -133,42 +133,38 @@ setTimeout(() => panzoom.pan(100, 100)) ## Documentation -▸ **Panzoom**(`elem`: HTMLElement \| SVGElement, `options?`: Omit<[PanzoomOptions](#PanzoomOptions), \"force\"\>): [PanzoomObject](#PanzoomObject) +### Panzoom -_Defined in [panzoom.ts:58](https://github.com/timmywil/panzoom/blob/14e02b7/src/panzoom.ts#L58)_ +▸ **Panzoom**(`elem`: HTMLElement \| SVGElement, `options?`: _Omit_<_[PanzoomOptions](#PanzoomOptions)_, `"force"`\>): _[PanzoomObject](#PanzoomObject)_ #### Parameters: -| Name | Type | -| ---------- | --------------------------------------------------- | -| `elem` | HTMLElement \| SVGElement | -| `options?` | Omit<[PanzoomOptions](#PanzoomOptions), \"force\"\> | +| Name | Type | +| :--------- | :------------------------------------------------------ | +| `elem` | HTMLElement \| SVGElement | +| `options?` | _Omit_<_[PanzoomOptions](#PanzoomOptions)_, `"force"`\> | -**Returns:** [PanzoomObject](#PanzoomObject) +**Returns:** _[PanzoomObject](#PanzoomObject)_ -## `PanzoomOptions` +Defined in: [panzoom.ts:58](https://github.com/timmywil/panzoom/blob/8ce8194/src/panzoom.ts#L58) -Includes `MiscOptions`, `PanOptions`, and `ZoomOptions` +## `PanzoomOptions` ---- +Includes `MiscOptions`, `PanOnlyOptions`, and `ZoomOnlyOptions` -## `MiscOptions` +## MiscOptions ### animate -• `Optional` **animate**: boolean (Default: **false**) - -_Defined in [types.ts:21](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L21)_ +• `Optional` **animate**: _boolean_ (Default: **false**) Whether to animate transitions ---- +Defined in: [types.ts:21](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L21) ### canvas -• `Optional` **canvas**: boolean (Default: **false**) - -_Defined in [types.ts:32](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L32)_ +• `Optional` **canvas**: _boolean_ (Default: **false**) This option treats the Panzoom element's parent as a canvas. Effectively, Panzoom binds the @@ -179,59 +175,49 @@ moves its children. See issue #472. **Note**: setting this option to `true` also changes where the `cursor` style is applied (i.e. the parent). ---- +Defined in: [types.ts:32](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L32) ### duration -• `Optional` **duration**: number (Default: **200**) - -_Defined in [types.ts:34](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L34)_ +• `Optional` **duration**: _number_ (Default: **200**) Duration of the transition (ms) ---- +Defined in: [types.ts:34](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L34) ### easing -• `Optional` **easing**: string (Default: **"ease-in-out"**) - -_Defined in [types.ts:36](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L36)_ +• `Optional` **easing**: _string_ (Default: **"ease-in-out"**) CSS Easing used for transitions ---- +Defined in: [types.ts:36](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L36) ### exclude • `Optional` **exclude**: Element[] (Default: **[]**) -_Defined in [types.ts:43](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L43)_ - Add elements to this array that should be excluded from Panzoom handling. Ancestors of event targets are also checked. e.g. links and buttons that should not propagate the click event. ---- +Defined in: [types.ts:43](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L43) ### excludeClass -• `Optional` **excludeClass**: string (Default: **"panzoom-exclude"**) - -_Defined in [types.ts:50](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L50)_ +• `Optional` **excludeClass**: _string_ (Default: **"panzoom-exclude"**) Add this class to any element within the Panzoom element that you want to exclude from Panzoom handling. That element's children will also be excluded. e.g. links and buttons that should not propagate the click event. ---- +Defined in: [types.ts:50](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L50) ### force -• `Optional` **force**: boolean - -_Defined in [types.ts:66](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L66)_ +• `Optional` **force**: _boolean_ `force` should be used sparingly to temporarily override and ignore options such as disablePan, @@ -247,13 +233,14 @@ panzoom.pan(50, 100, { force: true }) panzoom.zoom(1, { force: true }) ``` ---- +Defined in: [types.ts:66](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L66) ### handleStartEvent -• `Optional` **handleStartEvent**: (event: Event) => void (Default: **(e: Event) => void**) - -_Defined in [types.ts:91](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L91)_ +• `Optional` **handleStartEvent**: (`event`: Event) => _void_ (Default: **(e: Event) => { +e.preventDefault() +e.stopPropagation() +}**) On the first pointer event, when panning starts, the default Panzoom behavior is to call @@ -278,23 +265,27 @@ Panzoom(elem, { }) ``` ---- +#### Parameters: -### noBind +| Name | Type | +| :------ | :---- | +| `event` | Event | -• `Optional` **noBind**: boolean +**Returns:** _void_ -_Defined in [types.ts:95](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L95)_ +Defined in: [types.ts:91](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L91) + +### noBind + +• `Optional` **noBind**: _boolean_ Skip binding the default Panzoom event listeners ---- +Defined in: [types.ts:95](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L95) ### origin -• `Optional` **origin**: string - -_Defined in [types.ts:109](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L109)_ +• `Optional` **origin**: _string_ **Change this at your own risk.** The `transform-origin` is the origin from which transforms are applied. @@ -308,23 +299,19 @@ defaults are set to do the more complicated calculations. And again, changing this for SVG in IE doesn't work at all. ---- +Defined in: [types.ts:109](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L109) ### overflow -• `Optional` **overflow**: string (Default: **"hidden"**) - -_Defined in [types.ts:111](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L111)_ +• `Optional` **overflow**: _string_ (Default: **"hidden"**) The overflow CSS value for the parent. Defaults to 'hidden' ---- +Defined in: [types.ts:111](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L111) ### setTransform -• `Optional` **setTransform**: _typeof_ setTransform (Default: **setTransform**) - -_Defined in [types.ts:129](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L129)_ +• `Optional` **setTransform**: (`elem`: HTMLElement \| SVGElement, `__namedParameters`: _CurrentValues_, `_options?`: _PanzoomOptions_) => _void_ Override the transform setter. This is exposed mostly so the user could @@ -342,53 +329,55 @@ const panzoom = Panzoom(elem, { }) ``` ---- +Set the transform using the proper prefix -### silent +#### Parameters: -• `Optional` **silent**: boolean +| Name | Type | +| :------------------ | :--------------------------------------- | +| `elem` | HTMLElement \| SVGElement | +| `__namedParameters` | _CurrentValues_](types.currentvalues.md) | +| `_options?` | [_PanzoomOptions_ | -_Defined in [types.ts:131](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L131)_ +**Returns:** _void_ + +Defined in: [css.ts:82](https://github.com/timmywil/panzoom/blob/8ce8194/src/css.ts#L82) + +### silent + +• `Optional` **silent**: _boolean_ Silence all events ---- +Defined in: [types.ts:131](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L131) ### startScale -• `Optional` **startScale**: number (Default: **1**) - -_Defined in [types.ts:137](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L137)_ +• `Optional` **startScale**: _number_ (Default: **1**) Scale used to set the beginning transform ---- +Defined in: [types.ts:137](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L137) ### startX -• `Optional` **startX**: number (Default: **0**) - -_Defined in [types.ts:133](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L133)_ +• `Optional` **startX**: _number_ (Default: **0**) X Value used to set the beginning transform ---- +Defined in: [types.ts:133](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L133) ### startY -• `Optional` **startY**: number (Default: **0**) - -_Defined in [types.ts:135](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L135)_ +• `Optional` **startY**: _number_ (Default: **0**) Y Value used to set the beginning transform ---- +Defined in: [types.ts:135](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L135) ### touchAction -• `Optional` **touchAction**: string (Default: **"none"**) - -_Defined in [types.ts:147](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L147)_ +• `Optional` **touchAction**: _string_ (Default: **"none"**) This value is used to set touch-action on both the Panzoom element and its parent. @@ -398,17 +387,13 @@ Set this to empty string to re-enable scrolling on mobile, but note that both scrolling and panning cannot work at the same time. ---- - -## `PanOptions` +Defined in: [types.ts:147](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L147) -Includes `MiscOptions` +## PanOptions (includes MiscOptions) ### contain -• `Optional` **contain**: \"inside\" \| \"outside\" - -_Defined in [types.ts:166](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L166)_ +• `Optional` **contain**: `"inside"` \| `"outside"` Contain the panzoom element either inside or outside the parent. @@ -422,89 +407,71 @@ empty space around the element will be shown. **Note**: the containment pan adjustment is not affected by the `disablePan` option. ---- +Defined in: [types.ts:166](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L166) ### cursor -• `Optional` **cursor**: string (Default: **"move"**) - -_Defined in [types.ts:168](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L168)_ +• `Optional` **cursor**: _string_ (Default: **"move"**) The cursor style to set on the panzoom element ---- +Defined in: [types.ts:168](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L168) ### disablePan -• `Optional` **disablePan**: boolean (Default: **false**) - -_Defined in [types.ts:174](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L174)_ +• `Optional` **disablePan**: _boolean_ (Default: **false**) Disable panning functionality. Note: disablePan does not affect focal point zooming or the contain option. The element will still pan accordingly. ---- +Defined in: [types.ts:174](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L174) ### disableXAxis -• `Optional` **disableXAxis**: boolean (Default: **false**) - -_Defined in [types.ts:176](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L176)_ +• `Optional` **disableXAxis**: _boolean_ (Default: **false**) Pan only on the Y axis ---- +Defined in: [types.ts:176](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L176) ### disableYAxis -• `Optional` **disableYAxis**: boolean (Default: **false**) - -_Defined in [types.ts:178](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L178)_ +• `Optional` **disableYAxis**: _boolean_ (Default: **false**) Pan only on the X axis ---- +Defined in: [types.ts:178](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L178) ### panOnlyWhenZoomed -• `Optional` **panOnlyWhenZoomed**: boolean (Default: **false**) - -_Defined in [types.ts:182](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L182)_ +• `Optional` **panOnlyWhenZoomed**: _boolean_ (Default: **false**) Disable panning while the scale is equal to the starting value ---- +Defined in: [types.ts:182](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L182) ### relative -• `Optional` **relative**: boolean (Default: **false**) - -_Defined in [types.ts:180](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L180)_ +• `Optional` **relative**: _boolean_ (Default: **false**) When passing x and y values to .pan(), treat the values as relative to their current values ---- - -## `ZoomOptions` +Defined in: [types.ts:180](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L180) -Includes `MiscOptions` +## ZoomOptions (includes MiscOptions) ### disableZoom -• `Optional` **disableZoom**: boolean (Default: **false**) - -_Defined in [types.ts:187](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L187)_ +• `Optional` **disableZoom**: _boolean_ (Default: **false**) Disable zooming functionality ---- +Defined in: [types.ts:187](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L187) ### focal -• `Optional` **focal**: { x: number ; y: number } - -_Defined in [types.ts:194](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L194)_ +• `Optional` **focal**: _object_ Zoom to the given point on the panzoom element. This point is expected to be relative to @@ -513,125 +480,120 @@ to the parent dimensions. #### Type declaration: -| Name | Type | -| ---- | ------ | -| `x` | number | -| `y` | number | +| Name | Type | +| :--- | :------- | +| `x` | _number_ | +| `y` | _number_ | ---- +Defined in: [types.ts:194](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L194) ### maxScale -• `Optional` **maxScale**: number (Default: **4**) - -_Defined in [types.ts:198](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L198)_ +• `Optional` **maxScale**: _number_ (Default: **4**) The maximum scale when zooming ---- +Defined in: [types.ts:198](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L198) ### minScale -• `Optional` **minScale**: number (Default: **0.125**) - -_Defined in [types.ts:196](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L196)_ +• `Optional` **minScale**: _number_ (Default: **0.125**) The minimum scale when zooming ---- +Defined in: [types.ts:196](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L196) ### step -• `Optional` **step**: number (Default: **0.3**) - -_Defined in [types.ts:200](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L200)_ +• `Optional` **step**: _number_ (Default: **0.3**) The step affects zoom calculation when zooming with a mouse wheel, when pinch zooming, or when using zoomIn/zoomOut ---- +Defined in: [types.ts:200](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L200) -## `PanzoomObject` +## PanzoomObject These methods are available after initializing Panzoom -### bind() - -• **bind**: () => void +### bind -_Defined in [types.ts:221](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L221)_ +• **bind**: () => _void_ Bind the default down, move, and up event listeners to the Panzoom element. This does not normally need to be called. It gets called by default when creating a new Panzoom object, but can be skipped with the `noBind` option. ---- +**Returns:** _void_ -### destroy() +Defined in: [types.ts:221](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L221) -• **destroy**: () => void +### destroy -_Defined in [types.ts:223](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L223)_ +• **destroy**: () => _void_ Remove all event listeners bound to the the Panzoom element ---- +**Returns:** _void_ -### eventNames() +Defined in: [types.ts:223](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L223) -• **eventNames**: { down: string ; move: string ; up: string } +### eventNames -_Defined in [types.ts:229](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L229)_ +• **eventNames**: _object_ This object exposes the event names used by Panzoom, depending on the current browser's support for Pointer or Touch events. -#### Signature with return type: - -| Name | Type | -| ------ | ------ | -| `down` | string | -| `move` | string | -| `up` | string | +#### Type declaration: ---- +| Name | Type | +| :----- | :------- | +| `down` | _string_ | +| `move` | _string_ | +| `up` | _string_ | -### getOptions() +Defined in: [types.ts:229](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L229) -• **getOptions**: () => [PanzoomOptions](#PanzoomOptions) +### getOptions -_Defined in [types.ts:235](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L235)_ +• **getOptions**: () => _PanzoomOptions_ Returns a _copy_ of the current options object ---- +**Returns:** _PanzoomOptions_ -### getPan() +Defined in: [types.ts:235](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L235) -• **getPan**: () => { x: number ; y: number } +### getPan -_Defined in [types.ts:231](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L231)_ +• **getPan**: () => { `x`: _number_ ; `y`: _number_ } Get the current x/y translation ---- +**Returns:** _object_ + +| Name | Type | +| :--- | :------- | +| `x` | _number_ | +| `y` | _number_ | -### getScale() +Defined in: [types.ts:231](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L231) -• **getScale**: () => number +### getScale -_Defined in [types.ts:233](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L233)_ +• **getScale**: () => _number_ Get the current scale ---- +**Returns:** _number_ -### pan() +Defined in: [types.ts:233](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L233) -• **pan**: (x: number \| string, y: number \| string, panOptions?: [PanOptions](#PanOptions)](../modules/_types_.md#panoptions)) => [[CurrentValues](#CurrentValues) +### pan -_Defined in [types.ts:246](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L246)_ +• **pan**: (`x`: _string_ \| _number_, `y`: _string_ \| _number_, `panOptions?`: _PanOptions_](../modules/types.md#panoptions)) => [_[CurrentValues](#CurrentValues)_ Pan the Panzoom element to the given x and y coordinates @@ -642,13 +604,21 @@ panzoom.pan(50, 100) panzoom.pan(10, 10, { relative: true }) ``` ---- +#### Parameters: + +| Name | Type | +| :------------ | :------------------- | +| `x` | _string_ \| _number_ | +| `y` | _string_ \| _number_ | +| `panOptions?` | _PanOptions_ | -### reset() +**Returns:** _[CurrentValues](#CurrentValues)_ -• **reset**: (resetOptions?: [PanzoomOptions](#PanzoomOptions)](../modules/_types_.md#panzoomoptions)) => [[CurrentValues](#CurrentValues) +Defined in: [types.ts:246](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L246) -_Defined in [types.ts:259](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L259)_ +### reset + +• **reset**: (`resetOptions?`: _PanzoomOptions_](../modules/types.md#panzoomoptions)) => [_[CurrentValues](#CurrentValues)_ Reset the pan and zoom to startX, startY, and startScale. Animates by default, ignoring the global option. @@ -661,25 +631,36 @@ panzoom.reset() panzoom.reset({ animate: false }) ``` ---- +#### Parameters: -### resetStyle() +| Name | Type | +| :-------------- | :--------------- | +| `resetOptions?` | _PanzoomOptions_ | -• **resetStyle**: () => void +**Returns:** _[CurrentValues](#CurrentValues)_ -_Defined in [types.ts:269](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L269)_ +Defined in: [types.ts:259](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L259) -Change options for the Panzoom instance +### resetStyle ---- +• **resetStyle**: () => _void_ -### setOptions() +Reset the styles set on the Panzoom element +and its parent (such as overflow, cursor, etc.) -• **setOptions**: (options?: [PanzoomOptions](#PanzoomOptions)) => void +```js +panzoom.resetStyle() +``` + +**Returns:** _void_ + +Defined in: [types.ts:268](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L268) -_Defined in [types.ts:282](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L282)_ +### setOptions -Change an option on a Panzoom instance. +• **setOptions**: (`options?`: _PanzoomOptions_) => _void_ + +Change any number of options on a Panzoom instance. Setting some options will have side-effects. For instance, changing the cursor option will also set the cursor style. @@ -690,23 +671,36 @@ const panzoom = Panzoom(elem, { cursor: 'move' }) panzoom.setOptions({ cursor: 'default' }) ``` ---- +#### Parameters: + +| Name | Type | +| :--------- | :--------------- | +| `options?` | _PanzoomOptions_ | -### setStyle() +**Returns:** _void_ -• **setStyle**: (name: string, value: string) => void +Defined in: [types.ts:281](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L281) -_Defined in [types.ts:284](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L284)_ +### setStyle + +• **setStyle**: (`name`: _string_, `value`: _string_) => _void_ A convenience method for setting prefixed styles on the Panzoom element ---- +#### Parameters: + +| Name | Type | +| :------ | :------- | +| `name` | _string_ | +| `value` | _string_ | -### zoom() +**Returns:** _void_ -• **zoom**: (scale: number, zoomOptions?: [ZoomOptions](#ZoomOptions)](../modules/_types_.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +Defined in: [types.ts:283](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L283) -_Defined in [types.ts:293](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L293)_ +### zoom + +• **zoom**: (`scale`: _number_, `zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ Zoom the Panzoom element to the given scale @@ -715,13 +709,20 @@ panzoom.zoom(2.2) panzoom.zoom(2.2, { animate: true }) ``` ---- +#### Parameters: + +| Name | Type | +| :------------- | :------------ | +| `scale` | _number_ | +| `zoomOptions?` | _ZoomOptions_ | -### zoomIn() +**Returns:** _[CurrentValues](#CurrentValues)_ -• **zoomIn**: (zoomOptions?: [ZoomOptions](#ZoomOptions)](../modules/_types_.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +Defined in: [types.ts:292](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L292) -_Defined in [types.ts:304](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L304)_ +### zoomIn + +• **zoomIn**: (`zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ Zoom in using the predetermined increment set in options. Animates by default, ignoring the global option. @@ -732,13 +733,19 @@ panzoom.zoomIn() panzoom.zoomIn({ animate: false }) ``` ---- +#### Parameters: + +| Name | Type | +| :------------- | :------------ | +| `zoomOptions?` | _ZoomOptions_ | -### zoomOut() +**Returns:** _[CurrentValues](#CurrentValues)_ -• **zoomOut**: (zoomOptions?: [ZoomOptions](#ZoomOptions)](../modules/_types_.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +Defined in: [types.ts:303](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L303) -_Defined in [types.ts:315](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L315)_ +### zoomOut + +• **zoomOut**: (`zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ Zoom out using the predetermined increment set in options. Animates by default, ignoring the global option. @@ -749,13 +756,19 @@ panzoom.zoomOut() panzoom.zoomOut({ animate: false }) ``` ---- +#### Parameters: + +| Name | Type | +| :------------- | :------------ | +| `zoomOptions?` | _ZoomOptions_ | -### zoomToPoint() +**Returns:** _[CurrentValues](#CurrentValues)_ -• **zoomToPoint**: (scale: number, point: { clientX: number ; clientY: number }, zoomOptions?: [ZoomOptions](#ZoomOptions)](../modules/_types_.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +Defined in: [types.ts:314](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L314) -_Defined in [types.ts:326](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L326)_ +### zoomToPoint + +• **zoomToPoint**: (`scale`: _number_, `point`: { `clientX`: _number_ ; `clientY`: _number_ }, `zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ Zoom the Panzoom element to a focal point using the given pointer/touch/mouse event or constructed point. @@ -766,13 +779,23 @@ the same way as a `pointermove` event on the Panzoom element's parent. panzoom.zoomToPoint(1.2, pointerEvent) ``` ---- +#### Parameters: + +| Name | Type | +| :-------------- | :------------ | +| `scale` | _number_ | +| `point` | _object_ | +| `point.clientX` | _number_ | +| `point.clientY` | _number_ | +| `zoomOptions?` | _ZoomOptions_ | -### zoomWithWheel() +**Returns:** _[CurrentValues](#CurrentValues)_ -• **zoomWithWheel**: (event: WheelEvent, zoomOptions?: [ZoomOptions](#ZoomOptions)](../modules/_types_.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +Defined in: [types.ts:325](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L325) -_Defined in [types.ts:355](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L355)_ +### zoomWithWheel + +• **zoomWithWheel**: (`event`: WheelEvent, `zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ Zoom the Panzoom element to a focal point using the given WheelEvent @@ -796,39 +819,42 @@ elem.parentElement.addEventListener('wheel', function (event) { }) ``` ---- +#### Parameters: -## `CurrentValues` +| Name | Type | +| :------------- | :------------ | +| `event` | WheelEvent | +| `zoomOptions?` | _ZoomOptions_ | -### isSVG +**Returns:** _[CurrentValues](#CurrentValues)_ -• `Optional` **isSVG**: boolean +Defined in: [types.ts:354](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L354) -_Defined in [types.ts:211](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L211)_ +## CurrentValues ---- +### isSVG -### scale +• `Optional` **isSVG**: _boolean_ + +Defined in: [types.ts:211](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L211) -• **scale**: number +### scale -_Defined in [types.ts:210](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L210)_ +• **scale**: _number_ ---- +Defined in: [types.ts:210](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L210) ### x -• **x**: number +• **x**: _number_ -_Defined in [types.ts:208](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L208)_ - ---- +Defined in: [types.ts:208](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L208) ### y -• **y**: number +• **y**: _number_ -_Defined in [types.ts:209](https://github.com/timmywil/panzoom/blob/14e02b7/src/types.ts#L209)_ +Defined in: [types.ts:209](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L209) ## Events diff --git a/package-lock.json b/package-lock.json index 779bdc63..36deb1e2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7871,12 +7871,6 @@ "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "dev": true }, - "highlight.js": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.2.tgz", - "integrity": "sha512-oFLl873u4usRM9K63j4ME9u3etNF0PLiJhSQ8rdfuL51Wn3zkD6drf9ZW0dOzjnZI22YYG24z30JcmfCZjMgYg==", - "dev": true - }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", @@ -14725,6 +14719,32 @@ "mimic-fn": "^2.1.0" } }, + "onigasm": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", + "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", + "dev": true, + "requires": { + "lru-cache": "^5.1.1" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, "opn": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", @@ -16847,6 +16867,16 @@ "rechoir": "^0.6.2" } }, + "shiki": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.3.tgz", + "integrity": "sha512-NEjg1mVbAUrzRv2eIcUt3TG7X9svX7l3n3F5/3OdFq+/BxUdmBOeKGiH4icZJBLHy354Shnj6sfBTemea2e7XA==", + "dev": true, + "requires": { + "onigasm": "^2.2.5", + "vscode-textmate": "^5.2.0" + } + }, "side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -18179,22 +18209,22 @@ } }, "typedoc": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.19.2.tgz", - "integrity": "sha512-oDEg1BLEzi1qvgdQXc658EYgJ5qJLVSeZ0hQ57Eq4JXy6Vj2VX4RVo18qYxRWz75ifAaYuYNBUCnbhjd37TfOg==", + "version": "0.20.36", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.20.36.tgz", + "integrity": "sha512-qFU+DWMV/hifQ9ZAlTjdFO9wbUIHuUBpNXzv68ZyURAP9pInjZiO4+jCPeAzHVcaBCHER9WL/+YzzTt6ZlN/Nw==", "dev": true, "requires": { - "fs-extra": "^9.0.1", - "handlebars": "^4.7.6", - "highlight.js": "^10.2.0", - "lodash": "^4.17.20", + "colors": "^1.4.0", + "fs-extra": "^9.1.0", + "handlebars": "^4.7.7", + "lodash": "^4.17.21", "lunr": "^2.3.9", - "marked": "^1.1.1", + "marked": "^2.0.3", "minimatch": "^3.0.0", "progress": "^2.0.3", - "semver": "^7.3.2", "shelljs": "^0.8.4", - "typedoc-default-themes": "^0.11.4" + "shiki": "^0.9.3", + "typedoc-default-themes": "^0.12.10" }, "dependencies": { "fs-extra": { @@ -18209,6 +18239,19 @@ "universalify": "^2.0.0" } }, + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + } + }, "jsonfile": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -18225,21 +18268,12 @@ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, - "marked": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/marked/-/marked-1.2.9.tgz", - "integrity": "sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw==", + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, "universalify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", @@ -18249,18 +18283,39 @@ } }, "typedoc-default-themes": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/typedoc-default-themes/-/typedoc-default-themes-0.11.4.tgz", - "integrity": "sha512-Y4Lf+qIb9NTydrexlazAM46SSLrmrQRqWiD52593g53SsmUFioAsMWt8m834J6qsp+7wHRjxCXSZeiiW5cMUdw==", + "version": "0.12.10", + "resolved": "https://registry.npmjs.org/typedoc-default-themes/-/typedoc-default-themes-0.12.10.tgz", + "integrity": "sha512-fIS001cAYHkyQPidWXmHuhs8usjP5XVJjWB8oZGqkTowZaz3v7g3KDZeeqE82FBrmkAnIBOY3jgy7lnPnqATbA==", "dev": true }, "typedoc-plugin-markdown": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.1.1.tgz", - "integrity": "sha512-esrSaGw9NeGOR1fixubeSYCtQ9tw1iv7xa6bMvwznjs+jOUEdP0/OBe7l2bbk3PoqhNiFBozBJDo3CpcMJGHnw==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.7.2.tgz", + "integrity": "sha512-SBGYKSJO48oGEXF9vC1ldcuqNyOC17st6LXy9/KMQ5tSGY0NRW8ldlBXI0PYrci+IbeXlkUfyhN0n3ud/2/VjQ==", "dev": true, "requires": { - "handlebars": "^4.7.6" + "handlebars": "^4.7.7" + }, + "dependencies": { + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "typescript": { @@ -18743,6 +18798,12 @@ "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", "dev": true }, + "vscode-textmate": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.4.0.tgz", + "integrity": "sha512-c0Q4zYZkcLizeYJ3hNyaVUM2AA8KDhNCA3JvXY8CeZSJuBdAy3bAvSbv46RClC4P3dSO9BdwhnKEx2zOo6vP/w==", + "dev": true + }, "watchpack": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", @@ -19634,6 +19695,12 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, "workerpool": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", diff --git a/package.json b/package.json index 024c61da..2862d12f 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "build": "npm run clean && rollup --config && npm run minify", "clean": "rm -rf dist/", "demo": "webpack --mode production", - "docs": "typedoc --plugin typedoc-plugin-markdown --hideBreadcrumbs --exclude \"**/src/+(css|isAttached|isSVGElement|pointers|shallowClone).ts\" --out docs --readme none src/panzoom.ts && node tasks/docs.js", + "docs": "typedoc --plugin typedoc-plugin-markdown --hideBreadcrumbs --out docs --readme none src/panzoom.ts src/types.ts && node tasks/docs.js", "format": "eslint . --fix && prettier --write \"**/*.tsx\" \"**/*.ts\" \"**/*.js\" \"**/*.json\" \"**/*.md\"", "lint": "concurrently --raw \"eslint .\" \"npm run prettier\" \"npm run typescript\"", "minify": "uglifyjs --compress --mangle --comments /Timmy/ --output dist/panzoom.min.js -- dist/panzoom.js && npm run sizeup", @@ -84,8 +84,8 @@ "rollup-plugin-typescript2": "^0.30.0", "style-loader": "^2.0.0", "ts-loader": "^9.1.1", - "typedoc": "^0.19.2", - "typedoc-plugin-markdown": "3.1.1", + "typedoc": "^0.20.36", + "typedoc-plugin-markdown": "^3.7.2", "typescript": "^4.2.4", "uglify-js": "^3.13.5", "webpack": "^5.36.2", diff --git a/src/types.ts b/src/types.ts index 75cd0da4..80062315 100644 --- a/src/types.ts +++ b/src/types.ts @@ -16,7 +16,7 @@ export interface PanzoomEventDetail { originalEvent: PointerEvent | TouchEvent | MouseEvent } -interface MiscOptions { +export interface MiscOptions { /** Whether to animate transitions */ animate?: boolean /** @@ -149,7 +149,7 @@ interface MiscOptions { [key: string]: any } -interface PanSpecificOptions { +export interface PanOnlyOptions { /** * Contain the panzoom element either * inside or outside the parent. @@ -182,7 +182,7 @@ interface PanSpecificOptions { panOnlyWhenZoomed?: boolean } -interface ZoomSpecificOptions { +export interface ZoomOnlyOptions { /** Disable zooming functionality */ disableZoom?: boolean /** @@ -200,8 +200,8 @@ interface ZoomSpecificOptions { step?: number } -export type PanOptions = MiscOptions & PanSpecificOptions -export type ZoomOptions = MiscOptions & ZoomSpecificOptions +export type PanOptions = MiscOptions & PanOnlyOptions +export type ZoomOptions = MiscOptions & ZoomOnlyOptions export type PanzoomOptions = PanOptions & ZoomOptions & MiscOptions export interface CurrentValues { @@ -265,10 +265,9 @@ export interface PanzoomObject { * panzoom.resetStyle() * ``` */ - /** Change options for the Panzoom instance */ resetStyle: () => void /** - * Change an option on a Panzoom instance. + * Change any number of options on a Panzoom instance. * Setting some options will have side-effects. * For instance, changing the cursor option * will also set the cursor style. diff --git a/tasks/docs.js b/tasks/docs.js index 1f4cd4ec..5b9d9b62 100644 --- a/tasks/docs.js +++ b/tasks/docs.js @@ -9,71 +9,95 @@ function write(filename, data) { } // Start with the README const header = '\n---\n\n## Documentation' -let data = read('../README.md').replace(new RegExp(header + '[\\w\\W]+'), '') + header +let data = read('../README.md').replace(new RegExp(header + '[^]+'), '') + header + +// Remove links that aren't links to source +function removeLinks(data) { + return data.replace(/\[([^:]+)\]\(.*?\)/g, '$1') +} + +function addLinks(data) { + return data + .replace(/PanzoomOptions/g, '[PanzoomOptions](#PanzoomOptions)') + .replace(/PanOptions/g, '[PanOptions](#PanOptions)') + .replace(/ZoomOptions/g, '[ZoomOptions](#ZoomOptions)') + .replace(/MiscOptions/g, '[MiscOptions](#MiscOptions)') + .replace(/PanzoomObject/g, '[PanzoomObject](#PanzoomObject)') + .replace(/CurrentValues/g, '[CurrentValues](#CurrentValues)') + .replace(/PanzoomEventDetail/g, '[PanzoomEventDetail](#PanzoomEventDetail)') +} function redoLinks(data) { - return ( - data - // Remove links that aren't links to source - .replace(/\[([^:]+)\]\(.*?\)/g, '$1') - .replace(/PanzoomOptions/g, '[PanzoomOptions](#PanzoomOptions)') - .replace(/PanOptions/g, '[PanOptions](#PanOptions)') - .replace(/ZoomOptions/g, '[ZoomOptions](#ZoomOptions)') - .replace(/PanzoomObject/g, '[PanzoomObject](#PanzoomObject)') - .replace(/CurrentValues/g, '[CurrentValues](#CurrentValues)') + return addLinks(removeLinks(data)) +} + +/** + * @param {string} filename + * @param {Array} functions List of functions to extract from docs + */ +function getModuleFunctions(filename, functions) { + const available = redoLinks(read(`../docs/modules/${filename}`)) + // Remove everything up to functions + .replace(/[^]+#{2}\s*Functions/, '') + .split(/___/) + return functions + .map((fn) => { + const rfn = new RegExp(`###\\s*${fn}[^#]+?`) + const doc = available.find((existing) => rfn.test(existing)) + return doc || '' + }) + .join('\n\n') +} + +function getInterfaceContent(filename, customHeader) { + return removeLinks( + read(`../docs/interfaces/${filename}`) + .replace(/# Interface:\s*(.+)[^]+##\s*Properties/, customHeader ? customHeader : '## $1') + .replace(/___/g, '') + // Remove superfluous type declarations + .replace(/#### Type declaration:\n\n▸ .+/g, '') + // Remove double "Defined in" + .replace(/(Defined in: .+)\n\nDefined in: .+/g, '$1') ) } -const [constructor, defaultOptions] = redoLinks(read('../docs/modules/_panzoom_.md')) - // Remove unwanted text - .replace(/[^]+###\s*Panzoom/, '') - .replace('## Object literals\n\n', '') - .split('### defaultOptions') -data += constructor +data += getModuleFunctions('panzoom.md', ['default']).replace(/default/g, 'Panzoom') +// Get default options +const source = read('../src/panzoom.ts') +const defaultProps = /const defaultOptions: PanzoomOptions = ({[^]+?\n})/.exec(source)[1] const parsedDefaults = {} -defaultOptions - .replace(/[^]+#### Properties:/, '') - .replace(/`(\w+)` \|[^|]+\|\s*([^|]+) |/g, function (all, key, value) { - if (key && value) { - parsedDefaults[key] = value - } - return all - }) +defaultProps.replace(/(\w+): ([^]+?)(?:,\n|\n})/g, (all, key, value) => { + parsedDefaults[key] = value.replace(/'/g, '"') +}) -const rProperties = /[^]+##\s*Properties/ -const panzoomOptions = - '\n\n## `PanzoomOptions`\n\nIncludes `MiscOptions`, `PanOptions`, and `ZoomOptions`\n\n' + - redoLinks(read('../docs/interfaces/_types_.miscoptions.md')) - // Remove unwanted text - .replace(rProperties, '\n\n---\n\n## `MiscOptions`\n') + - redoLinks(read('../docs/interfaces/_types_.panspecificoptions.md')) - // Remove unwanted text - .replace(rProperties, '\n\n---\n\n## `PanOptions`\n\nIncludes `MiscOptions`\n\n') + - redoLinks(read('../docs/interfaces/_types_.zoomspecificoptions.md')) - // Remove unwanted text - .replace(rProperties, '\n\n---\n\n## `ZoomOptions`\n\nIncludes `MiscOptions`\n\n') -data += panzoomOptions - // Add in default values to option descriptions - .replace(/(?:`Optional` )?\*\*(\w+)\*\*\s*: [^\n]+/g, function (all, key) { +const rprops = /(?:`Optional` )?\*\*(\w+)\*\*\s*: [^\n]+/g +function addDefaults(data) { + return data.replace(rprops, function (all, key) { return parsedDefaults[key] ? `${all} (Default: **${parsedDefaults[key]}**)` : all }) +} + +const panzoomOptions = + '\n\n## `PanzoomOptions`\n\nIncludes `MiscOptions`, `PanOnlyOptions`, and `ZoomOnlyOptions`\n\n' + + getInterfaceContent('types.miscoptions.md') + + getInterfaceContent( + 'types.panonlyoptions.md', + '## PanOptions (includes [MiscOptions](#MiscOptions))' + ) + + getInterfaceContent( + 'types.zoomonlyoptions.md', + '## ZoomOptions (includes [MiscOptions](#MiscOptions))' + ) + +data += addDefaults(panzoomOptions) -const panzoomObject = - '\n\n---\n\n## `PanzoomObject`\n\nThese methods are available after initializing Panzoom\n\n' + - redoLinks(read('../docs/interfaces/_types_.panzoomobject.md')) - // Remove unwanted text - .replace(rProperties, '') - // Type declaration refers to the signature - .replace(/Type declaration:/g, 'Signature with return type:') -data += panzoomObject - // Add parens to method names - .replace(/([^#])\#\#\#\s*(\w+)/g, '$1### $2()') +data += getInterfaceContent( + 'types.panzoomobject.md', + '## PanzoomObject\n\nThese methods are available after initializing Panzoom' +).replace(/CurrentValues/g, '[CurrentValues](#CurrentValues)') -const currentValues = read('../docs/interfaces/_types_.currentvalues.md') - // Remove unwanted text - .replace(rProperties, '\n\n---\n\n## `CurrentValues`\n') -data += currentValues + '\n' +data += getInterfaceContent('types.currentvalues.md') const events = read('./EVENTS.md') data += events From 78305659de97fdf8babf03a8223b34398d151233 Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Tue, 11 May 2021 11:21:21 -0400 Subject: [PATCH 02/12] chore: re-remove dist from git tracking --- dist/panzoom.es.js | 735 ------------------------------------ dist/panzoom.js | 743 ------------------------------------- dist/panzoom.min.js | 6 - dist/src/css.d.ts | 65 ---- dist/src/events.d.ts | 8 - dist/src/isAttached.d.ts | 5 - dist/src/isExcluded.d.ts | 2 - dist/src/isSVGElement.d.ts | 1 - dist/src/panzoom.d.ts | 17 - dist/src/pointers.d.ts | 17 - dist/src/shallowClone.d.ts | 1 - dist/src/types.d.ts | 352 ------------------ 12 files changed, 1952 deletions(-) delete mode 100644 dist/panzoom.es.js delete mode 100644 dist/panzoom.js delete mode 100644 dist/panzoom.min.js delete mode 100644 dist/src/css.d.ts delete mode 100644 dist/src/events.d.ts delete mode 100644 dist/src/isAttached.d.ts delete mode 100644 dist/src/isExcluded.d.ts delete mode 100644 dist/src/isSVGElement.d.ts delete mode 100644 dist/src/panzoom.d.ts delete mode 100644 dist/src/pointers.d.ts delete mode 100644 dist/src/shallowClone.d.ts delete mode 100644 dist/src/types.d.ts diff --git a/dist/panzoom.es.js b/dist/panzoom.es.js deleted file mode 100644 index 4745c2f6..00000000 --- a/dist/panzoom.es.js +++ /dev/null @@ -1,735 +0,0 @@ -/** -* Panzoom for panning and zooming elements using CSS transforms -* Copyright Timmy Willison and other contributors -* https://github.com/timmywil/panzoom/blob/master/MIT-License.txt -*/ -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ - -var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); -}; - -/* eslint-disable no-var */ -if (typeof window !== 'undefined') { - // Support: IE11 only - if (window.NodeList && !NodeList.prototype.forEach) { - NodeList.prototype.forEach = Array.prototype.forEach; - } - // Support: IE11 only - // CustomEvent is an object instead of a constructor - if (typeof window.CustomEvent !== 'function') { - window.CustomEvent = function CustomEvent(event, params) { - params = params || { bubbles: false, cancelable: false, detail: null }; - var evt = document.createEvent('CustomEvent'); - evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail); - return evt - }; - } -} - -/** - * Utilites for working with multiple pointer events - */ -function findEventIndex(pointers, event) { - var i = pointers.length; - while (i--) { - if (pointers[i].pointerId === event.pointerId) { - return i; - } - } - return -1; -} -function addPointer(pointers, event) { - var i; - // Add touches if applicable - if (event.touches) { - i = 0; - for (var _i = 0, _a = event.touches; _i < _a.length; _i++) { - var touch = _a[_i]; - touch.pointerId = i++; - addPointer(pointers, touch); - } - return; - } - i = findEventIndex(pointers, event); - // Update if already present - if (i > -1) { - pointers.splice(i, 1); - } - pointers.push(event); -} -function removePointer(pointers, event) { - // Add touches if applicable - if (event.touches) { - // Remove all touches - while (pointers.length) { - pointers.pop(); - } - return; - } - var i = findEventIndex(pointers, event); - if (i > -1) { - pointers.splice(i, 1); - } -} -/** - * Calculates a center point between - * the given pointer events, for panning - * with multiple pointers. - */ -function getMiddle(pointers) { - // Copy to avoid changing by reference - pointers = pointers.slice(0); - var event1 = pointers.pop(); - var event2; - while ((event2 = pointers.pop())) { - event1 = { - clientX: (event2.clientX - event1.clientX) / 2 + event1.clientX, - clientY: (event2.clientY - event1.clientY) / 2 + event1.clientY - }; - } - return event1; -} -/** - * Calculates the distance between two points - * for pinch zooming. - * Limits to the first 2 - */ -function getDistance(pointers) { - if (pointers.length < 2) { - return 0; - } - var event1 = pointers[0]; - var event2 = pointers[1]; - return Math.sqrt(Math.pow(Math.abs(event2.clientX - event1.clientX), 2) + - Math.pow(Math.abs(event2.clientY - event1.clientY), 2)); -} - -var events = { - down: 'mousedown', - move: 'mousemove', - up: 'mouseup mouseleave' -}; -if (typeof window !== 'undefined') { - if (typeof window.PointerEvent === 'function') { - events = { - down: 'pointerdown', - move: 'pointermove', - up: 'pointerup pointerleave pointercancel' - }; - } - else if (typeof window.TouchEvent === 'function') { - events = { - down: 'touchstart', - move: 'touchmove', - up: 'touchend touchcancel' - }; - } -} -function onPointer(event, elem, handler, eventOpts) { - events[event].split(' ').forEach(function (name) { - elem.addEventListener(name, handler, eventOpts); - }); -} -function destroyPointer(event, elem, handler) { - events[event].split(' ').forEach(function (name) { - elem.removeEventListener(name, handler); - }); -} - -var isIE = typeof document !== 'undefined' && !!document.documentMode; -/** - * Lazy creation of a CSS style declaration - */ -var divStyle; -function createStyle() { - if (divStyle) { - return divStyle; - } - return (divStyle = document.createElement('div').style); -} -/** - * Proper prefixing for cross-browser compatibility - */ -var prefixes = ['webkit', 'moz', 'ms']; -var prefixCache = {}; -function getPrefixedName(name) { - if (prefixCache[name]) { - return prefixCache[name]; - } - var divStyle = createStyle(); - if (name in divStyle) { - return (prefixCache[name] = name); - } - var capName = name[0].toUpperCase() + name.slice(1); - var i = prefixes.length; - while (i--) { - var prefixedName = "" + prefixes[i] + capName; - if (prefixedName in divStyle) { - return (prefixCache[name] = prefixedName); - } - } -} -/** - * Gets a style value expected to be a number - */ -function getCSSNum(name, style) { - return parseFloat(style[getPrefixedName(name)]) || 0; -} -function getBoxStyle(elem, name, style) { - if (style === void 0) { style = window.getComputedStyle(elem); } - // Support: FF 68+ - // Firefox requires specificity for border - var suffix = name === 'border' ? 'Width' : ''; - return { - left: getCSSNum(name + "Left" + suffix, style), - right: getCSSNum(name + "Right" + suffix, style), - top: getCSSNum(name + "Top" + suffix, style), - bottom: getCSSNum(name + "Bottom" + suffix, style) - }; -} -/** - * Set a style using the properly prefixed name - */ -function setStyle(elem, name, value) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - elem.style[getPrefixedName(name)] = value; -} -/** - * Constructs the transition from panzoom options - * and takes care of prefixing the transition and transform - */ -function setTransition(elem, options) { - var transform = getPrefixedName('transform'); - setStyle(elem, 'transition', transform + " " + options.duration + "ms " + options.easing); -} -/** - * Set the transform using the proper prefix - */ -function setTransform(elem, _a, _options) { - var x = _a.x, y = _a.y, scale = _a.scale, isSVG = _a.isSVG; - setStyle(elem, 'transform', "scale(" + scale + ") translate(" + x + "px, " + y + "px)"); - if (isSVG && isIE) { - var matrixValue = window.getComputedStyle(elem).getPropertyValue('transform'); - elem.setAttribute('transform', matrixValue); - } -} -/** - * Dimensions used in containment and focal point zooming - */ -function getDimensions(elem) { - var parent = elem.parentNode; - var style = window.getComputedStyle(elem); - var parentStyle = window.getComputedStyle(parent); - var rectElem = elem.getBoundingClientRect(); - var rectParent = parent.getBoundingClientRect(); - return { - elem: { - style: style, - width: rectElem.width, - height: rectElem.height, - top: rectElem.top, - bottom: rectElem.bottom, - left: rectElem.left, - right: rectElem.right, - margin: getBoxStyle(elem, 'margin', style), - border: getBoxStyle(elem, 'border', style) - }, - parent: { - style: parentStyle, - width: rectParent.width, - height: rectParent.height, - top: rectParent.top, - bottom: rectParent.bottom, - left: rectParent.left, - right: rectParent.right, - padding: getBoxStyle(parent, 'padding', parentStyle), - border: getBoxStyle(parent, 'border', parentStyle) - } - }; -} - -/** - * Determine if an element is attached to the DOM - * Panzoom requires this so events work properly - */ -function isAttached(elem) { - var doc = elem.ownerDocument; - var parent = elem.parentNode; - return (doc && - parent && - doc.nodeType === 9 && - parent.nodeType === 1 && - doc.documentElement.contains(parent)); -} - -function getClass(elem) { - return (elem.getAttribute('class') || '').trim(); -} -function hasClass(elem, className) { - return elem.nodeType === 1 && (" " + getClass(elem) + " ").indexOf(" " + className + " ") > -1; -} -function isExcluded(elem, options) { - for (var cur = elem; cur != null; cur = cur.parentNode) { - if (hasClass(cur, options.excludeClass) || options.exclude.indexOf(cur) > -1) { - return true; - } - } - return false; -} - -/** - * Determine if an element is SVG by checking the namespace - * Exception: the element itself should be treated like HTML - */ -var rsvg = /^http:[\w\.\/]+svg$/; -function isSVGElement(elem) { - return rsvg.test(elem.namespaceURI) && elem.nodeName.toLowerCase() !== 'svg'; -} - -function shallowClone(obj) { - var clone = {}; - for (var key in obj) { - if (obj.hasOwnProperty(key)) { - clone[key] = obj[key]; - } - } - return clone; -} - -var defaultOptions = { - animate: false, - canvas: false, - cursor: 'move', - disablePan: false, - disableZoom: false, - disableXAxis: false, - disableYAxis: false, - duration: 200, - easing: 'ease-in-out', - exclude: [], - excludeClass: 'panzoom-exclude', - handleStartEvent: function (e) { - e.preventDefault(); - e.stopPropagation(); - }, - maxScale: 4, - minScale: 0.125, - overflow: 'hidden', - panOnlyWhenZoomed: false, - relative: false, - setTransform: setTransform, - startX: 0, - startY: 0, - startScale: 1, - step: 0.3, - touchAction: 'none' -}; -function Panzoom(elem, options) { - if (!elem) { - throw new Error('Panzoom requires an element as an argument'); - } - if (elem.nodeType !== 1) { - throw new Error('Panzoom requires an element with a nodeType of 1'); - } - if (!isAttached(elem)) { - throw new Error('Panzoom should be called on elements that have been attached to the DOM'); - } - options = __assign(__assign({}, defaultOptions), options); - var isSVG = isSVGElement(elem); - var parent = elem.parentNode; - // Set parent styles - parent.style.overflow = options.overflow; - parent.style.userSelect = 'none'; - // This is important for mobile to - // prevent scrolling while panning - parent.style.touchAction = options.touchAction; - (options.canvas ? parent : elem).style.cursor = options.cursor; - // Set element styles - elem.style.userSelect = 'none'; - elem.style.touchAction = options.touchAction; - // The default for HTML is '50% 50%' - // The default for SVG is '0 0' - // SVG can't be changed in IE - setStyle(elem, 'transformOrigin', typeof options.origin === 'string' ? options.origin : isSVG ? '0 0' : '50% 50%'); - function resetStyle() { - parent.style.overflow = ''; - parent.style.userSelect = ''; - parent.style.touchAction = ''; - parent.style.cursor = ''; - elem.style.cursor = ''; - elem.style.userSelect = ''; - elem.style.touchAction = ''; - setStyle(elem, 'transformOrigin', ''); - } - function setOptions(opts) { - if (opts === void 0) { opts = {}; } - for (var key in opts) { - if (opts.hasOwnProperty(key)) { - options[key] = opts[key]; - } - } - // Handle option side-effects - if (opts.hasOwnProperty('cursor') || opts.hasOwnProperty('canvas')) { - parent.style.cursor = elem.style.cursor = ''; - (options.canvas ? parent : elem).style.cursor = options.cursor; - } - if (opts.hasOwnProperty('overflow')) { - parent.style.overflow = opts.overflow; - } - if (opts.hasOwnProperty('touchAction')) { - parent.style.touchAction = opts.touchAction; - elem.style.touchAction = opts.touchAction; - } - if (opts.hasOwnProperty('minScale') || - opts.hasOwnProperty('maxScale') || - opts.hasOwnProperty('contain')) { - setMinMax(); - } - } - var x = 0; - var y = 0; - var scale = 1; - var isPanning = false; - zoom(options.startScale, { animate: false }); - // Wait for scale to update - // for accurate dimensions - // to constrain initial values - setTimeout(function () { - setMinMax(); - pan(options.startX, options.startY, { animate: false }); - }); - function trigger(eventName, detail, opts) { - if (opts.silent) { - return; - } - var event = new CustomEvent(eventName, { detail: detail }); - elem.dispatchEvent(event); - } - function setTransformWithEvent(eventName, opts, originalEvent) { - var value = { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: originalEvent }; - requestAnimationFrame(function () { - if (typeof opts.animate === 'boolean') { - if (opts.animate) { - setTransition(elem, opts); - } - else { - setStyle(elem, 'transition', 'none'); - } - } - opts.setTransform(elem, value, opts); - }); - trigger(eventName, value, opts); - trigger('panzoomchange', value, opts); - return value; - } - function setMinMax() { - if (options.contain) { - var dims = getDimensions(elem); - var parentWidth = dims.parent.width - dims.parent.border.left - dims.parent.border.right; - var parentHeight = dims.parent.height - dims.parent.border.top - dims.parent.border.bottom; - var elemWidth = dims.elem.width / scale; - var elemHeight = dims.elem.height / scale; - var elemScaledWidth = parentWidth / elemWidth; - var elemScaledHeight = parentHeight / elemHeight; - if (options.contain === 'inside') { - options.maxScale = Math.min(elemScaledWidth, elemScaledHeight); - } - else if (options.contain === 'outside') { - options.minScale = Math.max(elemScaledWidth, elemScaledHeight); - } - } - } - function constrainXY(toX, toY, toScale, panOptions) { - var opts = __assign(__assign({}, options), panOptions); - var result = { x: x, y: y, opts: opts }; - if (!opts.force && (opts.disablePan || (opts.panOnlyWhenZoomed && scale === opts.startScale))) { - return result; - } - toX = parseFloat(toX); - toY = parseFloat(toY); - if (!opts.disableXAxis) { - result.x = (opts.relative ? x : 0) + toX; - } - if (!opts.disableYAxis) { - result.y = (opts.relative ? y : 0) + toY; - } - if (opts.contain === 'inside') { - var dims = getDimensions(elem); - result.x = Math.max(-dims.elem.margin.left - dims.parent.padding.left, Math.min(dims.parent.width - - dims.elem.width / toScale - - dims.parent.padding.left - - dims.elem.margin.left - - dims.parent.border.left - - dims.parent.border.right, result.x)); - result.y = Math.max(-dims.elem.margin.top - dims.parent.padding.top, Math.min(dims.parent.height - - dims.elem.height / toScale - - dims.parent.padding.top - - dims.elem.margin.top - - dims.parent.border.top - - dims.parent.border.bottom, result.y)); - } - else if (opts.contain === 'outside') { - var dims = getDimensions(elem); - var realWidth = dims.elem.width / scale; - var realHeight = dims.elem.height / scale; - var scaledWidth = realWidth * toScale; - var scaledHeight = realHeight * toScale; - var diffHorizontal = (scaledWidth - realWidth) / 2; - var diffVertical = (scaledHeight - realHeight) / 2; - var minX = (-(scaledWidth - dims.parent.width) - - dims.parent.padding.left - - dims.parent.border.left - - dims.parent.border.right + - diffHorizontal) / - toScale; - var maxX = (diffHorizontal - dims.parent.padding.left) / toScale; - result.x = Math.max(Math.min(result.x, maxX), minX); - var minY = (-(scaledHeight - dims.parent.height) - - dims.parent.padding.top - - dims.parent.border.top - - dims.parent.border.bottom + - diffVertical) / - toScale; - var maxY = (diffVertical - dims.parent.padding.top) / toScale; - result.y = Math.max(Math.min(result.y, maxY), minY); - } - return result; - } - function constrainScale(toScale, zoomOptions) { - var opts = __assign(__assign({}, options), zoomOptions); - var result = { scale: scale, opts: opts }; - if (!opts.force && opts.disableZoom) { - return result; - } - result.scale = Math.min(Math.max(toScale, opts.minScale), opts.maxScale); - return result; - } - function pan(toX, toY, panOptions, originalEvent) { - var result = constrainXY(toX, toY, scale, panOptions); - var opts = result.opts; - x = result.x; - y = result.y; - return setTransformWithEvent('panzoompan', opts, originalEvent); - } - function zoom(toScale, zoomOptions, originalEvent) { - var result = constrainScale(toScale, zoomOptions); - var opts = result.opts; - if (!opts.force && opts.disableZoom) { - return; - } - toScale = result.scale; - var toX = x; - var toY = y; - if (opts.focal) { - // The difference between the point after the scale and the point before the scale - // plus the current translation after the scale - // neutralized to no scale (as the transform scale will apply to the translation) - var focal = opts.focal; - toX = (focal.x / toScale - focal.x / scale + x * toScale) / toScale; - toY = (focal.y / toScale - focal.y / scale + y * toScale) / toScale; - } - var panResult = constrainXY(toX, toY, toScale, { relative: false, force: true }); - x = panResult.x; - y = panResult.y; - scale = toScale; - return setTransformWithEvent('panzoomzoom', opts, originalEvent); - } - function zoomInOut(isIn, zoomOptions) { - var opts = __assign(__assign(__assign({}, options), { animate: true }), zoomOptions); - return zoom(scale * Math.exp((isIn ? 1 : -1) * opts.step), opts); - } - function zoomIn(zoomOptions) { - return zoomInOut(true, zoomOptions); - } - function zoomOut(zoomOptions) { - return zoomInOut(false, zoomOptions); - } - function zoomToPoint(toScale, point, zoomOptions, originalEvent) { - var dims = getDimensions(elem); - // Instead of thinking of operating on the panzoom element, - // think of operating on the area inside the panzoom - // element's parent - // Subtract padding and border - var effectiveArea = { - width: dims.parent.width - - dims.parent.padding.left - - dims.parent.padding.right - - dims.parent.border.left - - dims.parent.border.right, - height: dims.parent.height - - dims.parent.padding.top - - dims.parent.padding.bottom - - dims.parent.border.top - - dims.parent.border.bottom - }; - // Adjust the clientX/clientY to ignore the area - // outside the effective area - var clientX = point.clientX - - dims.parent.left - - dims.parent.padding.left - - dims.parent.border.left - - dims.elem.margin.left; - var clientY = point.clientY - - dims.parent.top - - dims.parent.padding.top - - dims.parent.border.top - - dims.elem.margin.top; - // Adjust the clientX/clientY for HTML elements, - // because they have a transform-origin of 50% 50% - if (!isSVG) { - clientX -= dims.elem.width / scale / 2; - clientY -= dims.elem.height / scale / 2; - } - // Convert the mouse point from it's position over the - // effective area before the scale to the position - // over the effective area after the scale. - var focal = { - x: (clientX / effectiveArea.width) * (effectiveArea.width * toScale), - y: (clientY / effectiveArea.height) * (effectiveArea.height * toScale) - }; - return zoom(toScale, __assign(__assign({ animate: false }, zoomOptions), { focal: focal }), originalEvent); - } - function zoomWithWheel(event, zoomOptions) { - // Need to prevent the default here - // or it conflicts with regular page scroll - event.preventDefault(); - var opts = __assign(__assign({}, options), zoomOptions); - // Normalize to deltaX in case shift modifier is used on Mac - var delta = event.deltaY === 0 && event.deltaX ? event.deltaX : event.deltaY; - var wheel = delta < 0 ? 1 : -1; - var toScale = constrainScale(scale * Math.exp((wheel * opts.step) / 3), opts).scale; - return zoomToPoint(toScale, event, opts); - } - function reset(resetOptions) { - var opts = __assign(__assign(__assign({}, options), { animate: true, force: true }), resetOptions); - scale = constrainScale(opts.startScale, opts).scale; - var panResult = constrainXY(opts.startX, opts.startY, scale, opts); - x = panResult.x; - y = panResult.y; - return setTransformWithEvent('panzoomreset', opts); - } - var origX; - var origY; - var startClientX; - var startClientY; - var startScale; - var startDistance; - var pointers = []; - function handleDown(event) { - // Don't handle this event if the target is excluded - if (isExcluded(event.target, options)) { - return; - } - addPointer(pointers, event); - isPanning = true; - options.handleStartEvent(event); - origX = x; - origY = y; - trigger('panzoomstart', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); - // This works whether there are multiple - // pointers or not - var point = getMiddle(pointers); - startClientX = point.clientX; - startClientY = point.clientY; - startScale = scale; - startDistance = getDistance(pointers); - } - function move(event) { - if (!isPanning || - origX === undefined || - origY === undefined || - startClientX === undefined || - startClientY === undefined) { - return; - } - addPointer(pointers, event); - var current = getMiddle(pointers); - if (pointers.length > 1) { - // Use the distance between the first 2 pointers - // to determine the current scale - var diff = getDistance(pointers) - startDistance; - var toScale = constrainScale((diff * options.step) / 80 + startScale).scale; - zoomToPoint(toScale, current); - } - pan(origX + (current.clientX - startClientX) / scale, origY + (current.clientY - startClientY) / scale, { - animate: false - }, event); - } - function handleUp(event) { - // Don't call panzoomend when panning with 2 touches - // until both touches end - if (pointers.length === 1) { - trigger('panzoomend', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); - } - // Note: don't remove all pointers - // Can restart without having to reinitiate all of them - // Remove the pointer regardless of the isPanning state - removePointer(pointers, event); - if (!isPanning) { - return; - } - isPanning = false; - origX = origY = startClientX = startClientY = undefined; - } - var bound = false; - function bind() { - if (bound) { - return; - } - bound = true; - onPointer('down', options.canvas ? parent : elem, handleDown); - onPointer('move', document, move, { passive: true }); - onPointer('up', document, handleUp, { passive: true }); - } - function destroy() { - bound = false; - destroyPointer('down', options.canvas ? parent : elem, handleDown); - destroyPointer('move', document, move); - destroyPointer('up', document, handleUp); - } - if (!options.noBind) { - bind(); - } - return { - bind: bind, - destroy: destroy, - eventNames: events, - getPan: function () { return ({ x: x, y: y }); }, - getScale: function () { return scale; }, - getOptions: function () { return shallowClone(options); }, - pan: pan, - reset: reset, - resetStyle: resetStyle, - setOptions: setOptions, - setStyle: function (name, value) { return setStyle(elem, name, value); }, - zoom: zoom, - zoomIn: zoomIn, - zoomOut: zoomOut, - zoomToPoint: zoomToPoint, - zoomWithWheel: zoomWithWheel - }; -} -Panzoom.defaultOptions = defaultOptions; - -export default Panzoom; diff --git a/dist/panzoom.js b/dist/panzoom.js deleted file mode 100644 index 1ae78ca1..00000000 --- a/dist/panzoom.js +++ /dev/null @@ -1,743 +0,0 @@ -/** -* Panzoom for panning and zooming elements using CSS transforms -* Copyright Timmy Willison and other contributors -* https://github.com/timmywil/panzoom/blob/master/MIT-License.txt -*/ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : - typeof define === 'function' && define.amd ? define(factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Panzoom = factory()); -}(this, (function () { 'use strict'; - - /*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */ - - var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - }; - - /* eslint-disable no-var */ - if (typeof window !== 'undefined') { - // Support: IE11 only - if (window.NodeList && !NodeList.prototype.forEach) { - NodeList.prototype.forEach = Array.prototype.forEach; - } - // Support: IE11 only - // CustomEvent is an object instead of a constructor - if (typeof window.CustomEvent !== 'function') { - window.CustomEvent = function CustomEvent(event, params) { - params = params || { bubbles: false, cancelable: false, detail: null }; - var evt = document.createEvent('CustomEvent'); - evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail); - return evt - }; - } - } - - /** - * Utilites for working with multiple pointer events - */ - function findEventIndex(pointers, event) { - var i = pointers.length; - while (i--) { - if (pointers[i].pointerId === event.pointerId) { - return i; - } - } - return -1; - } - function addPointer(pointers, event) { - var i; - // Add touches if applicable - if (event.touches) { - i = 0; - for (var _i = 0, _a = event.touches; _i < _a.length; _i++) { - var touch = _a[_i]; - touch.pointerId = i++; - addPointer(pointers, touch); - } - return; - } - i = findEventIndex(pointers, event); - // Update if already present - if (i > -1) { - pointers.splice(i, 1); - } - pointers.push(event); - } - function removePointer(pointers, event) { - // Add touches if applicable - if (event.touches) { - // Remove all touches - while (pointers.length) { - pointers.pop(); - } - return; - } - var i = findEventIndex(pointers, event); - if (i > -1) { - pointers.splice(i, 1); - } - } - /** - * Calculates a center point between - * the given pointer events, for panning - * with multiple pointers. - */ - function getMiddle(pointers) { - // Copy to avoid changing by reference - pointers = pointers.slice(0); - var event1 = pointers.pop(); - var event2; - while ((event2 = pointers.pop())) { - event1 = { - clientX: (event2.clientX - event1.clientX) / 2 + event1.clientX, - clientY: (event2.clientY - event1.clientY) / 2 + event1.clientY - }; - } - return event1; - } - /** - * Calculates the distance between two points - * for pinch zooming. - * Limits to the first 2 - */ - function getDistance(pointers) { - if (pointers.length < 2) { - return 0; - } - var event1 = pointers[0]; - var event2 = pointers[1]; - return Math.sqrt(Math.pow(Math.abs(event2.clientX - event1.clientX), 2) + - Math.pow(Math.abs(event2.clientY - event1.clientY), 2)); - } - - var events = { - down: 'mousedown', - move: 'mousemove', - up: 'mouseup mouseleave' - }; - if (typeof window !== 'undefined') { - if (typeof window.PointerEvent === 'function') { - events = { - down: 'pointerdown', - move: 'pointermove', - up: 'pointerup pointerleave pointercancel' - }; - } - else if (typeof window.TouchEvent === 'function') { - events = { - down: 'touchstart', - move: 'touchmove', - up: 'touchend touchcancel' - }; - } - } - function onPointer(event, elem, handler, eventOpts) { - events[event].split(' ').forEach(function (name) { - elem.addEventListener(name, handler, eventOpts); - }); - } - function destroyPointer(event, elem, handler) { - events[event].split(' ').forEach(function (name) { - elem.removeEventListener(name, handler); - }); - } - - var isIE = typeof document !== 'undefined' && !!document.documentMode; - /** - * Lazy creation of a CSS style declaration - */ - var divStyle; - function createStyle() { - if (divStyle) { - return divStyle; - } - return (divStyle = document.createElement('div').style); - } - /** - * Proper prefixing for cross-browser compatibility - */ - var prefixes = ['webkit', 'moz', 'ms']; - var prefixCache = {}; - function getPrefixedName(name) { - if (prefixCache[name]) { - return prefixCache[name]; - } - var divStyle = createStyle(); - if (name in divStyle) { - return (prefixCache[name] = name); - } - var capName = name[0].toUpperCase() + name.slice(1); - var i = prefixes.length; - while (i--) { - var prefixedName = "" + prefixes[i] + capName; - if (prefixedName in divStyle) { - return (prefixCache[name] = prefixedName); - } - } - } - /** - * Gets a style value expected to be a number - */ - function getCSSNum(name, style) { - return parseFloat(style[getPrefixedName(name)]) || 0; - } - function getBoxStyle(elem, name, style) { - if (style === void 0) { style = window.getComputedStyle(elem); } - // Support: FF 68+ - // Firefox requires specificity for border - var suffix = name === 'border' ? 'Width' : ''; - return { - left: getCSSNum(name + "Left" + suffix, style), - right: getCSSNum(name + "Right" + suffix, style), - top: getCSSNum(name + "Top" + suffix, style), - bottom: getCSSNum(name + "Bottom" + suffix, style) - }; - } - /** - * Set a style using the properly prefixed name - */ - function setStyle(elem, name, value) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - elem.style[getPrefixedName(name)] = value; - } - /** - * Constructs the transition from panzoom options - * and takes care of prefixing the transition and transform - */ - function setTransition(elem, options) { - var transform = getPrefixedName('transform'); - setStyle(elem, 'transition', transform + " " + options.duration + "ms " + options.easing); - } - /** - * Set the transform using the proper prefix - */ - function setTransform(elem, _a, _options) { - var x = _a.x, y = _a.y, scale = _a.scale, isSVG = _a.isSVG; - setStyle(elem, 'transform', "scale(" + scale + ") translate(" + x + "px, " + y + "px)"); - if (isSVG && isIE) { - var matrixValue = window.getComputedStyle(elem).getPropertyValue('transform'); - elem.setAttribute('transform', matrixValue); - } - } - /** - * Dimensions used in containment and focal point zooming - */ - function getDimensions(elem) { - var parent = elem.parentNode; - var style = window.getComputedStyle(elem); - var parentStyle = window.getComputedStyle(parent); - var rectElem = elem.getBoundingClientRect(); - var rectParent = parent.getBoundingClientRect(); - return { - elem: { - style: style, - width: rectElem.width, - height: rectElem.height, - top: rectElem.top, - bottom: rectElem.bottom, - left: rectElem.left, - right: rectElem.right, - margin: getBoxStyle(elem, 'margin', style), - border: getBoxStyle(elem, 'border', style) - }, - parent: { - style: parentStyle, - width: rectParent.width, - height: rectParent.height, - top: rectParent.top, - bottom: rectParent.bottom, - left: rectParent.left, - right: rectParent.right, - padding: getBoxStyle(parent, 'padding', parentStyle), - border: getBoxStyle(parent, 'border', parentStyle) - } - }; - } - - /** - * Determine if an element is attached to the DOM - * Panzoom requires this so events work properly - */ - function isAttached(elem) { - var doc = elem.ownerDocument; - var parent = elem.parentNode; - return (doc && - parent && - doc.nodeType === 9 && - parent.nodeType === 1 && - doc.documentElement.contains(parent)); - } - - function getClass(elem) { - return (elem.getAttribute('class') || '').trim(); - } - function hasClass(elem, className) { - return elem.nodeType === 1 && (" " + getClass(elem) + " ").indexOf(" " + className + " ") > -1; - } - function isExcluded(elem, options) { - for (var cur = elem; cur != null; cur = cur.parentNode) { - if (hasClass(cur, options.excludeClass) || options.exclude.indexOf(cur) > -1) { - return true; - } - } - return false; - } - - /** - * Determine if an element is SVG by checking the namespace - * Exception: the element itself should be treated like HTML - */ - var rsvg = /^http:[\w\.\/]+svg$/; - function isSVGElement(elem) { - return rsvg.test(elem.namespaceURI) && elem.nodeName.toLowerCase() !== 'svg'; - } - - function shallowClone(obj) { - var clone = {}; - for (var key in obj) { - if (obj.hasOwnProperty(key)) { - clone[key] = obj[key]; - } - } - return clone; - } - - var defaultOptions = { - animate: false, - canvas: false, - cursor: 'move', - disablePan: false, - disableZoom: false, - disableXAxis: false, - disableYAxis: false, - duration: 200, - easing: 'ease-in-out', - exclude: [], - excludeClass: 'panzoom-exclude', - handleStartEvent: function (e) { - e.preventDefault(); - e.stopPropagation(); - }, - maxScale: 4, - minScale: 0.125, - overflow: 'hidden', - panOnlyWhenZoomed: false, - relative: false, - setTransform: setTransform, - startX: 0, - startY: 0, - startScale: 1, - step: 0.3, - touchAction: 'none' - }; - function Panzoom(elem, options) { - if (!elem) { - throw new Error('Panzoom requires an element as an argument'); - } - if (elem.nodeType !== 1) { - throw new Error('Panzoom requires an element with a nodeType of 1'); - } - if (!isAttached(elem)) { - throw new Error('Panzoom should be called on elements that have been attached to the DOM'); - } - options = __assign(__assign({}, defaultOptions), options); - var isSVG = isSVGElement(elem); - var parent = elem.parentNode; - // Set parent styles - parent.style.overflow = options.overflow; - parent.style.userSelect = 'none'; - // This is important for mobile to - // prevent scrolling while panning - parent.style.touchAction = options.touchAction; - (options.canvas ? parent : elem).style.cursor = options.cursor; - // Set element styles - elem.style.userSelect = 'none'; - elem.style.touchAction = options.touchAction; - // The default for HTML is '50% 50%' - // The default for SVG is '0 0' - // SVG can't be changed in IE - setStyle(elem, 'transformOrigin', typeof options.origin === 'string' ? options.origin : isSVG ? '0 0' : '50% 50%'); - function resetStyle() { - parent.style.overflow = ''; - parent.style.userSelect = ''; - parent.style.touchAction = ''; - parent.style.cursor = ''; - elem.style.cursor = ''; - elem.style.userSelect = ''; - elem.style.touchAction = ''; - setStyle(elem, 'transformOrigin', ''); - } - function setOptions(opts) { - if (opts === void 0) { opts = {}; } - for (var key in opts) { - if (opts.hasOwnProperty(key)) { - options[key] = opts[key]; - } - } - // Handle option side-effects - if (opts.hasOwnProperty('cursor') || opts.hasOwnProperty('canvas')) { - parent.style.cursor = elem.style.cursor = ''; - (options.canvas ? parent : elem).style.cursor = options.cursor; - } - if (opts.hasOwnProperty('overflow')) { - parent.style.overflow = opts.overflow; - } - if (opts.hasOwnProperty('touchAction')) { - parent.style.touchAction = opts.touchAction; - elem.style.touchAction = opts.touchAction; - } - if (opts.hasOwnProperty('minScale') || - opts.hasOwnProperty('maxScale') || - opts.hasOwnProperty('contain')) { - setMinMax(); - } - } - var x = 0; - var y = 0; - var scale = 1; - var isPanning = false; - zoom(options.startScale, { animate: false }); - // Wait for scale to update - // for accurate dimensions - // to constrain initial values - setTimeout(function () { - setMinMax(); - pan(options.startX, options.startY, { animate: false }); - }); - function trigger(eventName, detail, opts) { - if (opts.silent) { - return; - } - var event = new CustomEvent(eventName, { detail: detail }); - elem.dispatchEvent(event); - } - function setTransformWithEvent(eventName, opts, originalEvent) { - var value = { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: originalEvent }; - requestAnimationFrame(function () { - if (typeof opts.animate === 'boolean') { - if (opts.animate) { - setTransition(elem, opts); - } - else { - setStyle(elem, 'transition', 'none'); - } - } - opts.setTransform(elem, value, opts); - }); - trigger(eventName, value, opts); - trigger('panzoomchange', value, opts); - return value; - } - function setMinMax() { - if (options.contain) { - var dims = getDimensions(elem); - var parentWidth = dims.parent.width - dims.parent.border.left - dims.parent.border.right; - var parentHeight = dims.parent.height - dims.parent.border.top - dims.parent.border.bottom; - var elemWidth = dims.elem.width / scale; - var elemHeight = dims.elem.height / scale; - var elemScaledWidth = parentWidth / elemWidth; - var elemScaledHeight = parentHeight / elemHeight; - if (options.contain === 'inside') { - options.maxScale = Math.min(elemScaledWidth, elemScaledHeight); - } - else if (options.contain === 'outside') { - options.minScale = Math.max(elemScaledWidth, elemScaledHeight); - } - } - } - function constrainXY(toX, toY, toScale, panOptions) { - var opts = __assign(__assign({}, options), panOptions); - var result = { x: x, y: y, opts: opts }; - if (!opts.force && (opts.disablePan || (opts.panOnlyWhenZoomed && scale === opts.startScale))) { - return result; - } - toX = parseFloat(toX); - toY = parseFloat(toY); - if (!opts.disableXAxis) { - result.x = (opts.relative ? x : 0) + toX; - } - if (!opts.disableYAxis) { - result.y = (opts.relative ? y : 0) + toY; - } - if (opts.contain === 'inside') { - var dims = getDimensions(elem); - result.x = Math.max(-dims.elem.margin.left - dims.parent.padding.left, Math.min(dims.parent.width - - dims.elem.width / toScale - - dims.parent.padding.left - - dims.elem.margin.left - - dims.parent.border.left - - dims.parent.border.right, result.x)); - result.y = Math.max(-dims.elem.margin.top - dims.parent.padding.top, Math.min(dims.parent.height - - dims.elem.height / toScale - - dims.parent.padding.top - - dims.elem.margin.top - - dims.parent.border.top - - dims.parent.border.bottom, result.y)); - } - else if (opts.contain === 'outside') { - var dims = getDimensions(elem); - var realWidth = dims.elem.width / scale; - var realHeight = dims.elem.height / scale; - var scaledWidth = realWidth * toScale; - var scaledHeight = realHeight * toScale; - var diffHorizontal = (scaledWidth - realWidth) / 2; - var diffVertical = (scaledHeight - realHeight) / 2; - var minX = (-(scaledWidth - dims.parent.width) - - dims.parent.padding.left - - dims.parent.border.left - - dims.parent.border.right + - diffHorizontal) / - toScale; - var maxX = (diffHorizontal - dims.parent.padding.left) / toScale; - result.x = Math.max(Math.min(result.x, maxX), minX); - var minY = (-(scaledHeight - dims.parent.height) - - dims.parent.padding.top - - dims.parent.border.top - - dims.parent.border.bottom + - diffVertical) / - toScale; - var maxY = (diffVertical - dims.parent.padding.top) / toScale; - result.y = Math.max(Math.min(result.y, maxY), minY); - } - return result; - } - function constrainScale(toScale, zoomOptions) { - var opts = __assign(__assign({}, options), zoomOptions); - var result = { scale: scale, opts: opts }; - if (!opts.force && opts.disableZoom) { - return result; - } - result.scale = Math.min(Math.max(toScale, opts.minScale), opts.maxScale); - return result; - } - function pan(toX, toY, panOptions, originalEvent) { - var result = constrainXY(toX, toY, scale, panOptions); - var opts = result.opts; - x = result.x; - y = result.y; - return setTransformWithEvent('panzoompan', opts, originalEvent); - } - function zoom(toScale, zoomOptions, originalEvent) { - var result = constrainScale(toScale, zoomOptions); - var opts = result.opts; - if (!opts.force && opts.disableZoom) { - return; - } - toScale = result.scale; - var toX = x; - var toY = y; - if (opts.focal) { - // The difference between the point after the scale and the point before the scale - // plus the current translation after the scale - // neutralized to no scale (as the transform scale will apply to the translation) - var focal = opts.focal; - toX = (focal.x / toScale - focal.x / scale + x * toScale) / toScale; - toY = (focal.y / toScale - focal.y / scale + y * toScale) / toScale; - } - var panResult = constrainXY(toX, toY, toScale, { relative: false, force: true }); - x = panResult.x; - y = panResult.y; - scale = toScale; - return setTransformWithEvent('panzoomzoom', opts, originalEvent); - } - function zoomInOut(isIn, zoomOptions) { - var opts = __assign(__assign(__assign({}, options), { animate: true }), zoomOptions); - return zoom(scale * Math.exp((isIn ? 1 : -1) * opts.step), opts); - } - function zoomIn(zoomOptions) { - return zoomInOut(true, zoomOptions); - } - function zoomOut(zoomOptions) { - return zoomInOut(false, zoomOptions); - } - function zoomToPoint(toScale, point, zoomOptions, originalEvent) { - var dims = getDimensions(elem); - // Instead of thinking of operating on the panzoom element, - // think of operating on the area inside the panzoom - // element's parent - // Subtract padding and border - var effectiveArea = { - width: dims.parent.width - - dims.parent.padding.left - - dims.parent.padding.right - - dims.parent.border.left - - dims.parent.border.right, - height: dims.parent.height - - dims.parent.padding.top - - dims.parent.padding.bottom - - dims.parent.border.top - - dims.parent.border.bottom - }; - // Adjust the clientX/clientY to ignore the area - // outside the effective area - var clientX = point.clientX - - dims.parent.left - - dims.parent.padding.left - - dims.parent.border.left - - dims.elem.margin.left; - var clientY = point.clientY - - dims.parent.top - - dims.parent.padding.top - - dims.parent.border.top - - dims.elem.margin.top; - // Adjust the clientX/clientY for HTML elements, - // because they have a transform-origin of 50% 50% - if (!isSVG) { - clientX -= dims.elem.width / scale / 2; - clientY -= dims.elem.height / scale / 2; - } - // Convert the mouse point from it's position over the - // effective area before the scale to the position - // over the effective area after the scale. - var focal = { - x: (clientX / effectiveArea.width) * (effectiveArea.width * toScale), - y: (clientY / effectiveArea.height) * (effectiveArea.height * toScale) - }; - return zoom(toScale, __assign(__assign({ animate: false }, zoomOptions), { focal: focal }), originalEvent); - } - function zoomWithWheel(event, zoomOptions) { - // Need to prevent the default here - // or it conflicts with regular page scroll - event.preventDefault(); - var opts = __assign(__assign({}, options), zoomOptions); - // Normalize to deltaX in case shift modifier is used on Mac - var delta = event.deltaY === 0 && event.deltaX ? event.deltaX : event.deltaY; - var wheel = delta < 0 ? 1 : -1; - var toScale = constrainScale(scale * Math.exp((wheel * opts.step) / 3), opts).scale; - return zoomToPoint(toScale, event, opts); - } - function reset(resetOptions) { - var opts = __assign(__assign(__assign({}, options), { animate: true, force: true }), resetOptions); - scale = constrainScale(opts.startScale, opts).scale; - var panResult = constrainXY(opts.startX, opts.startY, scale, opts); - x = panResult.x; - y = panResult.y; - return setTransformWithEvent('panzoomreset', opts); - } - var origX; - var origY; - var startClientX; - var startClientY; - var startScale; - var startDistance; - var pointers = []; - function handleDown(event) { - // Don't handle this event if the target is excluded - if (isExcluded(event.target, options)) { - return; - } - addPointer(pointers, event); - isPanning = true; - options.handleStartEvent(event); - origX = x; - origY = y; - trigger('panzoomstart', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); - // This works whether there are multiple - // pointers or not - var point = getMiddle(pointers); - startClientX = point.clientX; - startClientY = point.clientY; - startScale = scale; - startDistance = getDistance(pointers); - } - function move(event) { - if (!isPanning || - origX === undefined || - origY === undefined || - startClientX === undefined || - startClientY === undefined) { - return; - } - addPointer(pointers, event); - var current = getMiddle(pointers); - if (pointers.length > 1) { - // Use the distance between the first 2 pointers - // to determine the current scale - var diff = getDistance(pointers) - startDistance; - var toScale = constrainScale((diff * options.step) / 80 + startScale).scale; - zoomToPoint(toScale, current); - } - pan(origX + (current.clientX - startClientX) / scale, origY + (current.clientY - startClientY) / scale, { - animate: false - }, event); - } - function handleUp(event) { - // Don't call panzoomend when panning with 2 touches - // until both touches end - if (pointers.length === 1) { - trigger('panzoomend', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); - } - // Note: don't remove all pointers - // Can restart without having to reinitiate all of them - // Remove the pointer regardless of the isPanning state - removePointer(pointers, event); - if (!isPanning) { - return; - } - isPanning = false; - origX = origY = startClientX = startClientY = undefined; - } - var bound = false; - function bind() { - if (bound) { - return; - } - bound = true; - onPointer('down', options.canvas ? parent : elem, handleDown); - onPointer('move', document, move, { passive: true }); - onPointer('up', document, handleUp, { passive: true }); - } - function destroy() { - bound = false; - destroyPointer('down', options.canvas ? parent : elem, handleDown); - destroyPointer('move', document, move); - destroyPointer('up', document, handleUp); - } - if (!options.noBind) { - bind(); - } - return { - bind: bind, - destroy: destroy, - eventNames: events, - getPan: function () { return ({ x: x, y: y }); }, - getScale: function () { return scale; }, - getOptions: function () { return shallowClone(options); }, - pan: pan, - reset: reset, - resetStyle: resetStyle, - setOptions: setOptions, - setStyle: function (name, value) { return setStyle(elem, name, value); }, - zoom: zoom, - zoomIn: zoomIn, - zoomOut: zoomOut, - zoomToPoint: zoomToPoint, - zoomWithWheel: zoomWithWheel - }; - } - Panzoom.defaultOptions = defaultOptions; - - return Panzoom; - -}))); diff --git a/dist/panzoom.min.js b/dist/panzoom.min.js deleted file mode 100644 index f524fa56..00000000 --- a/dist/panzoom.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/** -* Panzoom for panning and zooming elements using CSS transforms -* Copyright Timmy Willison and other contributors -* https://github.com/timmywil/panzoom/blob/master/MIT-License.txt -*/ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Panzoom=e()}(this,function(){"use strict";var C=function(){return(C=Object.assign||function(t){for(var e,n=1,o=arguments.length;n void, eventOpts?: boolean | AddEventListenerOptions): void; -export declare function destroyPointer(event: 'down' | 'move' | 'up', elem: HTMLElement | SVGElement | Document, handler: (event: PointerEvent) => void): void; diff --git a/dist/src/isAttached.d.ts b/dist/src/isAttached.d.ts deleted file mode 100644 index 64be8691..00000000 --- a/dist/src/isAttached.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/** - * Determine if an element is attached to the DOM - * Panzoom requires this so events work properly - */ -export default function isAttached(elem: HTMLElement | SVGElement | Document): boolean; diff --git a/dist/src/isExcluded.d.ts b/dist/src/isExcluded.d.ts deleted file mode 100644 index dbf1676f..00000000 --- a/dist/src/isExcluded.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { PanzoomOptions } from './types'; -export default function isExcluded(elem: Element, options: PanzoomOptions): boolean; diff --git a/dist/src/isSVGElement.d.ts b/dist/src/isSVGElement.d.ts deleted file mode 100644 index 965bcf54..00000000 --- a/dist/src/isSVGElement.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function isSVGElement(elem: HTMLElement | SVGElement): boolean; diff --git a/dist/src/panzoom.d.ts b/dist/src/panzoom.d.ts deleted file mode 100644 index 2676ab70..00000000 --- a/dist/src/panzoom.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Panzoom for panning and zooming elements using CSS transforms - * https://github.com/timmywil/panzoom - * - * Copyright Timmy Willison and other contributors - * Released under the MIT license - * https://github.com/timmywil/panzoom/blob/master/MIT-License.txt - * - */ -import './polyfills'; -import { PanzoomObject, PanzoomOptions } from './types'; -declare function Panzoom(elem: HTMLElement | SVGElement, options?: Omit): PanzoomObject; -declare namespace Panzoom { - var defaultOptions: PanzoomOptions; -} -export { PanzoomObject, PanzoomOptions }; -export default Panzoom; diff --git a/dist/src/pointers.d.ts b/dist/src/pointers.d.ts deleted file mode 100644 index 7a1526c8..00000000 --- a/dist/src/pointers.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Utilites for working with multiple pointer events - */ -export declare function addPointer(pointers: PointerEvent[], event: PointerEvent): void; -export declare function removePointer(pointers: PointerEvent[], event: PointerEvent): void; -/** - * Calculates a center point between - * the given pointer events, for panning - * with multiple pointers. - */ -export declare function getMiddle(pointers: PointerEvent[]): Pick; -/** - * Calculates the distance between two points - * for pinch zooming. - * Limits to the first 2 - */ -export declare function getDistance(pointers: PointerEvent[]): number; diff --git a/dist/src/shallowClone.d.ts b/dist/src/shallowClone.d.ts deleted file mode 100644 index 76570a92..00000000 --- a/dist/src/shallowClone.d.ts +++ /dev/null @@ -1 +0,0 @@ -export default function shallowClone(obj: any): any; diff --git a/dist/src/types.d.ts b/dist/src/types.d.ts deleted file mode 100644 index 0fc04f75..00000000 --- a/dist/src/types.d.ts +++ /dev/null @@ -1,352 +0,0 @@ -import { setTransform } from './css'; -export declare type PanzoomEvent = 'panzoomstart' | 'panzoomchange' | 'panzoompan' | 'panzoomzoom' | 'panzoomreset' | 'panzoomend'; -export interface PanzoomEventDetail { - x: number; - y: number; - scale: number; - isSVG: boolean; - originalEvent: PointerEvent | TouchEvent | MouseEvent; -} -interface MiscOptions { - /** Whether to animate transitions */ - animate?: boolean; - /** - * This option treats the Panzoom element's parent - * as a canvas. Effectively, Panzoom binds the - * down handler to the parent instead of the Panzoom - * element, so that pointer events anywhere on the "canvas" - * moves its children. See issue #472. - * - * **Note**: setting this option to `true` also changes - * where the `cursor` style is applied (i.e. the parent). - */ - canvas?: boolean; - /** Duration of the transition (ms) */ - duration?: number; - /** CSS Easing used for transitions */ - easing?: string; - /** - * Add elements to this array that should be excluded - * from Panzoom handling. - * Ancestors of event targets are also checked. - * e.g. links and buttons that should not propagate the click event. - */ - exclude?: Element[]; - /** - * Add this class to any element within the Panzoom element - * that you want to exclude from Panzoom handling. That - * element's children will also be excluded. - * e.g. links and buttons that should not propagate the click event. - */ - excludeClass?: string; - /** - * `force` should be used sparingly to temporarily - * override and ignore options such as disablePan, - * disableZoom, and panOnlyWhenZoomed. - * This option cannot be passed to the - * Panzoom constructor or setOptions (to avoid - * setting this option globally). - * - * ```js - * // Overrides disablePan and panOnlyWhenZoomed - * panzoom.pan(50, 100, { force: true }) - * // Overrides disableZoom - * panzoom.zoom(1, { force: true }) - * ``` - */ - force?: boolean; - /** - * On the first pointer event, when panning starts, - * the default Panzoom behavior is to call - * `event.preventDefault()` and `event.stopPropagation()` - * on that event. The former is almost certainly a necessity; - * the latter enables Panzoom elements within Panzoom elements. - * - * But there are some cases where the default is - * not the desired behavior. Set this option to override that behavior. - * - * ```js - * // Only call preventDefault() - * Panzoom(elem, { - * handleStartEvent: (event) => { - * event.preventDefault() - * } - * }) - * // Do nothing. - * // This can change dragging behavior on mobile. - * Panzoom(elem, { - * handleStartEvent: () => {} - * }) - * ``` - */ - handleStartEvent?: (event: Event) => void; - /** - * Skip binding the default Panzoom event listeners - */ - noBind?: boolean; - /** - * **Change this at your own risk.** - * The `transform-origin` is the origin from which transforms are applied. - * Default: `'50% 50%'` for HTML and `'0 0'` for SVG. - * The defaults are set because changing the `transform-origin` on - * SVG elements doesn't work in IE. - * - * Changing this should work with many things, but - * it will break focal point zooming, which assumes the - * defaults are set to do the more complicated calculations. - * - * And again, changing this for SVG in IE doesn't work at all. - */ - origin?: string; - /** The overflow CSS value for the parent. Defaults to 'hidden' */ - overflow?: string; - /** - * Override the transform setter. - * This is exposed mostly so the user could - * set other parts of a transform - * aside from scale and translate. - * Default is defined in src/css.ts. - * - * ```js - * // This example always sets a rotation - * // when setting the scale and translation - * const panzoom = Panzoom(elem, { - * setTransform: (elem, { scale, x, y }) => { - * panzoom.setStyle('transform', `rotate(0.5turn) scale(${scale}) translate(${x}px, ${y}px)`) - * } - * }) - * ``` - */ - setTransform?: typeof setTransform; - /** Silence all events */ - silent?: boolean; - /** X Value used to set the beginning transform */ - startX?: number; - /** Y Value used to set the beginning transform */ - startY?: number; - /** Scale used to set the beginning transform */ - startScale?: number; - /** - * This value is used to set touch-action on both the - * Panzoom element and its parent. - * It is needed because that the native scroll on mobile - * interferes with panning and pinch zooming. - * Set this to empty string to re-enable scrolling - * on mobile, but note that both scrolling and panning - * cannot work at the same time. - */ - touchAction?: string; - /** Pass through any options like data */ - [key: string]: any; -} -interface PanSpecificOptions { - /** - * Contain the panzoom element either - * inside or outside the parent. - * Inside: The panzoom element is smaller - * than its parent and cannot be panned - * to the outside. - * Outside: The panzoom element is larger - * than its parent and cannot be panned - * to the inside. In other words, no - * empty space around the element will be shown. - * - * **Note**: the containment pan adjustment is not affected by the `disablePan` option. - */ - contain?: 'inside' | 'outside'; - /** The cursor style to set on the panzoom element */ - cursor?: string; - /** - * Disable panning functionality. - * Note: disablePan does not affect focal point zooming or the contain option. - * The element will still pan accordingly. - */ - disablePan?: boolean; - /** Pan only on the Y axis */ - disableXAxis?: boolean; - /** Pan only on the X axis */ - disableYAxis?: boolean; - /** When passing x and y values to .pan(), treat the values as relative to their current values */ - relative?: boolean; - /** Disable panning while the scale is equal to the starting value */ - panOnlyWhenZoomed?: boolean; -} -interface ZoomSpecificOptions { - /** Disable zooming functionality */ - disableZoom?: boolean; - /** - * Zoom to the given point on the panzoom element. - * This point is expected to be relative to - * the panzoom element's dimensions and is unrelated - * to the parent dimensions. - */ - focal?: { - x: number; - y: number; - }; - /** The minimum scale when zooming */ - minScale?: number; - /** The maximum scale when zooming */ - maxScale?: number; - /** The step affects zoom calculation when zooming with a mouse wheel, when pinch zooming, or when using zoomIn/zoomOut */ - step?: number; -} -export declare type PanOptions = MiscOptions & PanSpecificOptions; -export declare type ZoomOptions = MiscOptions & ZoomSpecificOptions; -export declare type PanzoomOptions = PanOptions & ZoomOptions & MiscOptions; -export interface CurrentValues { - x: number; - y: number; - scale: number; - isSVG?: boolean; -} -export interface PanzoomObject { - /** - * Bind the default down, move, and up event listeners to the Panzoom element. - * This does not normally need to be called. - * It gets called by default when creating a new Panzoom object, - * but can be skipped with the `noBind` option. - */ - bind: () => void; - /** Remove all event listeners bound to the the Panzoom element */ - destroy: () => void; - /** - * This object exposes the event names used by Panzoom, - * depending on the current browser's support for - * Pointer or Touch events. - */ - eventNames: { - down: string; - move: string; - up: string; - }; - /** Get the current x/y translation */ - getPan: () => { - x: number; - y: number; - }; - /** Get the current scale */ - getScale: () => number; - /** Returns a _copy_ of the current options object */ - getOptions: () => PanzoomOptions; - /** - * Pan the Panzoom element to the given x and y coordinates - * - * ```js - * // Translates the element to 50px, 100px - * panzoom.pan(50, 100) - * // Pans the element right 10px and down 10px from its current position - * panzoom.pan(10, 10, { relative: true }) - * ``` - */ - pan: (x: number | string, y: number | string, panOptions?: PanOptions) => CurrentValues; - /** - * Reset the pan and zoom to startX, startY, and startScale. - * Animates by default, ignoring the global option. - * Pass `{ animate: false }` to override. - * Reset ignores the `disablePan`, `disableZoom`, and `panOnlyWhenZoomed` options. - * Pass `{ force: false }` to override. - * - * ```js - * panzoom.reset() - * panzoom.reset({ animate: false }) - * ``` - */ - reset: (resetOptions?: PanzoomOptions) => CurrentValues; - /** - * Reset the styles set on the Panzoom element - * and its parent (such as overflow, cursor, etc.) - * - * ```js - * panzoom.resetStyle() - * ``` - */ - /** Change options for the Panzoom instance */ - resetStyle: () => void; - /** - * Change an option on a Panzoom instance. - * Setting some options will have side-effects. - * For instance, changing the cursor option - * will also set the cursor style. - * - * ```js - * const panzoom = Panzoom(elem, { cursor: 'move' }) - * // ... - * panzoom.setOptions({ cursor: 'default' }) - * ``` - */ - setOptions: (options?: PanzoomOptions) => void; - /** A convenience method for setting prefixed styles on the Panzoom element */ - setStyle: (name: string, value: string) => void; - /** - * Zoom the Panzoom element to the given scale - * - * ```js - * panzoom.zoom(2.2) - * panzoom.zoom(2.2, { animate: true }) - * ``` - */ - zoom: (scale: number, zoomOptions?: ZoomOptions) => CurrentValues; - /** - * Zoom in using the predetermined increment set in options. - * Animates by default, ignoring the global option. - * Pass `{ animate: false }` to override. - * - * ```js - * panzoom.zoomIn() - * panzoom.zoomIn({ animate: false }) - * ``` - */ - zoomIn: (zoomOptions?: ZoomOptions) => CurrentValues; - /** - * Zoom out using the predetermined increment set in options. - * Animates by default, ignoring the global option. - * Pass `{ animate: false }` to override. - * - * ```js - * panzoom.zoomOut() - * panzoom.zoomOut({ animate: false }) - * ``` - */ - zoomOut: (zoomOptions?: ZoomOptions) => CurrentValues; - /** - * Zoom the Panzoom element to a focal point using - * the given pointer/touch/mouse event or constructed point. - * The clientX/clientY values should be calculated - * the same way as a `pointermove` event on the Panzoom element's parent. - * - * ```js - * panzoom.zoomToPoint(1.2, pointerEvent) - * ``` - */ - zoomToPoint: (scale: number, point: { - clientX: number; - clientY: number; - }, zoomOptions?: ZoomOptions) => CurrentValues; - /** - * Zoom the Panzoom element to a focal point using the given WheelEvent - * - * - * This is a convenience function that may not handle all use cases. - * Other cases should handroll solutions using the `zoomToPoint` - * method or the `zoom` method's focal option. - * - * **Note**: the focal point zooming pan adjustment is not affected by the `disablePan` option. - * - * ```js - * // Bind to mousewheel - * elem.parentElement.addEventListener('wheel', panzoom.zoomWithWheel) - * // Bind to shift+mousewheel - * elem.parentElement.addEventListener('wheel', function(event) { - * if (!event.shiftKey) return - * // Panzoom will automatically use `deltaX` here instead - * // of `deltaY`. On a mac, the shift modifier usually - * // translates to horizontal scrolling, but Panzoom assumes - * // the desired behavior is zooming. - * panzoom.zoomWithWheel(event) - * }) - * ``` - */ - zoomWithWheel: (event: WheelEvent, zoomOptions?: ZoomOptions) => CurrentValues; -} -export {}; From e12c71f1dca3e65524dd5fd6d35747b312822884 Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Tue, 11 May 2021 11:23:58 -0400 Subject: [PATCH 03/12] build(husky): commit hooks weren't executable on mac --- .husky/commit-msg | 0 .husky/pre-commit | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 .husky/commit-msg mode change 100644 => 100755 .husky/pre-commit diff --git a/.husky/commit-msg b/.husky/commit-msg old mode 100644 new mode 100755 diff --git a/.husky/pre-commit b/.husky/pre-commit old mode 100644 new mode 100755 From 4cf96c6cd39a305a59795f43b3913cc08e33a6f2 Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Tue, 11 May 2021 11:32:34 -0400 Subject: [PATCH 04/12] chore(package): upgrade dependencies --- package-lock.json | 334 ++++++++++++++++++---------------------------- package.json | 26 ++-- 2 files changed, 145 insertions(+), 215 deletions(-) diff --git a/package-lock.json b/package-lock.json index 36deb1e2..8a9bb8fc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1718,9 +1718,9 @@ "dev": true }, "@eslint/eslintrc": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", - "integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", + "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", "dev": true, "requires": { "ajv": "^6.12.4", @@ -1863,12 +1863,12 @@ "dev": true }, "@octokit/plugin-rest-endpoint-methods": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.0.0.tgz", - "integrity": "sha512-Jc7CLNUueIshXT+HWt6T+M0sySPjF32mSFQAK7UfAg8qGeRI6OM1GSBxDLwbXjkqy2NVdnqCedJcP1nC785JYg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.0.1.tgz", + "integrity": "sha512-vvWbPtPqLyIzJ7A4IPdTl+8IeuKAwMJ4LjvmqWOOdfSuqWQYZXq2CEd0hsnkidff2YfKlguzujHs/reBdAx8Sg==", "dev": true, "requires": { - "@octokit/types": "^6.13.0", + "@octokit/types": "^6.13.1", "deprecation": "^2.3.1" } }, @@ -1898,15 +1898,15 @@ } }, "@octokit/rest": { - "version": "18.5.2", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.5.2.tgz", - "integrity": "sha512-Kz03XYfKS0yYdi61BkL9/aJ0pP2A/WK5vF/syhu9/kY30J8He3P68hv9GRpn8bULFx2K0A9MEErn4v3QEdbZcw==", + "version": "18.5.3", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-18.5.3.tgz", + "integrity": "sha512-KPAsUCr1DOdLVbZJgGNuE/QVLWEaVBpFQwDAz/2Cnya6uW2wJ/P5RVGk0itx7yyN1aGa8uXm2pri4umEqG1JBA==", "dev": true, "requires": { "@octokit/core": "^3.2.3", "@octokit/plugin-paginate-rest": "^2.6.2", "@octokit/plugin-request-log": "^1.0.2", - "@octokit/plugin-rest-endpoint-methods": "5.0.0" + "@octokit/plugin-rest-endpoint-methods": "5.0.1" } }, "@octokit/types": { @@ -2171,9 +2171,9 @@ } }, "@types/react-dom": { - "version": "17.0.3", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.3.tgz", - "integrity": "sha512-4NnJbCeWE+8YBzupn/YrJxZ8VnjcJq5iR1laqQ1vkpQgBiA7bwk0Rp24fxsdNinzJY2U+HHS4dJJDPdoMjdJ7w==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.4.tgz", + "integrity": "sha512-Wb6rlnPJfqbhpkvYN39y1NM/pOGGPzzIRquu0RdUMvTwgXNvASFO7pdtrtvyxGTQNb9wzBaQxXAWDdEqegZw2A==", "dev": true, "requires": { "@types/react": "*" @@ -2195,13 +2195,13 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.22.1.tgz", - "integrity": "sha512-kVTAghWDDhsvQ602tHBc6WmQkdaYbkcTwZu+7l24jtJiYvm9l+/y/b2BZANEezxPDiX5MK2ZecE+9BFi/YJryw==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.23.0.tgz", + "integrity": "sha512-tGK1y3KIvdsQEEgq6xNn1DjiFJtl+wn8JJQiETtCbdQxw1vzjXyAaIkEmO2l6Nq24iy3uZBMFQjZ6ECf1QdgGw==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.22.1", - "@typescript-eslint/scope-manager": "4.22.1", + "@typescript-eslint/experimental-utils": "4.23.0", + "@typescript-eslint/scope-manager": "4.23.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "lodash": "^4.17.15", @@ -2222,55 +2222,55 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.22.1.tgz", - "integrity": "sha512-svYlHecSMCQGDO2qN1v477ax/IDQwWhc7PRBiwAdAMJE7GXk5stF4Z9R/8wbRkuX/5e9dHqbIWxjeOjckK3wLQ==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.23.0.tgz", + "integrity": "sha512-WAFNiTDnQfrF3Z2fQ05nmCgPsO5o790vOhmWKXbbYQTO9erE1/YsFot5/LnOUizLzU2eeuz6+U/81KV5/hFTGA==", "dev": true, "requires": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.22.1", - "@typescript-eslint/types": "4.22.1", - "@typescript-eslint/typescript-estree": "4.22.1", + "@typescript-eslint/scope-manager": "4.23.0", + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/typescript-estree": "4.23.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" } }, "@typescript-eslint/parser": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.22.1.tgz", - "integrity": "sha512-l+sUJFInWhuMxA6rtirzjooh8cM/AATAe3amvIkqKFeMzkn85V+eLzb1RyuXkHak4dLfYzOmF6DXPyflJvjQnw==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.23.0.tgz", + "integrity": "sha512-wsvjksHBMOqySy/Pi2Q6UuIuHYbgAMwLczRl4YanEPKW5KVxI9ZzDYh3B5DtcZPQTGRWFJrfcbJ6L01Leybwug==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.22.1", - "@typescript-eslint/types": "4.22.1", - "@typescript-eslint/typescript-estree": "4.22.1", + "@typescript-eslint/scope-manager": "4.23.0", + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/typescript-estree": "4.23.0", "debug": "^4.1.1" } }, "@typescript-eslint/scope-manager": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.22.1.tgz", - "integrity": "sha512-d5bAiPBiessSmNi8Amq/RuLslvcumxLmyhf1/Xa9IuaoFJ0YtshlJKxhlbY7l2JdEk3wS0EnmnfeJWSvADOe0g==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.23.0.tgz", + "integrity": "sha512-ZZ21PCFxPhI3n0wuqEJK9omkw51wi2bmeKJvlRZPH5YFkcawKOuRMQMnI8mH6Vo0/DoHSeZJnHiIx84LmVQY+w==", "dev": true, "requires": { - "@typescript-eslint/types": "4.22.1", - "@typescript-eslint/visitor-keys": "4.22.1" + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/visitor-keys": "4.23.0" } }, "@typescript-eslint/types": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.22.1.tgz", - "integrity": "sha512-2HTkbkdAeI3OOcWbqA8hWf/7z9c6gkmnWNGz0dKSLYLWywUlkOAQ2XcjhlKLj5xBFDf8FgAOF5aQbnLRvgNbCw==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.23.0.tgz", + "integrity": "sha512-oqkNWyG2SLS7uTWLZf6Sr7Dm02gA5yxiz1RP87tvsmDsguVATdpVguHr4HoGOcFOpCvx9vtCSCyQUGfzq28YCw==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.22.1.tgz", - "integrity": "sha512-p3We0pAPacT+onSGM+sPR+M9CblVqdA9F1JEdIqRVlxK5Qth4ochXQgIyb9daBomyQKAXbygxp1aXQRV0GC79A==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.23.0.tgz", + "integrity": "sha512-5Sty6zPEVZF5fbvrZczfmLCOcby3sfrSPu30qKoY1U3mca5/jvU5cwsPb/CO6Q3ByRjixTMIVsDkqwIxCf/dMw==", "dev": true, "requires": { - "@typescript-eslint/types": "4.22.1", - "@typescript-eslint/visitor-keys": "4.22.1", + "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/visitor-keys": "4.23.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", @@ -2290,12 +2290,12 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.22.1.tgz", - "integrity": "sha512-WPkOrIRm+WCLZxXQHCi+WG8T2MMTUFR70rWjdWYddLT7cEfb2P4a3O/J2U1FBVsSFTocXLCoXWY6MZGejeStvQ==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.23.0.tgz", + "integrity": "sha512-5PNe5cmX9pSifit0H+nPoQBXdbNzi5tOEec+3riK+ku4e3er37pKxMKDH5Ct5Y4fhWxcD4spnlYjxi9vXbSpwg==", "dev": true, "requires": { - "@typescript-eslint/types": "4.22.1", + "@typescript-eslint/types": "4.23.0", "eslint-visitor-keys": "^2.0.0" } }, @@ -2452,24 +2452,24 @@ } }, "@webpack-cli/configtest": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.2.tgz", - "integrity": "sha512-3OBzV2fBGZ5TBfdW50cha1lHDVf9vlvRXnjpVbJBa20pSZQaSkMJZiwA8V2vD9ogyeXn8nU5s5A6mHyf5jhMzA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz", + "integrity": "sha512-WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==", "dev": true }, "@webpack-cli/info": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.3.tgz", - "integrity": "sha512-lLek3/T7u40lTqzCGpC6CAbY6+vXhdhmwFRxZLMnRm6/sIF/7qMpT8MocXCRQfz0JAh63wpbXLMnsQ5162WS7Q==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.4.tgz", + "integrity": "sha512-ogE2T4+pLhTTPS/8MM3IjHn0IYplKM4HbVNMCWA9N4NrdPzunwenpCsqKEXyejMfRu6K8mhauIPYf8ZxWG5O6g==", "dev": true, "requires": { "envinfo": "^7.7.3" } }, "@webpack-cli/serve": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.1.tgz", - "integrity": "sha512-0qXvpeYO6vaNoRBI52/UsbcaBydJCggoBBnIo/ovQQdn6fug0BgwsjorV1hVS7fMqGVTZGcVxv8334gjmbj5hw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz", + "integrity": "sha512-xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==", "dev": true }, "@xtuc/ieee754": { @@ -3845,9 +3845,9 @@ "dev": true }, "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.1.1.tgz", + "integrity": "sha512-kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ==", "dev": true }, "cipher-base": { @@ -4358,9 +4358,9 @@ } }, "concurrently": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-6.0.2.tgz", - "integrity": "sha512-u+1Q0dJG5BidgUTpz9CU16yoHTt/oApFDQ3mbvHwSDgMjU7aGqy0q8ZQyaZyaNxdwRKTD872Ux3Twc6//sWA+Q==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-6.1.0.tgz", + "integrity": "sha512-jy+xj49pvqeKjc2TAVXRIhrgPG51eBKDZti0kZ41kaWk9iLbyWBjH6KMFpW7peOLkEymD+ZM83Lx6UEy3N/M9g==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -5410,9 +5410,9 @@ "dev": true }, "date-fns": { - "version": "2.21.2", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.21.2.tgz", - "integrity": "sha512-FMkG7pIPx64mGIpS2LOb3Wp3O606H/hatoiz7G0oiYWai1izdM4tF1dd7QABv2NogkIDI4wxsfLLFQSuVvDHgA==", + "version": "2.21.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.21.3.tgz", + "integrity": "sha512-HeYdzCaFflc1i4tGbj7JKMjM4cKGYoyxwcIIkHzNgCkX8xXDNJDZXgDDVchIWpN4eQc3lH37WarduXFZJOtxfw==", "dev": true }, "date-format": { @@ -6104,9 +6104,9 @@ } }, "enhanced-resolve": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.0.tgz", - "integrity": "sha512-Sl3KRpJA8OpprrtaIswVki3cWPiPKxXuFxJXBp+zNb6s6VwNWwFRUdtmzd2ReUut8n+sCPx7QCtQ7w5wfJhSgQ==", + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz", + "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==", "dev": true, "requires": { "graceful-fs": "^4.2.4", @@ -6233,13 +6233,13 @@ "dev": true }, "eslint": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.25.0.tgz", - "integrity": "sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.26.0.tgz", + "integrity": "sha512-4R1ieRf52/izcZE7AlLy56uIHHDLT74Yzz2Iv2l6kDaYvEu9x+wMB5dZArVL8SYGXSYV2YAg70FcW5Y5nGGNIg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.0", + "@eslint/eslintrc": "^0.4.1", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -7708,9 +7708,9 @@ "dev": true }, "handlebars": { - "version": "4.7.6", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", - "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", "dev": true, "requires": { "minimist": "^1.2.5", @@ -7725,12 +7725,6 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true } } }, @@ -8612,14 +8606,6 @@ "dev": true, "requires": { "ci-info": "^3.1.1" - }, - "dependencies": { - "ci-info": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.1.1.tgz", - "integrity": "sha512-kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ==", - "dev": true - } } }, "is-core-module": { @@ -9695,9 +9681,9 @@ } }, "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, "lodash.clonedeep": { @@ -9712,12 +9698,6 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, "lodash.ismatch": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz", @@ -9761,9 +9741,9 @@ } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dev": true, "requires": { "ansi-styles": "^4.1.0", @@ -9979,23 +9959,14 @@ }, "dependencies": { "hosted-git-info": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.7.tgz", - "integrity": "sha512-fWqc0IcuXs+BmE9orLDyVykAG9GJtGLGuZAAqgcckPgv5xad4AcXGIv8galtQvlwutxSlaMcdw7BUtq2EIvqCQ==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", "dev": true, "requires": { "lru-cache": "^6.0.0" } }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, "normalize-package-data": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz", @@ -10029,12 +10000,6 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true } } }, @@ -10207,9 +10172,9 @@ } }, "mocha": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.3.2.tgz", - "integrity": "sha512-UdmISwr/5w+uXLPKspgoV7/RXZwKRTiTjJ2/AC5ZiEztIoOYdfKb19+9jNmEInzx5pBsCyJQzarAxqIGBNYJhg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", + "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", "dev": true, "requires": { "@ungap/promise-all-settled": "1.1.2", @@ -10260,22 +10225,6 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" - } - }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -10347,13 +10296,6 @@ "path-exists": "^4.0.0" } }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10461,9 +10403,9 @@ } }, "y18n": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz", - "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, "yargs": { @@ -15499,9 +15441,9 @@ "dev": true }, "prettier": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.0.tgz", + "integrity": "sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==", "dev": true }, "prettier-linter-helpers": { @@ -15988,15 +15930,15 @@ "dev": true }, "release-it": { - "version": "14.6.1", - "resolved": "https://registry.npmjs.org/release-it/-/release-it-14.6.1.tgz", - "integrity": "sha512-noBho2997G3yrm6YvdLJj4Ua2SCFOU7ajCqtvteI3DZtpM1IhiyXSgcn2Q5irq8lTNK0it4eiNq9TSrAWNYDkA==", + "version": "14.6.2", + "resolved": "https://registry.npmjs.org/release-it/-/release-it-14.6.2.tgz", + "integrity": "sha512-rjRe2cC59ueTUGS2rkwI5JEeN0DQlU2eeq4nrCQcwQXv5IzC+9uPd7EvoUT7VDwJ4ZNu1Oh8DZVQqrtDzVboUg==", "dev": true, "requires": { "@iarna/toml": "2.2.5", - "@octokit/rest": "18.5.2", + "@octokit/rest": "18.5.3", "async-retry": "1.3.1", - "chalk": "4.1.0", + "chalk": "4.1.1", "cosmiconfig": "7.0.0", "debug": "4.3.1", "deprecated-obj": "2.0.0", @@ -16033,9 +15975,9 @@ } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dev": true, "requires": { "ansi-styles": "^4.1.0", @@ -17719,14 +17661,13 @@ } }, "table": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.6.0.tgz", - "integrity": "sha512-iZMtp5tUvcnAdtHpZTWLPF0M7AgiQsURR2DwmxnJwSy8I3+cY+ozzVvYha3BOLG2TB+L0CqjIz+91htuj6yCXg==", + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.0.tgz", + "integrity": "sha512-SAM+5p6V99gYiiy2gT5ArdzgM1dLDed0nkrWmG6Fry/bUS/m9x83BwpJUOf1Qj/x2qJd+thL6IkIx7qPGRxqBw==", "dev": true, "requires": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", - "lodash.flatten": "^4.4.0", "lodash.truncate": "^4.4.2", "slice-ansi": "^4.0.0", "string-width": "^4.2.0", @@ -17734,9 +17675,9 @@ }, "dependencies": { "ajv": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.2.0.tgz", - "integrity": "sha512-WSNGFuyWd//XO8n/m/EaOlNLtO0yL8EXT/74LqT4khdhpZjP7lkj/kT5uwRmGitKEVp/Oj7ZUHeGfPtgHhQ5CA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.3.0.tgz", + "integrity": "sha512-RYE7B5An83d7eWnDR8kbdaIFqmKCNsP16ay1hDbJEU+sa0e3H9SebskCt0Uufem6cfAVu7Col6ubcn/W+Sm8/Q==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -18076,9 +18017,9 @@ "dev": true }, "ts-loader": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.1.1.tgz", - "integrity": "sha512-u91MdIE4rtN/06Q881uUzVeMoYy+CdFXoanCQXVGRubKKxgLjqQ/H9nkDbp6klkiPv3t18KLjZbEofkJodM3ow==", + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.1.2.tgz", + "integrity": "sha512-ryMgATvLLl+z8zQvdlm6Pep0slmwxFWIEnq/5VdiLVjqQXnFJgO+qNLGIIP+d2N2jsFZ9MibZCVDb2bSp7OmEA==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -18289,9 +18230,9 @@ "dev": true }, "typedoc-plugin-markdown": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.7.2.tgz", - "integrity": "sha512-SBGYKSJO48oGEXF9vC1ldcuqNyOC17st6LXy9/KMQ5tSGY0NRW8ldlBXI0PYrci+IbeXlkUfyhN0n3ud/2/VjQ==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.8.0.tgz", + "integrity": "sha512-TVyz7hnVa7MpFQ26U4kCmsCoExtVi9OHD70Tijo9d3G0qGDxRWw3X9EomPThi54CLszLEj/MNSRsVbylNc9EEQ==", "dev": true, "requires": { "handlebars": "^4.7.7" @@ -18331,9 +18272,9 @@ "dev": true }, "uglify-js": { - "version": "3.13.5", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.5.tgz", - "integrity": "sha512-xtB8yEqIkn7zmOyS2zUNBsYCBRhDkvlNxMMY2smuJ/qA8NCHeQvKCF3i9Z4k8FJH4+PJvZRtMrPynfZ75+CSZw==", + "version": "3.13.6", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.6.tgz", + "integrity": "sha512-rRprLwl8RVaS+Qvx3Wh5hPfPBn9++G6xkGlUupya0s5aDmNjI7z3lnRLB3u7sN4OmbB0pWgzhM9BEJyiWAwtAA==", "dev": true }, "unbox-primitive": { @@ -18579,6 +18520,12 @@ "supports-color": "^7.1.0" } }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -18833,9 +18780,9 @@ } }, "webpack": { - "version": "5.36.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.36.2.tgz", - "integrity": "sha512-XJumVnnGoH2dV+Pk1VwgY4YT6AiMKpVoudUFCNOXMIVrEKPUgEwdIfWPjIuGLESAiS8EdIHX5+TiJz/5JccmRg==", + "version": "5.37.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.37.0.tgz", + "integrity": "sha512-yvdhgcI6QkQkDe1hINBAJ1UNevqNGTVaCkD2SSJcB8rcrNNl922RI8i2DXUAuNfANoxwsiXXEA4ZPZI9q2oGLA==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", @@ -18869,16 +18816,6 @@ "integrity": "sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg==", "dev": true }, - "enhanced-resolve": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.0.tgz", - "integrity": "sha512-Sl3KRpJA8OpprrtaIswVki3cWPiPKxXuFxJXBp+zNb6s6VwNWwFRUdtmzd2ReUut8n+sCPx7QCtQ7w5wfJhSgQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, "graceful-fs": { "version": "4.2.6", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", @@ -18905,28 +18842,21 @@ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true - }, - "tapable": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz", - "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==", - "dev": true } } }, "webpack-cli": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.6.0.tgz", - "integrity": "sha512-9YV+qTcGMjQFiY7Nb1kmnupvb1x40lfpj8pwdO/bom+sQiP4OBMKjHq29YQrlDWDPZO9r/qWaRRywKaRDKqBTA==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.0.tgz", + "integrity": "sha512-7bKr9182/sGfjFm+xdZSwgQuFjgEcy0iCTIBxRUeteJ2Kr8/Wz0qNJX+jw60LU36jApt4nmMkep6+W5AKhok6g==", "dev": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.0.2", - "@webpack-cli/info": "^1.2.3", - "@webpack-cli/serve": "^1.3.1", + "@webpack-cli/configtest": "^1.0.3", + "@webpack-cli/info": "^1.2.4", + "@webpack-cli/serve": "^1.4.0", "colorette": "^1.2.1", "commander": "^7.0.0", - "enquirer": "^2.3.6", "execa": "^5.0.0", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", diff --git a/package.json b/package.json index 2862d12f..bff21cc5 100644 --- a/package.json +++ b/package.json @@ -54,15 +54,15 @@ "@release-it/conventional-changelog": "^2.0.1", "@types/mocha": "^8.2.2", "@types/prismjs": "^1.16.5", - "@types/react-dom": "^17.0.3", - "@typescript-eslint/eslint-plugin": "^4.22.1", - "@typescript-eslint/parser": "^4.22.1", + "@types/react-dom": "^17.0.4", + "@typescript-eslint/eslint-plugin": "^4.23.0", + "@typescript-eslint/parser": "^4.23.0", "commitlint": "^12.1.1", "concat-md": "^0.3.5", - "concurrently": "^6.0.2", + "concurrently": "^6.1.0", "cross-env": "^7.0.3", "css-loader": "^5.2.4", - "eslint": "^7.25.0", + "eslint": "^7.26.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.23.2", @@ -74,22 +74,22 @@ "karma-mocha": "^2.0.1", "karma-typescript": "^5.5.1", "marked": "^2.0.3", - "mocha": "^8.3.2", - "prettier": "^2.2.1", + "mocha": "^8.4.0", + "prettier": "^2.3.0", "prismjs": "^1.23.0", "react": "^17.0.2", "react-dom": "^17.0.2", - "release-it": "^14.6.1", + "release-it": "^14.6.2", "rollup": "^2.47.0", "rollup-plugin-typescript2": "^0.30.0", "style-loader": "^2.0.0", - "ts-loader": "^9.1.1", + "ts-loader": "^9.1.2", "typedoc": "^0.20.36", - "typedoc-plugin-markdown": "^3.7.2", + "typedoc-plugin-markdown": "^3.8.0", "typescript": "^4.2.4", - "uglify-js": "^3.13.5", - "webpack": "^5.36.2", - "webpack-cli": "^4.6.0", + "uglify-js": "^3.13.6", + "webpack": "^5.37.0", + "webpack-cli": "^4.7.0", "webpack-dev-server": "^3.11.2" }, "prettier": { From fcad6db224e8faf1daf26f2b4778642b2f7ee71c Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Tue, 11 May 2021 11:42:31 -0400 Subject: [PATCH 05/12] chore(package): upgrade sub-dependencies to fix dependabot alerts --- package-lock.json | 4219 +-------------------------------------------- package.json | 1 - 2 files changed, 39 insertions(+), 4181 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8a9bb8fc..c3116513 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1980,44 +1980,6 @@ "defer-to-connect": "^2.0.0" } }, - "@textlint/ast-node-types": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-4.2.5.tgz", - "integrity": "sha512-+rEx4jLOeZpUcdvll7jEg/7hNbwYvHWFy4IGW/tk2JdbyB3SJVyIP6arAwzTH/sp/pO9jftfyZnRj4//sLbLvQ==", - "dev": true - }, - "@textlint/markdown-to-ast": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-6.0.9.tgz", - "integrity": "sha512-hfAWBvTeUGh5t5kTn2U3uP3qOSM1BSrxzl1jF3nn0ywfZXpRBZr5yRjXnl4DzIYawCtZOshmRi/tI3/x4TE1jQ==", - "dev": true, - "requires": { - "@textlint/ast-node-types": "^4.0.3", - "debug": "^2.1.3", - "remark-frontmatter": "^1.2.0", - "remark-parse": "^5.0.0", - "structured-source": "^3.0.2", - "traverse": "^0.6.6", - "unified": "^6.1.6" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, "@types/cacheable-request": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.1.tgz", @@ -2552,15 +2514,6 @@ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true }, - "anchor-markdown-header": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz", - "integrity": "sha1-BFBj125qH5zTJ6V6ASaqD97Dcac=", - "dev": true, - "requires": { - "emoji-regex": "~6.1.0" - } - }, "ansi-align": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", @@ -3123,12 +3076,6 @@ "@babel/helper-define-polyfill-provider": "^0.2.0" } }, - "bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", - "dev": true - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -3327,12 +3274,6 @@ "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", "dev": true }, - "boundary": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/boundary/-/boundary-1.0.1.tgz", - "integrity": "sha1-TWfcJgLAzBbdm85+v4fpSCkPWBI=", - "dev": true - }, "boxen": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.1.tgz", @@ -3798,24 +3739,6 @@ "supports-color": "^5.3.0" } }, - "character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "dev": true - }, - "character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "dev": true - }, - "character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "dev": true - }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", @@ -3987,12 +3910,6 @@ "mimic-response": "^1.0.0" } }, - "collapse-white-space": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", - "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", - "dev": true - }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", @@ -4150,213 +4067,6 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "concat-md": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/concat-md/-/concat-md-0.3.5.tgz", - "integrity": "sha512-JVb5rp3JKFqpc6aapqsjgE8k6fWpDJ9YNBNn1Vyi009B1lWc35/cYmT/Rjec7gI4+giC1azkC5RhdHyI2cD89w==", - "dev": true, - "requires": { - "doctoc": "^1.4.0", - "front-matter": "^3.1.0", - "globby": "^11", - "install": "^0.13.0", - "lodash.startcase": "^4.4.0", - "meow": "^7.0.0", - "npm": "^6.14.5", - "transform-markdown-links": "^2.0.0" - }, - "dependencies": { - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true - }, - "camelcase": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz", - "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==", - "dev": true - }, - "camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "map-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", - "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", - "dev": true - }, - "meow": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-7.0.1.tgz", - "integrity": "sha512-tBKIQqVrAHqwit0vfuFPY3LlzJYkEOFyKa3bPgxzNl6q/RtN8KQ+ALYEASYuFayzSAsjlhXj/JZ10rH85Q6TUw==", - "dev": true, - "requires": { - "@types/minimist": "^1.2.0", - "arrify": "^2.0.1", - "camelcase": "^6.0.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" - } - }, - "minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - } - } - }, - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } - } - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", - "dev": true - }, - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "dev": true - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } - } - } - }, "concurrently": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-6.1.0.tgz", @@ -4837,9 +4547,9 @@ }, "dependencies": { "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "normalize-package-data": { @@ -5868,20 +5578,6 @@ "buffer-indexof": "^1.0.0" } }, - "doctoc": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/doctoc/-/doctoc-1.4.0.tgz", - "integrity": "sha512-8IAq3KdMkxhXCUF+xdZxdJxwuz8N2j25sMgqiu4U4JWluN9tRKMlAalxGASszQjlZaBprdD2YfXpL3VPWUD4eg==", - "dev": true, - "requires": { - "@textlint/markdown-to-ast": "~6.0.9", - "anchor-markdown-header": "^0.5.5", - "htmlparser2": "~3.9.2", - "minimist": "~1.2.0", - "underscore": "~1.8.3", - "update-section": "^0.3.0" - } - }, "doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -6041,12 +5737,6 @@ } } }, - "emoji-regex": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.3.tgz", - "integrity": "sha1-7HmjlpsC0uzytyJUJ5v5m8eoOTI=", - "dev": true - }, "emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", @@ -6942,15 +6632,6 @@ "reusify": "^1.0.4" } }, - "fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "dev": true, - "requires": { - "format": "^0.2.0" - } - }, "faye-websocket": { "version": "0.11.3", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz", @@ -7126,12 +6807,6 @@ "mime-types": "^2.1.12" } }, - "format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=", - "dev": true - }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -7153,15 +6828,6 @@ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", "dev": true }, - "front-matter": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-3.2.1.tgz", - "integrity": "sha512-YUhgEhbL6tG+Ok3vTGIoSDKqcr47aSDvyhEqIv8B+YuBJFsPnOiArNXTPp2yO07NL+a0L4+2jXlKlKqyVcsRRA==", - "dev": true, - "requires": { - "js-yaml": "^3.13.1" - } - }, "fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -7877,9 +7543,9 @@ } }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "hpack.js": { @@ -7948,20 +7614,6 @@ } } }, - "htmlparser2": { - "version": "3.9.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", - "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", - "dev": true, - "requires": { - "domelementtype": "^1.3.0", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^2.0.2" - } - }, "http-cache-semantics": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", @@ -8442,12 +8094,6 @@ } } }, - "install": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/install/-/install-0.13.0.tgz", - "integrity": "sha512-zDml/jzr2PKU9I8J/xyZBQn8rPCAY//UOYNmR01XwNwyfhEWObo2SWfSl1+0tm1u6PhxLwDnfsT/6jB7OUxqFA==", - "dev": true - }, "internal-ip": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", @@ -8532,22 +8178,6 @@ } } }, - "is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "dev": true - }, - "is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dev": true, - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - } - }, "is-arguments": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", @@ -8643,12 +8273,6 @@ "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", "dev": true }, - "is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "dev": true - }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", @@ -8713,12 +8337,6 @@ "is-extglob": "^2.1.1" } }, - "is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "dev": true - }, "is-installed-globally": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", @@ -9024,24 +8642,12 @@ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", "dev": true }, - "is-whitespace-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", - "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", - "dev": true - }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "dev": true }, - "is-word-character": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", - "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", - "dev": true - }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", @@ -9710,12 +9316,6 @@ "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=", "dev": true }, - "lodash.startcase": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", - "integrity": "sha1-lDbjTtJgk+1/+uGTYUQ1CRXZrdg=", - "dev": true - }, "lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", @@ -9910,12 +9510,6 @@ "object-visit": "^1.0.0" } }, - "markdown-escapes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", - "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", - "dev": true - }, "marked": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.3.tgz", @@ -10575,3568 +10169,39 @@ "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", "dev": true }, - "npm": { - "version": "6.14.13", - "resolved": "https://registry.npmjs.org/npm/-/npm-6.14.13.tgz", - "integrity": "sha512-SRl4jJi0EBHY2xKuu98FLRMo3VhYQSA6otyLnjSEiHoSG/9shXCFNJy9tivpUJvtkN9s6VDdItHa5Rn+fNBzag==", - "dev": true, - "requires": { - "JSONStream": "^1.3.5", - "abbrev": "~1.1.1", - "ansicolors": "~0.3.2", - "ansistyles": "~0.1.3", - "aproba": "^2.0.0", - "archy": "~1.0.0", - "bin-links": "^1.1.8", - "bluebird": "^3.5.5", - "byte-size": "^5.0.1", - "cacache": "^12.0.3", - "call-limit": "^1.1.1", - "chownr": "^1.1.4", - "ci-info": "^2.0.0", - "cli-columns": "^3.1.2", - "cli-table3": "^0.5.1", - "cmd-shim": "^3.0.3", - "columnify": "~1.5.4", - "config-chain": "^1.1.12", - "debuglog": "*", - "detect-indent": "~5.0.0", - "detect-newline": "^2.1.0", - "dezalgo": "~1.0.3", - "editor": "~1.0.0", - "figgy-pudding": "^3.5.1", - "find-npm-prefix": "^1.0.2", - "fs-vacuum": "~1.2.10", - "fs-write-stream-atomic": "~1.0.10", - "gentle-fs": "^2.3.1", - "glob": "^7.1.6", - "graceful-fs": "^4.2.4", - "has-unicode": "~2.0.1", - "hosted-git-info": "^2.8.9", - "iferr": "^1.0.2", - "imurmurhash": "*", - "infer-owner": "^1.0.4", - "inflight": "~1.0.6", - "inherits": "^2.0.4", - "ini": "^1.3.8", - "init-package-json": "^1.10.3", - "is-cidr": "^3.0.0", - "json-parse-better-errors": "^1.0.2", - "lazy-property": "~1.0.0", - "libcipm": "^4.0.8", - "libnpm": "^3.0.1", - "libnpmaccess": "^3.0.2", - "libnpmhook": "^5.0.3", - "libnpmorg": "^1.0.1", - "libnpmsearch": "^2.0.2", - "libnpmteam": "^1.0.2", - "libnpx": "^10.2.4", - "lock-verify": "^2.1.0", - "lockfile": "^1.0.4", - "lodash._baseindexof": "*", - "lodash._baseuniq": "~4.6.0", - "lodash._bindcallback": "*", - "lodash._cacheindexof": "*", - "lodash._createcache": "*", - "lodash._getnative": "*", - "lodash.clonedeep": "~4.5.0", - "lodash.restparam": "*", - "lodash.union": "~4.6.0", - "lodash.uniq": "~4.5.0", - "lodash.without": "~4.4.0", - "lru-cache": "^5.1.1", - "meant": "^1.0.2", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.5", - "move-concurrently": "^1.0.1", - "node-gyp": "^5.1.0", - "nopt": "^4.0.3", - "normalize-package-data": "^2.5.0", - "npm-audit-report": "^1.3.3", - "npm-cache-filename": "~1.0.2", - "npm-install-checks": "^3.0.2", - "npm-lifecycle": "^3.1.5", - "npm-package-arg": "^6.1.1", - "npm-packlist": "^1.4.8", - "npm-pick-manifest": "^3.0.2", - "npm-profile": "^4.0.4", - "npm-registry-fetch": "^4.0.7", - "npm-user-validate": "^1.0.1", - "npmlog": "~4.1.2", - "once": "~1.4.0", - "opener": "^1.5.2", - "osenv": "^0.1.5", - "pacote": "^9.5.12", - "path-is-inside": "~1.0.2", - "promise-inflight": "~1.0.1", - "qrcode-terminal": "^0.12.0", - "query-string": "^6.8.2", - "qw": "~1.0.1", - "read": "~1.0.7", - "read-cmd-shim": "^1.0.5", - "read-installed": "~4.0.3", - "read-package-json": "^2.1.1", - "read-package-tree": "^5.3.1", - "readable-stream": "^3.6.0", - "readdir-scoped-modules": "^1.1.0", - "request": "^2.88.0", - "retry": "^0.12.0", - "rimraf": "^2.7.1", - "safe-buffer": "^5.1.2", - "semver": "^5.7.1", - "sha": "^3.0.0", - "slide": "~1.1.6", - "sorted-object": "~2.0.1", - "sorted-union-stream": "~2.1.3", - "ssri": "^6.0.2", - "stringify-package": "^1.0.1", - "tar": "^4.4.13", - "text-table": "~0.2.0", - "tiny-relative-date": "^1.3.0", - "uid-number": "0.0.6", - "umask": "~1.1.0", - "unique-filename": "^1.1.1", - "unpipe": "~1.0.0", - "update-notifier": "^2.5.0", - "uuid": "^3.3.3", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "~3.0.0", - "which": "^1.3.1", - "worker-farm": "^1.7.0", - "write-file-atomic": "^2.4.3" - }, - "dependencies": { - "JSONStream": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, - "agent-base": { - "version": "4.3.0", - "bundled": true, - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, - "agentkeepalive": { - "version": "3.5.2", - "bundled": true, - "dev": true, - "requires": { - "humanize-ms": "^1.2.1" - } - }, - "ansi-align": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.0.0" - } - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "bundled": true, - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "ansicolors": { - "version": "0.3.2", - "bundled": true, - "dev": true - }, - "ansistyles": { - "version": "0.1.3", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "archy": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "are-we-there-yet": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "asap": { - "version": "2.0.6", - "bundled": true, - "dev": true - }, - "asn1": { - "version": "0.2.4", - "bundled": true, - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "bundled": true, - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "bundled": true, - "dev": true - }, - "aws4": { - "version": "1.8.0", - "bundled": true, - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bin-links": { - "version": "1.1.8", - "bundled": true, - "dev": true, - "requires": { - "bluebird": "^3.5.3", - "cmd-shim": "^3.0.0", - "gentle-fs": "^2.3.0", - "graceful-fs": "^4.1.15", - "npm-normalize-package-bin": "^1.0.0", - "write-file-atomic": "^2.3.0" - } - }, - "bluebird": { - "version": "3.5.5", - "bundled": true, - "dev": true - }, - "boxen": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-align": "^2.0.0", - "camelcase": "^4.0.0", - "chalk": "^2.0.1", - "cli-boxes": "^1.0.0", - "string-width": "^2.0.0", - "term-size": "^1.2.0", - "widest-line": "^2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "buffer-from": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "builtins": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, - "byline": { - "version": "5.0.0", - "bundled": true, - "dev": true - }, - "byte-size": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "cacache": { - "version": "12.0.3", - "bundled": true, - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "call-limit": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, - "camelcase": { - "version": "4.1.0", - "bundled": true, - "dev": true - }, - "capture-stack-trace": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "caseless": { - "version": "0.12.0", - "bundled": true, - "dev": true - }, - "chalk": { - "version": "2.4.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chownr": { - "version": "1.1.4", - "bundled": true, - "dev": true - }, - "ci-info": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "cidr-regex": { - "version": "2.0.10", - "bundled": true, - "dev": true, - "requires": { - "ip-regex": "^2.1.0" - } - }, - "cli-boxes": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "cli-columns": { - "version": "3.1.2", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.0.0", - "strip-ansi": "^3.0.1" - } - }, - "cli-table3": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "colors": "^1.1.2", - "object-assign": "^4.1.0", - "string-width": "^2.1.1" - } - }, - "cliui": { - "version": "5.0.0", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "clone": { - "version": "1.0.4", - "bundled": true, - "dev": true - }, - "cmd-shim": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "mkdirp": "~0.5.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "color-convert": { - "version": "1.9.1", - "bundled": true, - "dev": true, - "requires": { - "color-name": "^1.1.1" - } - }, - "color-name": { - "version": "1.1.3", - "bundled": true, - "dev": true - }, - "colors": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true - }, - "columnify": { - "version": "1.5.4", - "bundled": true, - "dev": true, - "requires": { - "strip-ansi": "^3.0.0", - "wcwidth": "^1.0.0" - } - }, - "combined-stream": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "bundled": true, - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "config-chain": { - "version": "1.1.12", - "bundled": true, - "dev": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "configstore": { - "version": "3.1.5", - "bundled": true, - "dev": true, - "requires": { - "dot-prop": "^4.2.1", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "copy-concurrently": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "iferr": { - "version": "0.1.5", - "bundled": true, - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "create-error-class": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "requires": { - "capture-stack-trace": "^1.0.0" - } - }, - "cross-spawn": { - "version": "5.1.0", - "bundled": true, - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "bundled": true, - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "bundled": true, - "dev": true - } - } - }, - "crypto-random-string": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "cyclist": { - "version": "0.2.2", - "bundled": true, - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "debug": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true - } - } - }, - "debuglog": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "bundled": true, - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true - }, - "defaults": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-properties": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "delayed-stream": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "detect-indent": { - "version": "5.0.0", - "bundled": true, - "dev": true - }, - "detect-newline": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "dezalgo": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, - "dot-prop": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "dotenv": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "duplexer3": { - "version": "0.1.4", - "bundled": true, - "dev": true - }, - "duplexify": { - "version": "3.6.0", - "bundled": true, - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "editor": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "bundled": true, - "dev": true - }, - "encoding": { - "version": "0.1.12", - "bundled": true, - "dev": true, - "requires": { - "iconv-lite": "~0.4.13" - } - }, - "end-of-stream": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "env-paths": { - "version": "2.2.0", - "bundled": true, - "dev": true - }, - "err-code": { - "version": "1.1.2", - "bundled": true, - "dev": true - }, - "errno": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "es-abstract": { - "version": "1.12.0", - "bundled": true, - "dev": true, - "requires": { - "es-to-primitive": "^1.1.1", - "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" - } - }, - "es-to-primitive": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-promise": { - "version": "4.2.8", - "bundled": true, - "dev": true - }, - "es6-promisify": { - "version": "5.0.0", - "bundled": true, - "dev": true, - "requires": { - "es6-promise": "^4.0.3" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "bundled": true, - "dev": true - }, - "execa": { - "version": "0.7.0", - "bundled": true, - "dev": true, - "requires": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "bundled": true, - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "bundled": true, - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "figgy-pudding": { - "version": "3.5.1", - "bundled": true, - "dev": true - }, - "find-npm-prefix": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "flush-write-stream": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.4" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "forever-agent": { - "version": "0.6.1", - "bundled": true, - "dev": true - }, - "form-data": { - "version": "2.3.2", - "bundled": true, - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "1.0.6", - "mime-types": "^2.1.12" - } - }, - "from2": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "requires": { - "minipass": "^2.6.0" - }, - "dependencies": { - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - } - } - }, - "fs-vacuum": { - "version": "1.2.10", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "path-is-inside": "^1.0.1", - "rimraf": "^2.5.2" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - }, - "dependencies": { - "iferr": { - "version": "0.1.5", - "bundled": true, - "dev": true - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "function-bind": { - "version": "1.1.1", - "bundled": true, - "dev": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "genfun": { - "version": "5.0.0", - "bundled": true, - "dev": true - }, - "gentle-fs": { - "version": "2.3.1", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^1.1.2", - "chownr": "^1.1.2", - "cmd-shim": "^3.0.3", - "fs-vacuum": "^1.2.10", - "graceful-fs": "^4.1.11", - "iferr": "^0.1.5", - "infer-owner": "^1.0.4", - "mkdirp": "^0.5.1", - "path-is-inside": "^1.0.2", - "read-cmd-shim": "^1.0.1", - "slide": "^1.1.6" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "iferr": { - "version": "0.1.5", - "bundled": true, - "dev": true - } - } - }, - "get-caller-file": { - "version": "2.0.5", - "bundled": true, - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "bundled": true, - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "getpass": { - "version": "0.1.7", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "global-dirs": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "requires": { - "ini": "^1.3.4" - } - }, - "got": { - "version": "6.7.1", - "bundled": true, - "dev": true, - "requires": { - "create-error-class": "^3.0.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-redirect": "^1.0.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "lowercase-keys": "^1.0.0", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "unzip-response": "^2.0.1", - "url-parse-lax": "^1.0.0" - }, - "dependencies": { - "get-stream": { - "version": "3.0.0", - "bundled": true, - "dev": true - } - } - }, - "graceful-fs": { - "version": "4.2.4", - "bundled": true, - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "bundled": true, - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "bundled": true, - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "bundled": true, - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "bundled": true, - "dev": true - } - } - }, - "has": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "has-symbols": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "hosted-git-info": { - "version": "2.8.9", - "bundled": true, - "dev": true - }, - "http-cache-semantics": { - "version": "3.8.1", - "bundled": true, - "dev": true - }, - "http-proxy-agent": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - } - }, - "http-signature": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - } - }, - "humanize-ms": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.23", - "bundled": true, - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "iferr": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "import-lazy": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "bundled": true, - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "bundled": true, - "dev": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true - }, - "ini": { - "version": "1.3.8", - "bundled": true, - "dev": true - }, - "init-package-json": { - "version": "1.10.3", - "bundled": true, - "dev": true, - "requires": { - "glob": "^7.1.1", - "npm-package-arg": "^4.0.0 || ^5.0.0 || ^6.0.0", - "promzard": "^0.3.0", - "read": "~1.0.1", - "read-package-json": "1 || 2", - "semver": "2.x || 3.x || 4 || 5", - "validate-npm-package-license": "^3.0.1", - "validate-npm-package-name": "^3.0.0" - } - }, - "ip": { - "version": "1.1.5", - "bundled": true, - "dev": true - }, - "ip-regex": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "is-callable": { - "version": "1.1.4", - "bundled": true, - "dev": true - }, - "is-ci": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "requires": { - "ci-info": "^1.5.0" - }, - "dependencies": { - "ci-info": { - "version": "1.6.0", - "bundled": true, - "dev": true - } - } - }, - "is-cidr": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "cidr-regex": "^2.0.10" - } - }, - "is-date-object": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-installed-globally": { - "version": "0.1.0", - "bundled": true, - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - } - }, - "is-npm": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "is-obj": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "is-path-inside": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "is-redirect": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "is-regex": { - "version": "1.0.4", - "bundled": true, - "dev": true, - "requires": { - "has": "^1.0.1" - } - }, - "is-retry-allowed": { - "version": "1.2.0", - "bundled": true, - "dev": true - }, - "is-stream": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "is-symbol": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "has-symbols": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "isexe": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "isstream": { - "version": "0.1.2", - "bundled": true, - "dev": true - }, - "jsbn": { - "version": "0.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "bundled": true, - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "bundled": true, - "dev": true - }, - "jsonparse": { - "version": "1.3.1", - "bundled": true, - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "latest-version": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "package-json": "^4.0.0" - } - }, - "lazy-property": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "libcipm": { - "version": "4.0.8", - "bundled": true, - "dev": true, - "requires": { - "bin-links": "^1.1.2", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.5.1", - "find-npm-prefix": "^1.0.2", - "graceful-fs": "^4.1.11", - "ini": "^1.3.5", - "lock-verify": "^2.1.0", - "mkdirp": "^0.5.1", - "npm-lifecycle": "^3.0.0", - "npm-logical-tree": "^1.2.1", - "npm-package-arg": "^6.1.0", - "pacote": "^9.1.0", - "read-package-json": "^2.0.13", - "rimraf": "^2.6.2", - "worker-farm": "^1.6.0" - } - }, - "libnpm": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "bin-links": "^1.1.2", - "bluebird": "^3.5.3", - "find-npm-prefix": "^1.0.2", - "libnpmaccess": "^3.0.2", - "libnpmconfig": "^1.2.1", - "libnpmhook": "^5.0.3", - "libnpmorg": "^1.0.1", - "libnpmpublish": "^1.1.2", - "libnpmsearch": "^2.0.2", - "libnpmteam": "^1.0.2", - "lock-verify": "^2.0.2", - "npm-lifecycle": "^3.0.0", - "npm-logical-tree": "^1.2.1", - "npm-package-arg": "^6.1.0", - "npm-profile": "^4.0.2", - "npm-registry-fetch": "^4.0.0", - "npmlog": "^4.1.2", - "pacote": "^9.5.3", - "read-package-json": "^2.0.13", - "stringify-package": "^1.0.0" - } - }, - "libnpmaccess": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^2.0.0", - "get-stream": "^4.0.0", - "npm-package-arg": "^6.1.0", - "npm-registry-fetch": "^4.0.0" - } - }, - "libnpmconfig": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "find-up": "^3.0.0", - "ini": "^1.3.5" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.2.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "bundled": true, - "dev": true - } - } - }, - "libnpmhook": { - "version": "5.0.3", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^2.0.0", - "figgy-pudding": "^3.4.1", - "get-stream": "^4.0.0", - "npm-registry-fetch": "^4.0.0" - } - }, - "libnpmorg": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^2.0.0", - "figgy-pudding": "^3.4.1", - "get-stream": "^4.0.0", - "npm-registry-fetch": "^4.0.0" - } - }, - "libnpmpublish": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^2.0.0", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.0.0", - "lodash.clonedeep": "^4.5.0", - "normalize-package-data": "^2.4.0", - "npm-package-arg": "^6.1.0", - "npm-registry-fetch": "^4.0.0", - "semver": "^5.5.1", - "ssri": "^6.0.1" - } - }, - "libnpmsearch": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "get-stream": "^4.0.0", - "npm-registry-fetch": "^4.0.0" - } - }, - "libnpmteam": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^2.0.0", - "figgy-pudding": "^3.4.1", - "get-stream": "^4.0.0", - "npm-registry-fetch": "^4.0.0" - } - }, - "libnpx": { - "version": "10.2.4", - "bundled": true, - "dev": true, - "requires": { - "dotenv": "^5.0.1", - "npm-package-arg": "^6.0.0", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.0", - "update-notifier": "^2.3.0", - "which": "^1.3.0", - "y18n": "^4.0.0", - "yargs": "^14.2.3" - } - }, - "lock-verify": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "npm-package-arg": "^6.1.0", - "semver": "^5.4.1" - } - }, - "lockfile": { - "version": "1.0.4", - "bundled": true, - "dev": true, - "requires": { - "signal-exit": "^3.0.2" - } - }, - "lodash._baseindexof": { - "version": "3.1.0", - "bundled": true, - "dev": true - }, - "lodash._baseuniq": { - "version": "4.6.0", - "bundled": true, - "dev": true, - "requires": { - "lodash._createset": "~4.0.0", - "lodash._root": "~3.0.0" - } - }, - "lodash._bindcallback": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, - "lodash._cacheindexof": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "lodash._createcache": { - "version": "3.1.2", - "bundled": true, - "dev": true, - "requires": { - "lodash._getnative": "^3.0.0" - } - }, - "lodash._createset": { - "version": "4.0.3", - "bundled": true, - "dev": true - }, - "lodash._getnative": { - "version": "3.9.1", - "bundled": true, - "dev": true - }, - "lodash._root": { - "version": "3.0.1", - "bundled": true, - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "bundled": true, - "dev": true - }, - "lodash.restparam": { - "version": "3.6.1", - "bundled": true, - "dev": true - }, - "lodash.union": { - "version": "4.6.0", - "bundled": true, - "dev": true - }, - "lodash.uniq": { - "version": "4.5.0", - "bundled": true, - "dev": true - }, - "lodash.without": { - "version": "4.4.0", - "bundled": true, - "dev": true - }, - "lowercase-keys": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "lru-cache": { - "version": "5.1.1", - "bundled": true, - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "make-dir": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "make-fetch-happen": { - "version": "5.0.2", - "bundled": true, - "dev": true, - "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - } - }, - "meant": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "mime-db": { - "version": "1.35.0", - "bundled": true, - "dev": true - }, - "mime-types": { - "version": "2.1.19", - "bundled": true, - "dev": true, - "requires": { - "mime-db": "~1.35.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "bundled": true, - "dev": true - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "requires": { - "minipass": "^2.9.0" - }, - "dependencies": { - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - } - } - }, - "mississippi": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "bundled": true, - "dev": true, - "requires": { - "minimist": "^1.2.5" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "bundled": true, - "dev": true - } - } - }, - "move-concurrently": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true - } - } - }, - "ms": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "mute-stream": { - "version": "0.0.7", - "bundled": true, - "dev": true - }, - "node-fetch-npm": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" - } - }, - "node-gyp": { - "version": "5.1.0", - "bundled": true, - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "mkdirp": "^0.5.1", - "nopt": "^4.0.1", - "npmlog": "^4.1.2", - "request": "^2.88.0", - "rimraf": "^2.6.3", - "semver": "^5.7.1", - "tar": "^4.4.12", - "which": "^1.3.1" - } - }, - "nopt": { - "version": "4.0.3", - "bundled": true, - "dev": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "bundled": true, - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "resolve": { - "version": "1.10.0", - "bundled": true, - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - } - } - }, - "npm-audit-report": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "requires": { - "cli-table3": "^0.5.0", - "console-control-strings": "^1.1.0" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-cache-filename": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "npm-install-checks": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "requires": { - "semver": "^2.3.0 || 3.x || 4 || 5" - } - }, - "npm-lifecycle": { - "version": "3.1.5", - "bundled": true, - "dev": true, - "requires": { - "byline": "^5.0.0", - "graceful-fs": "^4.1.15", - "node-gyp": "^5.0.2", - "resolve-from": "^4.0.0", - "slide": "^1.1.6", - "uid-number": "0.0.6", - "umask": "^1.1.0", - "which": "^1.3.1" - } - }, - "npm-logical-tree": { - "version": "1.2.1", - "bundled": true, - "dev": true - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "npm-package-arg": { - "version": "6.1.1", - "bundled": true, - "dev": true, - "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-packlist": { - "version": "1.4.8", - "bundled": true, - "dev": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - } - }, - "npm-profile": { - "version": "4.0.4", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^1.1.2 || 2", - "figgy-pudding": "^3.4.1", - "npm-registry-fetch": "^4.0.0" - } - }, - "npm-registry-fetch": { - "version": "4.0.7", - "bundled": true, - "dev": true, - "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "bundled": true, - "dev": true - } - } - }, - "npm-run-path": { - "version": "2.0.2", - "bundled": true, - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npm-user-validate": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "bundled": true, - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true - }, - "object-keys": { - "version": "1.0.12", - "bundled": true, - "dev": true - }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "opener": { - "version": "1.5.2", - "bundled": true, - "dev": true - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "p-finally": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "package-json": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "requires": { - "got": "^6.7.1", - "registry-auth-token": "^3.0.1", - "registry-url": "^3.0.3", - "semver": "^5.1.0" - } - }, - "pacote": { - "version": "9.5.12", - "bundled": true, - "dev": true, - "requires": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-normalize-package-bin": "^1.0.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^3.0.0", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - } - } - }, - "parallel-transform": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "path-exists": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "path-is-inside": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "path-key": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "bundled": true, - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "pify": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "prepend-http": { - "version": "1.0.4", - "bundled": true, - "dev": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "promise-inflight": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "promise-retry": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" - }, - "dependencies": { - "retry": { - "version": "0.10.1", - "bundled": true, - "dev": true - } - } - }, - "promzard": { - "version": "0.3.0", - "bundled": true, - "dev": true, - "requires": { - "read": "1" - } - }, - "proto-list": { - "version": "1.2.4", - "bundled": true, - "dev": true - }, - "protoduck": { - "version": "5.0.1", - "bundled": true, - "dev": true, - "requires": { - "genfun": "^5.0.0" - } - }, - "prr": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "psl": { - "version": "1.1.29", - "bundled": true, - "dev": true - }, - "pump": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "bundled": true, - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "punycode": { - "version": "1.4.1", - "bundled": true, - "dev": true - }, - "qrcode-terminal": { - "version": "0.12.0", - "bundled": true, - "dev": true - }, - "qs": { - "version": "6.5.2", - "bundled": true, - "dev": true - }, - "query-string": { - "version": "6.8.2", - "bundled": true, - "dev": true, - "requires": { - "decode-uri-component": "^0.2.0", - "split-on-first": "^1.0.0", - "strict-uri-encode": "^2.0.0" - } - }, - "qw": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "read": { - "version": "1.0.7", - "bundled": true, - "dev": true, - "requires": { - "mute-stream": "~0.0.4" - } - }, - "read-cmd-shim": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2" - } - }, - "read-installed": { - "version": "4.0.3", - "bundled": true, - "dev": true, - "requires": { - "debuglog": "^1.0.1", - "graceful-fs": "^4.1.2", - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "semver": "2 || 3 || 4 || 5", - "slide": "~1.1.3", - "util-extend": "^1.0.1" - } - }, - "read-package-json": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "glob": "^7.1.1", - "graceful-fs": "^4.1.2", - "json-parse-better-errors": "^1.0.1", - "normalize-package-data": "^2.0.0", - "npm-normalize-package-bin": "^1.0.0" - } - }, - "read-package-tree": { - "version": "5.3.1", - "bundled": true, - "dev": true, - "requires": { - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "util-promisify": "^2.1.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "bundled": true, - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdir-scoped-modules": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" - } - }, - "registry-auth-token": { - "version": "3.4.0", - "bundled": true, - "dev": true, - "requires": { - "rc": "^1.1.6", - "safe-buffer": "^5.0.1" - } - }, - "registry-url": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "rc": "^1.0.1" - } - }, - "request": { - "version": "2.88.0", - "bundled": true, - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "resolve-from": { - "version": "4.0.0", - "bundled": true, - "dev": true - }, - "retry": { - "version": "0.12.0", - "bundled": true, - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "run-queue": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "requires": { - "aproba": "^1.1.1" - }, - "dependencies": { - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true - } - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true - }, - "semver-diff": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "semver": "^5.0.3" - } - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "sha": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true - }, - "slide": { - "version": "1.1.6", - "bundled": true, - "dev": true - }, - "smart-buffer": { - "version": "4.1.0", - "bundled": true, - "dev": true - }, - "socks": { - "version": "2.3.3", - "bundled": true, - "dev": true, - "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" - } - }, - "socks-proxy-agent": { - "version": "4.0.2", - "bundled": true, - "dev": true, - "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "bundled": true, - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - } - } - }, - "sorted-object": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "sorted-union-stream": { - "version": "2.1.3", - "bundled": true, - "dev": true, - "requires": { - "from2": "^1.3.0", - "stream-iterate": "^1.1.0" - }, - "dependencies": { - "from2": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "~1.1.10" - } - }, - "isarray": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "readable-stream": { - "version": "1.1.14", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "bundled": true, - "dev": true - } - } - }, - "spdx-correct": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.1.0", - "bundled": true, - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "bundled": true, - "dev": true - }, - "split-on-first": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "sshpk": { - "version": "1.14.2", - "bundled": true, - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "6.0.2", - "bundled": true, - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "stream-each": { - "version": "1.2.2", - "bundled": true, - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-iterate": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "readable-stream": "^2.1.5", - "stream-shift": "^1.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "stream-shift": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "strict-uri-encode": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string_decoder": { - "version": "1.3.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.0", - "bundled": true, - "dev": true - } - } - }, - "stringify-package": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-eof": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "supports-color": { - "version": "5.4.0", - "bundled": true, - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - }, - "dependencies": { - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - } - } - }, - "term-size": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "requires": { - "execa": "^0.7.0" - } - }, - "text-table": { - "version": "0.2.0", - "bundled": true, - "dev": true - }, - "through": { - "version": "2.3.8", - "bundled": true, - "dev": true - }, - "through2": { - "version": "2.0.3", - "bundled": true, - "dev": true, - "requires": { - "readable-stream": "^2.1.5", - "xtend": "~4.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "timed-out": { - "version": "4.0.1", - "bundled": true, - "dev": true - }, - "tiny-relative-date": { - "version": "1.3.0", - "bundled": true, - "dev": true - }, - "tough-cookie": { - "version": "2.4.3", - "bundled": true, - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - } - }, - "tunnel-agent": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "bundled": true, - "dev": true, - "optional": true - }, - "typedarray": { - "version": "0.0.6", - "bundled": true, - "dev": true - }, - "uid-number": { - "version": "0.0.6", - "bundled": true, - "dev": true - }, - "umask": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "unpipe": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "unzip-response": { - "version": "2.0.1", - "bundled": true, - "dev": true - }, - "update-notifier": { - "version": "2.5.0", - "bundled": true, - "dev": true, - "requires": { - "boxen": "^1.2.1", - "chalk": "^2.0.1", - "configstore": "^3.0.0", - "import-lazy": "^2.1.0", - "is-ci": "^1.0.10", - "is-installed-globally": "^0.1.0", - "is-npm": "^1.0.0", - "latest-version": "^3.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.4.0", - "bundled": true, - "dev": true, - "requires": { - "punycode": "^2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.1", - "bundled": true, - "dev": true - } - } - }, - "url-parse-lax": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "prepend-http": "^1.0.1" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "util-extend": { - "version": "1.0.3", - "bundled": true, - "dev": true - }, - "util-promisify": { - "version": "2.1.0", - "bundled": true, - "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "uuid": { - "version": "3.3.3", - "bundled": true, - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "bundled": true, - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "which": { - "version": "1.3.1", - "bundled": true, - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "wide-align": { - "version": "1.1.2", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^1.0.2" - }, - "dependencies": { - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "widest-line": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "requires": { - "string-width": "^2.1.1" - } - }, - "worker-farm": { - "version": "1.7.0", - "bundled": true, - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "bundled": true, - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "write-file-atomic": { - "version": "2.4.3", - "bundled": true, - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "bundled": true, - "dev": true - }, - "xtend": { - "version": "4.0.1", - "bundled": true, - "dev": true - }, - "y18n": { - "version": "4.0.1", - "bundled": true, - "dev": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true - }, - "yargs": { - "version": "14.2.3", - "bundled": true, - "dev": true, - "requires": { - "cliui": "^5.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^15.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "bundled": true, - "dev": true - }, - "find-up": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "bundled": true, - "dev": true - }, - "locate-path": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "bundled": true, - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "bundled": true, - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "bundled": true, - "dev": true - }, - "string-width": { - "version": "3.1.0", - "bundled": true, - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "yargs-parser": { - "version": "15.0.1", - "bundled": true, - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "bundled": true, - "dev": true - } - } - } - } - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dev": true, - "requires": { - "boolbase": "~1.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { "define-property": { @@ -15092,20 +11157,6 @@ "safe-buffer": "^5.1.1" } }, - "parse-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", - "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", - "dev": true, - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, "parse-github-repo-url": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz", @@ -16142,39 +12193,6 @@ } } }, - "remark-frontmatter": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-1.3.3.tgz", - "integrity": "sha512-fM5eZPBvu2pVNoq3ZPW22q+5Ativ1oLozq2qYt9I2oNyxiUd/tDl0iLLntEVAegpZIslPWg1brhcP1VsaSVUag==", - "dev": true, - "requires": { - "fault": "^1.0.1", - "xtend": "^4.0.1" - } - }, - "remark-parse": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-5.0.0.tgz", - "integrity": "sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==", - "dev": true, - "requires": { - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^1.1.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0", - "xtend": "^4.0.1" - } - }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -16263,12 +12281,6 @@ "is-finite": "^1.0.0" } }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -17286,12 +13298,6 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, - "state-toggle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", - "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", - "dev": true - }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -17619,15 +13625,6 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, - "structured-source": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/structured-source/-/structured-source-3.0.2.tgz", - "integrity": "sha1-3YAkJeD1PcSm56yjdSkBoczaevU=", - "dev": true, - "requires": { - "boundary": "^1.0.1" - } - }, "style-loader": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", @@ -17968,30 +13965,12 @@ "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", "dev": true }, - "transform-markdown-links": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/transform-markdown-links/-/transform-markdown-links-2.0.0.tgz", - "integrity": "sha1-t56Sg9RHTLmweYma4JFS1OxGMlo=", - "dev": true - }, - "traverse": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", - "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", - "dev": true - }, "tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true }, - "trim": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", - "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", - "dev": true - }, "trim-newlines": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", @@ -18004,18 +13983,6 @@ "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", "dev": true }, - "trim-trailing-lines": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.3.tgz", - "integrity": "sha512-4ku0mmjXifQcTVfYDfR5lpgV7zVqPg6zV9rdZmwOPqq0+Zq19xDqEgagqVbc4pOOShbncuAOIs59R3+3gcF3ZA==", - "dev": true - }, - "trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", - "dev": true - }, "ts-loader": { "version": "9.1.2", "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.1.2.tgz", @@ -18297,22 +14264,6 @@ } } }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", - "dev": true - }, - "unherit": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", - "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", - "dev": true, - "requires": { - "inherits": "^2.0.0", - "xtend": "^4.0.0" - } - }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -18341,20 +14292,6 @@ "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", "dev": true }, - "unified": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-6.2.0.tgz", - "integrity": "sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA==", - "dev": true, - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^1.1.0", - "trough": "^1.0.0", - "vfile": "^2.0.0", - "x-is-string": "^0.1.0" - } - }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", @@ -18376,45 +14313,6 @@ "crypto-random-string": "^2.0.0" } }, - "unist-util-is": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", - "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==", - "dev": true - }, - "unist-util-remove-position": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.4.tgz", - "integrity": "sha512-tLqd653ArxJIPnKII6LMZwH+mb5q+n/GtXQZo6S6csPRs5zB0u79Yw8ouR3wTw8wxvdJFhpP6Y7jorWdCgLO0A==", - "dev": true, - "requires": { - "unist-util-visit": "^1.1.0" - } - }, - "unist-util-stringify-position": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz", - "integrity": "sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ==", - "dev": true - }, - "unist-util-visit": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz", - "integrity": "sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==", - "dev": true, - "requires": { - "unist-util-visit-parents": "^2.0.0" - } - }, - "unist-util-visit-parents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", - "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", - "dev": true, - "requires": { - "unist-util-is": "^3.0.0" - } - }, "universal-user-agent": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", @@ -18576,12 +14474,6 @@ } } }, - "update-section": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/update-section/-/update-section-0.3.3.tgz", - "integrity": "sha1-RY8Xgg03gg3GDiC4bZQ5GwASMVg=", - "dev": true - }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -18706,33 +14598,6 @@ "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", "dev": true }, - "vfile": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-2.3.0.tgz", - "integrity": "sha512-ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w==", - "dev": true, - "requires": { - "is-buffer": "^1.1.4", - "replace-ext": "1.0.0", - "unist-util-stringify-position": "^1.0.0", - "vfile-message": "^1.0.0" - } - }, - "vfile-location": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.6.tgz", - "integrity": "sha512-sSFdyCP3G6Ka0CEmN83A2YCMKIieHx0EDaj5IDP4g1pa5ZJ4FJDvpO0WODLxo4LUX4oe52gmSCK7Jw4SBghqxA==", - "dev": true - }, - "vfile-message": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-1.1.1.tgz", - "integrity": "sha512-1WmsopSGhWt5laNir+633LszXvZ+Z/lxveBf6yhGsqnQIhlhzooZae7zV6YVM1Sdkw68dtAW3ow0pOdPANugvA==", - "dev": true, - "requires": { - "unist-util-stringify-position": "^1.1.1" - } - }, "vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", @@ -19672,12 +15537,6 @@ "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==", "dev": true }, - "x-is-string": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/x-is-string/-/x-is-string-0.1.0.tgz", - "integrity": "sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI=", - "dev": true - }, "xdg-basedir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", diff --git a/package.json b/package.json index bff21cc5..194567cd 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,6 @@ "@typescript-eslint/eslint-plugin": "^4.23.0", "@typescript-eslint/parser": "^4.23.0", "commitlint": "^12.1.1", - "concat-md": "^0.3.5", "concurrently": "^6.1.0", "cross-env": "^7.0.3", "css-loader": "^5.2.4", From 0747ea422e6b506bd7d5e6ca5f803ffa025d28fd Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Mon, 7 Jun 2021 15:15:06 -0400 Subject: [PATCH 06/12] chore(package): upgrade dependencies - This includes typedoc@beta, which is required to support typescript@4.3 --- README.md | 572 ++++++++---- package-lock.json | 2189 ++++++++++++++++++++------------------------- package.json | 54 +- 3 files changed, 1375 insertions(+), 1440 deletions(-) diff --git a/README.md b/README.md index 5db7783f..54e891d6 100644 --- a/README.md +++ b/README.md @@ -135,18 +135,22 @@ setTimeout(() => panzoom.pan(100, 100)) ### Panzoom -▸ **Panzoom**(`elem`: HTMLElement \| SVGElement, `options?`: _Omit_<_[PanzoomOptions](#PanzoomOptions)_, `"force"`\>): _[PanzoomObject](#PanzoomObject)_ +▸ **Panzoom**(`elem`, `options?`): [PanzoomObject](#PanzoomObject) -#### Parameters: +#### Parameters -| Name | Type | -| :--------- | :------------------------------------------------------ | -| `elem` | HTMLElement \| SVGElement | -| `options?` | _Omit_<_[PanzoomOptions](#PanzoomOptions)_, `"force"`\> | +| Name | Type | +| :--------- | :------------------------------------------------------------------------------ | +| `elem` | `HTMLElement` \| `SVGElement` | +| `options?` | `Omit`<[PanzoomOptions](#PanzoomOptions)](types.md#panzoomoptions), `"force"`\> | -**Returns:** _[PanzoomObject](#PanzoomObject)_ +#### Returns -Defined in: [panzoom.ts:58](https://github.com/timmywil/panzoom/blob/8ce8194/src/panzoom.ts#L58) +[[PanzoomObject](#PanzoomObject) + +#### Defined in + +[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/10b285f/src/panzoom.ts#L58) ## `PanzoomOptions` @@ -156,15 +160,17 @@ Includes `MiscOptions`, `PanOnlyOptions`, and `ZoomOnlyOptions` ### animate -• `Optional` **animate**: _boolean_ (Default: **false**) +• `Optional` **animate**: `boolean` (Default: **false**) Whether to animate transitions -Defined in: [types.ts:21](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L21) +#### Defined in + +[types.ts:21](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L21) ### canvas -• `Optional` **canvas**: _boolean_ (Default: **false**) +• `Optional` **canvas**: `boolean` (Default: **false**) This option treats the Panzoom element's parent as a canvas. Effectively, Panzoom binds the @@ -175,49 +181,59 @@ moves its children. See issue #472. **Note**: setting this option to `true` also changes where the `cursor` style is applied (i.e. the parent). -Defined in: [types.ts:32](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L32) +#### Defined in + +[types.ts:32](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L32) ### duration -• `Optional` **duration**: _number_ (Default: **200**) +• `Optional` **duration**: `number` (Default: **200**) Duration of the transition (ms) -Defined in: [types.ts:34](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L34) +#### Defined in + +[types.ts:34](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L34) ### easing -• `Optional` **easing**: _string_ (Default: **"ease-in-out"**) +• `Optional` **easing**: `string` (Default: **"ease-in-out"**) CSS Easing used for transitions -Defined in: [types.ts:36](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L36) +#### Defined in + +[types.ts:36](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L36) ### exclude -• `Optional` **exclude**: Element[] (Default: **[]**) +• `Optional` **exclude**: `Element`[] (Default: **[]**) Add elements to this array that should be excluded from Panzoom handling. Ancestors of event targets are also checked. e.g. links and buttons that should not propagate the click event. -Defined in: [types.ts:43](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L43) +#### Defined in + +[types.ts:43](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L43) ### excludeClass -• `Optional` **excludeClass**: _string_ (Default: **"panzoom-exclude"**) +• `Optional` **excludeClass**: `string` (Default: **"panzoom-exclude"**) Add this class to any element within the Panzoom element that you want to exclude from Panzoom handling. That element's children will also be excluded. e.g. links and buttons that should not propagate the click event. -Defined in: [types.ts:50](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L50) +#### Defined in + +[types.ts:50](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L50) ### force -• `Optional` **force**: _boolean_ +• `Optional` **force**: `boolean` `force` should be used sparingly to temporarily override and ignore options such as disablePan, @@ -233,11 +249,13 @@ panzoom.pan(50, 100, { force: true }) panzoom.zoom(1, { force: true }) ``` -Defined in: [types.ts:66](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L66) +#### Defined in + +[types.ts:66](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L66) ### handleStartEvent -• `Optional` **handleStartEvent**: (`event`: Event) => _void_ (Default: **(e: Event) => { +• `Optional` **handleStartEvent**: (`event`: `Event`) => `void` (Default: **(e: Event) => { e.preventDefault() e.stopPropagation() }**) @@ -265,27 +283,37 @@ Panzoom(elem, { }) ``` -#### Parameters: +#### Type declaration + +▸ (`event`): `void` + +##### Parameters + +| Name | Type | +| :------ | :------ | +| `event` | `Event` | + +##### Returns -| Name | Type | -| :------ | :---- | -| `event` | Event | +`void` -**Returns:** _void_ +#### Defined in -Defined in: [types.ts:91](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L91) +[types.ts:91](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L91) ### noBind -• `Optional` **noBind**: _boolean_ +• `Optional` **noBind**: `boolean` Skip binding the default Panzoom event listeners -Defined in: [types.ts:95](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L95) +#### Defined in + +[types.ts:95](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L95) ### origin -• `Optional` **origin**: _string_ +• `Optional` **origin**: `string` **Change this at your own risk.** The `transform-origin` is the origin from which transforms are applied. @@ -299,19 +327,23 @@ defaults are set to do the more complicated calculations. And again, changing this for SVG in IE doesn't work at all. -Defined in: [types.ts:109](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L109) +#### Defined in + +[types.ts:109](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L109) ### overflow -• `Optional` **overflow**: _string_ (Default: **"hidden"**) +• `Optional` **overflow**: `string` (Default: **"hidden"**) The overflow CSS value for the parent. Defaults to 'hidden' -Defined in: [types.ts:111](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L111) +#### Defined in + +[types.ts:111](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L111) ### setTransform -• `Optional` **setTransform**: (`elem`: HTMLElement \| SVGElement, `__namedParameters`: _CurrentValues_, `_options?`: _PanzoomOptions_) => _void_ +• `Optional` **setTransform**: (`elem`: `HTMLElement` \| `SVGElement`, `__namedParameters`: CurrentValues, `_options?`: PanzoomOptions) => `void` Override the transform setter. This is exposed mostly so the user could @@ -329,55 +361,71 @@ const panzoom = Panzoom(elem, { }) ``` +#### Type declaration + +▸ (`elem`, `__namedParameters`, `_options?`): `void` + Set the transform using the proper prefix -#### Parameters: +##### Parameters + +| Name | Type | +| :------------------ | :------------------------------------- | +| `elem` | `HTMLElement` \| `SVGElement` | +| `__namedParameters` | CurrentValues](types.currentvalues.md) | +| `_options?` | [PanzoomOptions | + +##### Returns -| Name | Type | -| :------------------ | :--------------------------------------- | -| `elem` | HTMLElement \| SVGElement | -| `__namedParameters` | _CurrentValues_](types.currentvalues.md) | -| `_options?` | [_PanzoomOptions_ | +`void` -**Returns:** _void_ +#### Defined in -Defined in: [css.ts:82](https://github.com/timmywil/panzoom/blob/8ce8194/src/css.ts#L82) +[types.ts:129](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L129) ### silent -• `Optional` **silent**: _boolean_ +• `Optional` **silent**: `boolean` Silence all events -Defined in: [types.ts:131](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L131) +#### Defined in + +[types.ts:131](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L131) ### startScale -• `Optional` **startScale**: _number_ (Default: **1**) +• `Optional` **startScale**: `number` (Default: **1**) Scale used to set the beginning transform -Defined in: [types.ts:137](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L137) +#### Defined in + +[types.ts:137](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L137) ### startX -• `Optional` **startX**: _number_ (Default: **0**) +• `Optional` **startX**: `number` (Default: **0**) X Value used to set the beginning transform -Defined in: [types.ts:133](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L133) +#### Defined in + +[types.ts:133](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L133) ### startY -• `Optional` **startY**: _number_ (Default: **0**) +• `Optional` **startY**: `number` (Default: **0**) Y Value used to set the beginning transform -Defined in: [types.ts:135](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L135) +#### Defined in + +[types.ts:135](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L135) ### touchAction -• `Optional` **touchAction**: _string_ (Default: **"none"**) +• `Optional` **touchAction**: `string` (Default: **"none"**) This value is used to set touch-action on both the Panzoom element and its parent. @@ -387,7 +435,9 @@ Set this to empty string to re-enable scrolling on mobile, but note that both scrolling and panning cannot work at the same time. -Defined in: [types.ts:147](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L147) +#### Defined in + +[types.ts:147](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L147) ## PanOptions (includes MiscOptions) @@ -407,109 +457,133 @@ empty space around the element will be shown. **Note**: the containment pan adjustment is not affected by the `disablePan` option. -Defined in: [types.ts:166](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L166) +#### Defined in + +[types.ts:166](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L166) ### cursor -• `Optional` **cursor**: _string_ (Default: **"move"**) +• `Optional` **cursor**: `string` (Default: **"move"**) The cursor style to set on the panzoom element -Defined in: [types.ts:168](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L168) +#### Defined in + +[types.ts:168](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L168) ### disablePan -• `Optional` **disablePan**: _boolean_ (Default: **false**) +• `Optional` **disablePan**: `boolean` (Default: **false**) Disable panning functionality. Note: disablePan does not affect focal point zooming or the contain option. The element will still pan accordingly. -Defined in: [types.ts:174](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L174) +#### Defined in + +[types.ts:174](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L174) ### disableXAxis -• `Optional` **disableXAxis**: _boolean_ (Default: **false**) +• `Optional` **disableXAxis**: `boolean` (Default: **false**) Pan only on the Y axis -Defined in: [types.ts:176](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L176) +#### Defined in + +[types.ts:176](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L176) ### disableYAxis -• `Optional` **disableYAxis**: _boolean_ (Default: **false**) +• `Optional` **disableYAxis**: `boolean` (Default: **false**) Pan only on the X axis -Defined in: [types.ts:178](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L178) +#### Defined in + +[types.ts:178](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L178) ### panOnlyWhenZoomed -• `Optional` **panOnlyWhenZoomed**: _boolean_ (Default: **false**) +• `Optional` **panOnlyWhenZoomed**: `boolean` (Default: **false**) Disable panning while the scale is equal to the starting value -Defined in: [types.ts:182](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L182) +#### Defined in + +[types.ts:182](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L182) ### relative -• `Optional` **relative**: _boolean_ (Default: **false**) +• `Optional` **relative**: `boolean` (Default: **false**) When passing x and y values to .pan(), treat the values as relative to their current values -Defined in: [types.ts:180](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L180) +#### Defined in + +[types.ts:180](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L180) ## ZoomOptions (includes MiscOptions) ### disableZoom -• `Optional` **disableZoom**: _boolean_ (Default: **false**) +• `Optional` **disableZoom**: `boolean` (Default: **false**) Disable zooming functionality -Defined in: [types.ts:187](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L187) +#### Defined in + +[types.ts:187](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L187) ### focal -• `Optional` **focal**: _object_ +• `Optional` **focal**: `Object` Zoom to the given point on the panzoom element. This point is expected to be relative to the panzoom element's dimensions and is unrelated to the parent dimensions. -#### Type declaration: +#### Type declaration | Name | Type | | :--- | :------- | -| `x` | _number_ | -| `y` | _number_ | +| `x` | `number` | +| `y` | `number` | -Defined in: [types.ts:194](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L194) +#### Defined in + +[types.ts:194](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L194) ### maxScale -• `Optional` **maxScale**: _number_ (Default: **4**) +• `Optional` **maxScale**: `number` (Default: **4**) The maximum scale when zooming -Defined in: [types.ts:198](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L198) +#### Defined in + +[types.ts:198](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L198) ### minScale -• `Optional` **minScale**: _number_ (Default: **0.125**) +• `Optional` **minScale**: `number` (Default: **0.125**) The minimum scale when zooming -Defined in: [types.ts:196](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L196) +#### Defined in + +[types.ts:196](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L196) ### step -• `Optional` **step**: _number_ (Default: **0.3**) +• `Optional` **step**: `number` (Default: **0.3**) The step affects zoom calculation when zooming with a mouse wheel, when pinch zooming, or when using zoomIn/zoomOut -Defined in: [types.ts:200](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L200) +#### Defined in + +[types.ts:200](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L200) ## PanzoomObject @@ -517,83 +591,125 @@ These methods are available after initializing Panzoom ### bind -• **bind**: () => _void_ +• **bind**: () => `void` Bind the default down, move, and up event listeners to the Panzoom element. This does not normally need to be called. It gets called by default when creating a new Panzoom object, but can be skipped with the `noBind` option. -**Returns:** _void_ +#### Type declaration + +▸ (): `void` + +##### Returns -Defined in: [types.ts:221](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L221) +`void` + +#### Defined in + +[types.ts:221](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L221) ### destroy -• **destroy**: () => _void_ +• **destroy**: () => `void` Remove all event listeners bound to the the Panzoom element -**Returns:** _void_ +#### Type declaration + +▸ (): `void` + +##### Returns + +`void` + +#### Defined in -Defined in: [types.ts:223](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L223) +[types.ts:223](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L223) ### eventNames -• **eventNames**: _object_ +• **eventNames**: `Object` This object exposes the event names used by Panzoom, depending on the current browser's support for Pointer or Touch events. -#### Type declaration: +#### Type declaration | Name | Type | | :----- | :------- | -| `down` | _string_ | -| `move` | _string_ | -| `up` | _string_ | +| `down` | `string` | +| `move` | `string` | +| `up` | `string` | -Defined in: [types.ts:229](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L229) +#### Defined in + +[types.ts:229](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L229) ### getOptions -• **getOptions**: () => _PanzoomOptions_ +• **getOptions**: () => PanzoomOptions Returns a _copy_ of the current options object -**Returns:** _PanzoomOptions_ +#### Type declaration + +▸ (): PanzoomOptions](../modules/types.md#panzoomoptions) + +##### Returns -Defined in: [types.ts:235](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L235) +[PanzoomOptions + +#### Defined in + +[types.ts:235](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L235) ### getPan -• **getPan**: () => { `x`: _number_ ; `y`: _number_ } +• **getPan**: () => { `x`: `number` ; `y`: `number` } Get the current x/y translation -**Returns:** _object_ +#### Type declaration + +▸ (): `Object` + +##### Returns + +`Object` | Name | Type | | :--- | :------- | -| `x` | _number_ | -| `y` | _number_ | +| `x` | `number` | +| `y` | `number` | -Defined in: [types.ts:231](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L231) +#### Defined in + +[types.ts:231](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L231) ### getScale -• **getScale**: () => _number_ +• **getScale**: () => `number` Get the current scale -**Returns:** _number_ +#### Type declaration + +▸ (): `number` + +##### Returns + +`number` + +#### Defined in -Defined in: [types.ts:233](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L233) +[types.ts:233](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L233) ### pan -• **pan**: (`x`: _string_ \| _number_, `y`: _string_ \| _number_, `panOptions?`: _PanOptions_](../modules/types.md#panoptions)) => [_[CurrentValues](#CurrentValues)_ +• **pan**: (`x`: `string` \| `number`, `y`: `string` \| `number`, `panOptions?`: PanOptions](../modules/types.md#panoptions)) => [[CurrentValues](#CurrentValues) Pan the Panzoom element to the given x and y coordinates @@ -604,21 +720,29 @@ panzoom.pan(50, 100) panzoom.pan(10, 10, { relative: true }) ``` -#### Parameters: +#### Type declaration -| Name | Type | -| :------------ | :------------------- | -| `x` | _string_ \| _number_ | -| `y` | _string_ \| _number_ | -| `panOptions?` | _PanOptions_ | +▸ (`x`, `y`, `panOptions?`): [CurrentValues](#CurrentValues) -**Returns:** _[CurrentValues](#CurrentValues)_ +##### Parameters -Defined in: [types.ts:246](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L246) +| Name | Type | +| :------------ | :------------------------------------------ | +| `x` | `string` \| `number` | +| `y` | `string` \| `number` | +| `panOptions?` | PanOptions](../modules/types.md#panoptions) | + +##### Returns + +[[CurrentValues](#CurrentValues) + +#### Defined in + +[types.ts:246](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L246) ### reset -• **reset**: (`resetOptions?`: _PanzoomOptions_](../modules/types.md#panzoomoptions)) => [_[CurrentValues](#CurrentValues)_ +• **reset**: (`resetOptions?`: PanzoomOptions](../modules/types.md#panzoomoptions)) => [[CurrentValues](#CurrentValues) Reset the pan and zoom to startX, startY, and startScale. Animates by default, ignoring the global option. @@ -631,19 +755,27 @@ panzoom.reset() panzoom.reset({ animate: false }) ``` -#### Parameters: +#### Type declaration + +▸ (`resetOptions?`): [CurrentValues](#CurrentValues) + +##### Parameters -| Name | Type | -| :-------------- | :--------------- | -| `resetOptions?` | _PanzoomOptions_ | +| Name | Type | +| :-------------- | :-------------------------------------------------- | +| `resetOptions?` | PanzoomOptions](../modules/types.md#panzoomoptions) | -**Returns:** _[CurrentValues](#CurrentValues)_ +##### Returns -Defined in: [types.ts:259](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L259) +[[CurrentValues](#CurrentValues) + +#### Defined in + +[types.ts:259](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L259) ### resetStyle -• **resetStyle**: () => _void_ +• **resetStyle**: () => `void` Reset the styles set on the Panzoom element and its parent (such as overflow, cursor, etc.) @@ -652,13 +784,21 @@ and its parent (such as overflow, cursor, etc.) panzoom.resetStyle() ``` -**Returns:** _void_ +#### Type declaration + +▸ (): `void` + +##### Returns -Defined in: [types.ts:268](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L268) +`void` + +#### Defined in + +[types.ts:268](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L268) ### setOptions -• **setOptions**: (`options?`: _PanzoomOptions_) => _void_ +• **setOptions**: (`options?`: PanzoomOptions) => `void` Change any number of options on a Panzoom instance. Setting some options will have side-effects. @@ -671,36 +811,52 @@ const panzoom = Panzoom(elem, { cursor: 'move' }) panzoom.setOptions({ cursor: 'default' }) ``` -#### Parameters: +#### Type declaration + +▸ (`options?`): `void` -| Name | Type | -| :--------- | :--------------- | -| `options?` | _PanzoomOptions_ | +##### Parameters -**Returns:** _void_ +| Name | Type | +| :--------- | :------------- | +| `options?` | PanzoomOptions | -Defined in: [types.ts:281](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L281) +##### Returns + +`void` + +#### Defined in + +[types.ts:281](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L281) ### setStyle -• **setStyle**: (`name`: _string_, `value`: _string_) => _void_ +• **setStyle**: (`name`: `string`, `value`: `string`) => `void` A convenience method for setting prefixed styles on the Panzoom element -#### Parameters: +#### Type declaration + +▸ (`name`, `value`): `void` + +##### Parameters | Name | Type | | :------ | :------- | -| `name` | _string_ | -| `value` | _string_ | +| `name` | `string` | +| `value` | `string` | + +##### Returns -**Returns:** _void_ +`void` -Defined in: [types.ts:283](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L283) +#### Defined in + +[types.ts:283](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L283) ### zoom -• **zoom**: (`scale`: _number_, `zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ +• **zoom**: (`scale`: `number`, `zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) Zoom the Panzoom element to the given scale @@ -709,20 +865,28 @@ panzoom.zoom(2.2) panzoom.zoom(2.2, { animate: true }) ``` -#### Parameters: +#### Type declaration + +▸ (`scale`, `zoomOptions?`): [CurrentValues](#CurrentValues) + +##### Parameters + +| Name | Type | +| :------------- | :-------------------------------------------- | +| `scale` | `number` | +| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | -| Name | Type | -| :------------- | :------------ | -| `scale` | _number_ | -| `zoomOptions?` | _ZoomOptions_ | +##### Returns -**Returns:** _[CurrentValues](#CurrentValues)_ +[[CurrentValues](#CurrentValues) -Defined in: [types.ts:292](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L292) +#### Defined in + +[types.ts:292](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L292) ### zoomIn -• **zoomIn**: (`zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ +• **zoomIn**: (`zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) Zoom in using the predetermined increment set in options. Animates by default, ignoring the global option. @@ -733,19 +897,27 @@ panzoom.zoomIn() panzoom.zoomIn({ animate: false }) ``` -#### Parameters: +#### Type declaration + +▸ (`zoomOptions?`): [CurrentValues](#CurrentValues) + +##### Parameters -| Name | Type | -| :------------- | :------------ | -| `zoomOptions?` | _ZoomOptions_ | +| Name | Type | +| :------------- | :-------------------------------------------- | +| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | -**Returns:** _[CurrentValues](#CurrentValues)_ +##### Returns -Defined in: [types.ts:303](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L303) +[[CurrentValues](#CurrentValues) + +#### Defined in + +[types.ts:303](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L303) ### zoomOut -• **zoomOut**: (`zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ +• **zoomOut**: (`zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) Zoom out using the predetermined increment set in options. Animates by default, ignoring the global option. @@ -756,19 +928,27 @@ panzoom.zoomOut() panzoom.zoomOut({ animate: false }) ``` -#### Parameters: +#### Type declaration + +▸ (`zoomOptions?`): [CurrentValues](#CurrentValues) + +##### Parameters + +| Name | Type | +| :------------- | :-------------------------------------------- | +| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | + +##### Returns -| Name | Type | -| :------------- | :------------ | -| `zoomOptions?` | _ZoomOptions_ | +[[CurrentValues](#CurrentValues) -**Returns:** _[CurrentValues](#CurrentValues)_ +#### Defined in -Defined in: [types.ts:314](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L314) +[types.ts:314](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L314) ### zoomToPoint -• **zoomToPoint**: (`scale`: _number_, `point`: { `clientX`: _number_ ; `clientY`: _number_ }, `zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ +• **zoomToPoint**: (`scale`: `number`, `point`: { `clientX`: `number` ; `clientY`: `number` }, `zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) Zoom the Panzoom element to a focal point using the given pointer/touch/mouse event or constructed point. @@ -779,23 +959,31 @@ the same way as a `pointermove` event on the Panzoom element's parent. panzoom.zoomToPoint(1.2, pointerEvent) ``` -#### Parameters: +#### Type declaration -| Name | Type | -| :-------------- | :------------ | -| `scale` | _number_ | -| `point` | _object_ | -| `point.clientX` | _number_ | -| `point.clientY` | _number_ | -| `zoomOptions?` | _ZoomOptions_ | +▸ (`scale`, `point`, `zoomOptions?`): [CurrentValues](#CurrentValues) -**Returns:** _[CurrentValues](#CurrentValues)_ +##### Parameters -Defined in: [types.ts:325](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L325) +| Name | Type | +| :-------------- | :-------------------------------------------- | +| `scale` | `number` | +| `point` | `Object` | +| `point.clientX` | `number` | +| `point.clientY` | `number` | +| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | + +##### Returns + +[[CurrentValues](#CurrentValues) + +#### Defined in + +[types.ts:325](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L325) ### zoomWithWheel -• **zoomWithWheel**: (`event`: WheelEvent, `zoomOptions?`: _ZoomOptions_](../modules/types.md#zoomoptions)) => [_[CurrentValues](#CurrentValues)_ +• **zoomWithWheel**: (`event`: `WheelEvent`, `zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) Zoom the Panzoom element to a focal point using the given WheelEvent @@ -819,42 +1007,58 @@ elem.parentElement.addEventListener('wheel', function (event) { }) ``` -#### Parameters: +#### Type declaration + +▸ (`event`, `zoomOptions?`): [CurrentValues](#CurrentValues) + +##### Parameters -| Name | Type | -| :------------- | :------------ | -| `event` | WheelEvent | -| `zoomOptions?` | _ZoomOptions_ | +| Name | Type | +| :------------- | :-------------------------------------------- | +| `event` | `WheelEvent` | +| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | -**Returns:** _[CurrentValues](#CurrentValues)_ +##### Returns -Defined in: [types.ts:354](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L354) +[[CurrentValues](#CurrentValues) + +#### Defined in + +[types.ts:354](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L354) ## CurrentValues ### isSVG -• `Optional` **isSVG**: _boolean_ +• `Optional` **isSVG**: `boolean` + +#### Defined in -Defined in: [types.ts:211](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L211) +[types.ts:211](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L211) ### scale -• **scale**: _number_ +• **scale**: `number` -Defined in: [types.ts:210](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L210) +#### Defined in + +[types.ts:210](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L210) ### x -• **x**: _number_ +• **x**: `number` + +#### Defined in -Defined in: [types.ts:208](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L208) +[types.ts:208](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L208) ### y -• **y**: _number_ +• **y**: `number` + +#### Defined in -Defined in: [types.ts:209](https://github.com/timmywil/panzoom/blob/8ce8194/src/types.ts#L209) +[types.ts:209](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L209) ## Events diff --git a/package-lock.json b/package-lock.json index c3116513..84f4470d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,26 +14,26 @@ } }, "@babel/compat-data": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.0.tgz", - "integrity": "sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.4.tgz", + "integrity": "sha512-i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==", "dev": true }, "@babel/core": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.0.tgz", - "integrity": "sha512-8YqpRig5NmIHlMLw09zMlPTvUVMILjqCOtVgu+TVNWEBvy9b5I3RRyhqnrV4hjgEK7n8P9OqvkWJAFmEL6Wwfw==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.3.tgz", + "integrity": "sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.0", + "@babel/generator": "^7.14.3", "@babel/helper-compilation-targets": "^7.13.16", - "@babel/helper-module-transforms": "^7.14.0", + "@babel/helper-module-transforms": "^7.14.2", "@babel/helpers": "^7.14.0", - "@babel/parser": "^7.14.0", + "@babel/parser": "^7.14.3", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0", + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -77,12 +77,12 @@ } }, "@babel/generator": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.1.tgz", - "integrity": "sha512-TMGhsXMXCP/O1WtQmZjpEYDhCYC9vFhayWZPJSZCGkPJgUqX0rF0wwtrYvnzVxIjcF80tkUertXVk5cwqi5cAQ==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", + "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==", "dev": true, "requires": { - "@babel/types": "^7.14.1", + "@babel/types": "^7.14.2", "jsesc": "^2.5.1", "source-map": "^0.5.0" } @@ -107,14 +107,14 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz", - "integrity": "sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.4.tgz", + "integrity": "sha512-JgdzOYZ/qGaKTVkn5qEDV/SXAh8KcyUVkCoSWGN8T3bwrgd6m+/dJa2kVGi6RJYJgEYPBdZ84BZp9dUjNWkBaA==", "dev": true, "requires": { - "@babel/compat-data": "^7.13.15", + "@babel/compat-data": "^7.14.4", "@babel/helper-validator-option": "^7.12.17", - "browserslist": "^4.14.5", + "browserslist": "^4.16.6", "semver": "^6.3.0" }, "dependencies": { @@ -127,23 +127,23 @@ } }, "@babel/helper-create-class-features-plugin": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.1.tgz", - "integrity": "sha512-r8rsUahG4ywm0QpGcCrLaUSOuNAISR3IZCg4Fx05Ozq31aCUrQsTLH6KPxy0N5ULoQ4Sn9qjNdGNtbPWAC6hYg==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.4.tgz", + "integrity": "sha512-idr3pthFlDCpV+p/rMgGLGYIVtazeatrSOQk8YzO2pAepIjQhCN3myeihVg58ax2bbbGK9PUE1reFi7axOYIOw==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-function-name": "^7.12.13", + "@babel/helper-function-name": "^7.14.2", "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/helper-replace-supers": "^7.13.12", + "@babel/helper-replace-supers": "^7.14.4", "@babel/helper-split-export-declaration": "^7.12.13" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz", - "integrity": "sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.3.tgz", + "integrity": "sha512-JIB2+XJrb7v3zceV2XzDhGIB902CmKGSpSl4q2C6agU9SNLG/2V1RtFRGPG1Ajh9STj3+q6zJMOC+N/pp2P9DA==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.12.13", @@ -151,9 +151,9 @@ } }, "@babel/helper-define-polyfill-provider": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.0.tgz", - "integrity": "sha512-JT8tHuFjKBo8NnaUbblz7mIu1nnvUDiHVjXXkulZULyidvo/7P6TY7+YqpV37IfF+KUFxmlK04elKtGKXaiVgw==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz", + "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==", "dev": true, "requires": { "@babel/helper-compilation-targets": "^7.13.0", @@ -184,14 +184,14 @@ } }, "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", + "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==", "dev": true, "requires": { "@babel/helper-get-function-arity": "^7.12.13", "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.2" } }, "@babel/helper-get-function-arity": { @@ -232,9 +232,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.0.tgz", - "integrity": "sha512-L40t9bxIuGOfpIGA3HNkJhU9qYrf4y5A5LUSw7rGMSn+pcG8dfJ0g6Zval6YJGd2nEjI7oP00fRdnhLKndx6bw==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", + "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.13.12", @@ -243,8 +243,8 @@ "@babel/helper-split-export-declaration": "^7.12.13", "@babel/helper-validator-identifier": "^7.14.0", "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0" + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.2" }, "dependencies": { "@babel/helper-validator-identifier": { @@ -282,15 +282,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.13.12.tgz", - "integrity": "sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz", + "integrity": "sha512-zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.13.12", "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.12" + "@babel/traverse": "^7.14.2", + "@babel/types": "^7.14.4" } }, "@babel/helper-simple-access": { @@ -367,9 +367,9 @@ } }, "@babel/parser": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.1.tgz", - "integrity": "sha512-muUGEKu8E/ftMTPlNp+mc6zL3E9zKWmF5sDHZ5MSsoTP9Wyz64AhEf9kD08xYJ7w6Hdcu8H550ircnPyWSIF0Q==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz", + "integrity": "sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==", "dev": true }, "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { @@ -384,9 +384,9 @@ } }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.15.tgz", - "integrity": "sha512-VapibkWzFeoa6ubXy/NgV5U2U4MVnUlvnx6wo1XhlsaTrLYWE0UFpDQsVrmn22q5CzeloqJ8gEMHSKxuee6ZdA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.2.tgz", + "integrity": "sha512-b1AM4F6fwck4N8ItZ/AtC4FP/cqZqmKRQ4FaTDutwSYyjuhtvsGEMLK4N/ztV/ImP40BjIDyMgBQAeAMsQYVFQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -405,19 +405,20 @@ } }, "@babel/plugin-proposal-class-static-block": { - "version": "7.13.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.13.11.tgz", - "integrity": "sha512-fJTdFI4bfnMjvxJyNuaf8i9mVcZ0UhetaGEUHaHV9KEnibLugJkZAtXikR8KcYj+NYmI4DZMS8yQAyg+hvfSqg==", + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.3.tgz", + "integrity": "sha512-HEjzp5q+lWSjAgJtSluFDrGGosmwTgKwCXdDQZvhKsRlwv3YdkUEqxNrrjesJd+B9E9zvr1PVPVBvhYZ9msjvQ==", "dev": true, "requires": { + "@babel/helper-create-class-features-plugin": "^7.14.3", "@babel/helper-plugin-utils": "^7.13.0", "@babel/plugin-syntax-class-static-block": "^7.12.13" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.13.8.tgz", - "integrity": "sha512-ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.2.tgz", + "integrity": "sha512-oxVQZIWFh91vuNEMKltqNsKLFWkOIyJc95k2Gv9lWVyDfPUQGSSlbDEgWuJUU1afGE9WwlzpucMZ3yDRHIItkA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -425,19 +426,19 @@ } }, "@babel/plugin-proposal-export-namespace-from": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz", - "integrity": "sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.2.tgz", + "integrity": "sha512-sRxW3z3Zp3pFfLAgVEvzTFutTXax837oOatUIvSG9o5gRj9mKwm3br1Se5f4QalTQs9x4AzlA/HrCWbQIHASUQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, "@babel/plugin-proposal-json-strings": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.13.8.tgz", - "integrity": "sha512-w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.2.tgz", + "integrity": "sha512-w2DtsfXBBJddJacXMBhElGEYqCZQqN99Se1qeYn8DVLB33owlrlLftIbMzn5nz1OITfDVknXF433tBrLEAOEjA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -445,9 +446,9 @@ } }, "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.13.8.tgz", - "integrity": "sha512-aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.2.tgz", + "integrity": "sha512-1JAZtUrqYyGsS7IDmFeaem+/LJqujfLZ2weLR9ugB0ufUPjzf8cguyVT1g5im7f7RXxuLq1xUxEzvm68uYRtGg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -455,9 +456,9 @@ } }, "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.13.8.tgz", - "integrity": "sha512-iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.2.tgz", + "integrity": "sha512-ebR0zU9OvI2N4qiAC38KIAK75KItpIPTpAtd2r4OZmMFeKbKJpUFLYP2EuDut82+BmYi8sz42B+TfTptJ9iG5Q==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -465,32 +466,32 @@ } }, "@babel/plugin-proposal-numeric-separator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz", - "integrity": "sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.2.tgz", + "integrity": "sha512-DcTQY9syxu9BpU3Uo94fjCB3LN9/hgPS8oUL7KrSW3bA2ePrKZZPJcc5y0hoJAM9dft3pGfErtEUvxXQcfLxUg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.13.8.tgz", - "integrity": "sha512-DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.4.tgz", + "integrity": "sha512-AYosOWBlyyXEagrPRfLJ1enStufsr7D1+ddpj8OLi9k7B6+NdZ0t/9V7Fh+wJ4g2Jol8z2JkgczYqtWrZd4vbA==", "dev": true, "requires": { - "@babel/compat-data": "^7.13.8", - "@babel/helper-compilation-targets": "^7.13.8", + "@babel/compat-data": "^7.14.4", + "@babel/helper-compilation-targets": "^7.14.4", "@babel/helper-plugin-utils": "^7.13.0", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.13.0" + "@babel/plugin-transform-parameters": "^7.14.2" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.13.8.tgz", - "integrity": "sha512-0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.2.tgz", + "integrity": "sha512-XtkJsmJtBaUbOxZsNk0Fvrv8eiqgneug0A6aqLFZ4TSkar2L5dSXWcnUKHgmjJt49pyB/6ZHvkr3dPgl9MOWRQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -498,9 +499,9 @@ } }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.13.12.tgz", - "integrity": "sha512-fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.2.tgz", + "integrity": "sha512-qQByMRPwMZJainfig10BoaDldx/+VDtNcrA7qdNaEOAj6VXud+gfrkA8j4CRAU5HjnWREXqIpSpH30qZX1xivA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0", @@ -696,25 +697,25 @@ } }, "@babel/plugin-transform-block-scoping": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.1.tgz", - "integrity": "sha512-2mQXd0zBrwfp0O1moWIhPpEeTKDvxyHcnma3JATVP1l+CctWBuot6OJG8LQ4DnBj4ZZPSmlb/fm4mu47EOAnVA==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.4.tgz", + "integrity": "sha512-5KdpkGxsZlTk+fPleDtGKsA+pon28+ptYmMO8GBSa5fHERCJWAzj50uAfCKBqq42HO+Zot6JF1x37CRprwmN4g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0" } }, "@babel/plugin-transform-classes": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.13.0.tgz", - "integrity": "sha512-9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.4.tgz", + "integrity": "sha512-p73t31SIj6y94RDVX57rafVjttNr8MvKEgs5YFatNB/xC68zM3pyosuOEcQmYsYlyQaGY9R7rAULVRcat5FKJQ==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-function-name": "^7.12.13", + "@babel/helper-function-name": "^7.14.2", "@babel/helper-optimise-call-expression": "^7.12.13", "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-replace-supers": "^7.13.0", + "@babel/helper-replace-supers": "^7.14.4", "@babel/helper-split-export-declaration": "^7.12.13", "globals": "^11.1.0" } @@ -729,9 +730,9 @@ } }, "@babel/plugin-transform-destructuring": { - "version": "7.13.17", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.17.tgz", - "integrity": "sha512-UAUqiLv+uRLO+xuBKKMEpC+t7YRNVRqBsWWq1yKXbBZBje/t3IXCiSinZhjn/DC3qzBfICeYd2EFGEbHsh5RLA==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.4.tgz", + "integrity": "sha512-JyywKreTCGTUsL1OKu1A3ms/R1sTP0WxbpXlALeGzF53eB3bxtNkYdMj9SDgK7g6ImPy76J5oYYKoTtQImlhQA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0" @@ -804,12 +805,12 @@ } }, "@babel/plugin-transform-modules-amd": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.0.tgz", - "integrity": "sha512-CF4c5LX4LQ03LebQxJ5JZes2OYjzBuk1TdiF7cG7d5dK4lAdw9NZmaxq5K/mouUdNeqwz3TNjnW6v01UqUNgpQ==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.2.tgz", + "integrity": "sha512-hPC6XBswt8P3G2D1tSV2HzdKvkqOpmbyoy+g73JG0qlF/qx2y3KaMmXb1fLrpmWGLZYA0ojCvaHdzFWjlmV+Pw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.14.0", + "@babel/helper-module-transforms": "^7.14.2", "@babel/helper-plugin-utils": "^7.13.0", "babel-plugin-dynamic-import-node": "^2.3.3" } @@ -886,9 +887,9 @@ } }, "@babel/plugin-transform-parameters": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.13.0.tgz", - "integrity": "sha512-Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz", + "integrity": "sha512-NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.13.0" @@ -987,28 +988,28 @@ } }, "@babel/preset-env": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.1.tgz", - "integrity": "sha512-0M4yL1l7V4l+j/UHvxcdvNfLB9pPtIooHTbEhgD/6UGyh8Hy3Bm1Mj0buzjDXATCSz3JFibVdnoJZCrlUCanrQ==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.4.tgz", + "integrity": "sha512-GwMMsuAnDtULyOtuxHhzzuSRxFeP0aR/LNzrHRzP8y6AgDNgqnrfCCBm/1cRdTU75tRs28Eh76poHLcg9VF0LA==", "dev": true, "requires": { - "@babel/compat-data": "^7.14.0", - "@babel/helper-compilation-targets": "^7.13.16", + "@babel/compat-data": "^7.14.4", + "@babel/helper-compilation-targets": "^7.14.4", "@babel/helper-plugin-utils": "^7.13.0", "@babel/helper-validator-option": "^7.12.17", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.13.12", - "@babel/plugin-proposal-async-generator-functions": "^7.13.15", + "@babel/plugin-proposal-async-generator-functions": "^7.14.2", "@babel/plugin-proposal-class-properties": "^7.13.0", - "@babel/plugin-proposal-class-static-block": "^7.13.11", - "@babel/plugin-proposal-dynamic-import": "^7.13.8", - "@babel/plugin-proposal-export-namespace-from": "^7.12.13", - "@babel/plugin-proposal-json-strings": "^7.13.8", - "@babel/plugin-proposal-logical-assignment-operators": "^7.13.8", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8", - "@babel/plugin-proposal-numeric-separator": "^7.12.13", - "@babel/plugin-proposal-object-rest-spread": "^7.13.8", - "@babel/plugin-proposal-optional-catch-binding": "^7.13.8", - "@babel/plugin-proposal-optional-chaining": "^7.13.12", + "@babel/plugin-proposal-class-static-block": "^7.14.3", + "@babel/plugin-proposal-dynamic-import": "^7.14.2", + "@babel/plugin-proposal-export-namespace-from": "^7.14.2", + "@babel/plugin-proposal-json-strings": "^7.14.2", + "@babel/plugin-proposal-logical-assignment-operators": "^7.14.2", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.2", + "@babel/plugin-proposal-numeric-separator": "^7.14.2", + "@babel/plugin-proposal-object-rest-spread": "^7.14.4", + "@babel/plugin-proposal-optional-catch-binding": "^7.14.2", + "@babel/plugin-proposal-optional-chaining": "^7.14.2", "@babel/plugin-proposal-private-methods": "^7.13.0", "@babel/plugin-proposal-private-property-in-object": "^7.14.0", "@babel/plugin-proposal-unicode-property-regex": "^7.12.13", @@ -1029,10 +1030,10 @@ "@babel/plugin-transform-arrow-functions": "^7.13.0", "@babel/plugin-transform-async-to-generator": "^7.13.0", "@babel/plugin-transform-block-scoped-functions": "^7.12.13", - "@babel/plugin-transform-block-scoping": "^7.14.1", - "@babel/plugin-transform-classes": "^7.13.0", + "@babel/plugin-transform-block-scoping": "^7.14.4", + "@babel/plugin-transform-classes": "^7.14.4", "@babel/plugin-transform-computed-properties": "^7.13.0", - "@babel/plugin-transform-destructuring": "^7.13.17", + "@babel/plugin-transform-destructuring": "^7.14.4", "@babel/plugin-transform-dotall-regex": "^7.12.13", "@babel/plugin-transform-duplicate-keys": "^7.12.13", "@babel/plugin-transform-exponentiation-operator": "^7.12.13", @@ -1040,14 +1041,14 @@ "@babel/plugin-transform-function-name": "^7.12.13", "@babel/plugin-transform-literals": "^7.12.13", "@babel/plugin-transform-member-expression-literals": "^7.12.13", - "@babel/plugin-transform-modules-amd": "^7.14.0", + "@babel/plugin-transform-modules-amd": "^7.14.2", "@babel/plugin-transform-modules-commonjs": "^7.14.0", "@babel/plugin-transform-modules-systemjs": "^7.13.8", "@babel/plugin-transform-modules-umd": "^7.14.0", "@babel/plugin-transform-named-capturing-groups-regex": "^7.12.13", "@babel/plugin-transform-new-target": "^7.12.13", "@babel/plugin-transform-object-super": "^7.12.13", - "@babel/plugin-transform-parameters": "^7.13.0", + "@babel/plugin-transform-parameters": "^7.14.2", "@babel/plugin-transform-property-literals": "^7.12.13", "@babel/plugin-transform-regenerator": "^7.13.15", "@babel/plugin-transform-reserved-words": "^7.12.13", @@ -1059,7 +1060,7 @@ "@babel/plugin-transform-unicode-escapes": "^7.12.13", "@babel/plugin-transform-unicode-regex": "^7.12.13", "@babel/preset-modules": "^0.1.4", - "@babel/types": "^7.14.1", + "@babel/types": "^7.14.4", "babel-plugin-polyfill-corejs2": "^0.2.0", "babel-plugin-polyfill-corejs3": "^0.2.0", "babel-plugin-polyfill-regenerator": "^0.2.0", @@ -1137,17 +1138,17 @@ } }, "@babel/traverse": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.0.tgz", - "integrity": "sha512-dZ/a371EE5XNhTHomvtuLTUyx6UEoJmYX+DT5zBCQN3McHemsuIaKKYqsc/fs26BEkHs/lBZy0J571LP5z9kQA==", + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", + "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.0", - "@babel/helper-function-name": "^7.12.13", + "@babel/generator": "^7.14.2", + "@babel/helper-function-name": "^7.14.2", "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.14.0", - "@babel/types": "^7.14.0", + "@babel/parser": "^7.14.2", + "@babel/types": "^7.14.2", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1181,9 +1182,9 @@ } }, "@babel/types": { - "version": "7.14.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.1.tgz", - "integrity": "sha512-S13Qe85fzLs3gYRUnrpyeIrBJIMYv33qSTg1qoBwiG6nPKwUWAD9odSzWhEedpwOIzSEI6gbdQIWEMiCI42iBA==", + "version": "7.14.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.4.tgz", + "integrity": "sha512-lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.0", @@ -1199,17 +1200,16 @@ } }, "@commitlint/cli": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-12.1.1.tgz", - "integrity": "sha512-SB67/s6VJ50seoPx/Sr2gj1fMzKrx+udgarecGdr8h43ah+M2e22gjQJ7xHv5KwyPQ+6ug1YOMCL34ubT4zupQ==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-12.1.4.tgz", + "integrity": "sha512-ZR1WjXLvqEffYyBPT0XdnSxtt3Ty1TMoujEtseW5o3vPnkA1UNashAMjQVg/oELqfaiAMnDw8SERPMN0e/0kLg==", "dev": true, "requires": { - "@commitlint/format": "^12.1.1", - "@commitlint/lint": "^12.1.1", - "@commitlint/load": "^12.1.1", - "@commitlint/read": "^12.1.1", - "@commitlint/types": "^12.1.1", - "get-stdin": "8.0.0", + "@commitlint/format": "^12.1.4", + "@commitlint/lint": "^12.1.4", + "@commitlint/load": "^12.1.4", + "@commitlint/read": "^12.1.4", + "@commitlint/types": "^12.1.4", "lodash": "^4.17.19", "resolve-from": "5.0.0", "resolve-global": "1.0.0", @@ -1257,12 +1257,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -1324,37 +1318,37 @@ } }, "@commitlint/config-conventional": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.1.1.tgz", - "integrity": "sha512-15CqbXMsQiEb0qbzjEHe2OkzaXPYSp7RxaS6KoSVk/4W0QiigquavQ+M0huBZze92h0lMS6Pxoq4AJ5CQ3D+iQ==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.1.4.tgz", + "integrity": "sha512-ZIdzmdy4o4WyqywMEpprRCrehjCSQrHkaRTVZV411GyLigFQHlEBSJITAihLAWe88Qy/8SyoIe5uKvAsV5vRqQ==", "dev": true, "requires": { "conventional-changelog-conventionalcommits": "^4.3.1" } }, "@commitlint/ensure": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.1.1.tgz", - "integrity": "sha512-XEUQvUjzBVQM7Uv8vYz+c7PDukFvx0AvQEyX/V+PaTkCK/xPvexu7FLbFwvypjSt9BPMf+T/rhB1hVmldkd6lw==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.1.4.tgz", + "integrity": "sha512-MxHIBuAG9M4xl33qUfIeMSasbv3ktK0W+iygldBxZOL4QSYC2Gn66pZAQMnV9o3V+sVFHoAK2XUKqBAYrgbEqw==", "dev": true, "requires": { - "@commitlint/types": "^12.1.1", + "@commitlint/types": "^12.1.4", "lodash": "^4.17.19" } }, "@commitlint/execute-rule": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.1.1.tgz", - "integrity": "sha512-6mplMGvLCKF5LieL7BRhydpg32tm6LICnWQADrWU4S5g9PKi2utNvhiaiuNPoHUXr29RdbNaGNcyyPv8DSjJsQ==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.1.4.tgz", + "integrity": "sha512-h2S1j8SXyNeABb27q2Ok2vD1WfxJiXvOttKuRA9Or7LN6OQoC/KtT3844CIhhWNteNMu/wE0gkTqGxDVAnJiHg==", "dev": true }, "@commitlint/format": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-12.1.1.tgz", - "integrity": "sha512-bTAoOryTFLqls17JTaRwk2WDVOP0NwuG4F/JPK8RaF6DMZNVQTfajkgTxFENNZRnESfau1BvivvEXfUAW2ZsvA==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-12.1.4.tgz", + "integrity": "sha512-h28ucMaoRjVvvgS6Bdf85fa/+ZZ/iu1aeWGCpURnQV7/rrVjkhNSjZwGlCOUd5kDV1EnZ5XdI7L18SUpRjs26g==", "dev": true, "requires": { - "@commitlint/types": "^12.1.1", + "@commitlint/types": "^12.1.4", "chalk": "^4.0.0" }, "dependencies": { @@ -1410,12 +1404,12 @@ } }, "@commitlint/is-ignored": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.1.1.tgz", - "integrity": "sha512-Sn4fsnWX+wLAJOD/UZeoVruB98te1TyPYRiDEq0MhRJAQIrP+7jE/O3/ass68AAMq00HvH3OK9kt4UBXggcGjA==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.1.4.tgz", + "integrity": "sha512-uTu2jQU2SKvtIRVLOzMQo3KxDtO+iJ1p0olmncwrqy4AfPLgwoyCP2CiULq5M7xpR3+dE3hBlZXbZTQbD7ycIw==", "dev": true, "requires": { - "@commitlint/types": "^12.1.1", + "@commitlint/types": "^12.1.4", "semver": "7.3.5" }, "dependencies": { @@ -1431,26 +1425,26 @@ } }, "@commitlint/lint": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-12.1.1.tgz", - "integrity": "sha512-FFFPpku/E0svL1jaUVqosuZJDDWiNWYBlUw5ZEljh3MwWRcoaWtMIX5bseX+IvHpFZsCTAiBs1kCgNulCi0UvA==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-12.1.4.tgz", + "integrity": "sha512-1kZ8YDp4to47oIPFELUFGLiLumtPNKJigPFDuHt2+f3Q3IKdQ0uk53n3CPl4uoyso/Og/EZvb1mXjFR/Yce4cA==", "dev": true, "requires": { - "@commitlint/is-ignored": "^12.1.1", - "@commitlint/parse": "^12.1.1", - "@commitlint/rules": "^12.1.1", - "@commitlint/types": "^12.1.1" + "@commitlint/is-ignored": "^12.1.4", + "@commitlint/parse": "^12.1.4", + "@commitlint/rules": "^12.1.4", + "@commitlint/types": "^12.1.4" } }, "@commitlint/load": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-12.1.1.tgz", - "integrity": "sha512-qOQtgNdJRULUQWP9jkpTwhj7aEtnqUtqeUpbQ9rjS+GIUST65HZbteNUX4S0mAEGPWqy2aK5xGd73cUfFSvuuw==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-12.1.4.tgz", + "integrity": "sha512-Keszi0IOjRzKfxT+qES/n+KZyLrxy79RQz8wWgssCboYjKEp+wC+fLCgbiMCYjI5k31CIzIOq/16J7Ycr0C0EA==", "dev": true, "requires": { - "@commitlint/execute-rule": "^12.1.1", - "@commitlint/resolve-extends": "^12.1.1", - "@commitlint/types": "^12.1.1", + "@commitlint/execute-rule": "^12.1.4", + "@commitlint/resolve-extends": "^12.1.4", + "@commitlint/types": "^12.1.4", "chalk": "^4.0.0", "cosmiconfig": "^7.0.0", "lodash": "^4.17.19", @@ -1509,30 +1503,30 @@ } }, "@commitlint/message": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-12.1.1.tgz", - "integrity": "sha512-RakDSLAiOligXjhbLahV8HowF4K75pZIcs0+Ii9Q8Gz5H3DWf1Ngit7alFTWfcbf/+DTjSzVPov5HiwQZPIBUg==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-12.1.4.tgz", + "integrity": "sha512-6QhalEKsKQ/Y16/cTk5NH4iByz26fqws2ub+AinHPtM7Io0jy4e3rym9iE+TkEqiqWZlUigZnTwbPvRJeSUBaA==", "dev": true }, "@commitlint/parse": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-12.1.1.tgz", - "integrity": "sha512-nuljIvAbBDr93DgL0wCArftEIhjSghawAwhvrKNV9FFcqAJqfVqitwMxJrNDCQ5pgUMCSKULLOEv+dA0bLlTEQ==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-12.1.4.tgz", + "integrity": "sha512-yqKSAsK2V4X/HaLb/yYdrzs6oD/G48Ilt0EJ2Mp6RJeWYxG14w/Out6JrneWnr/cpzemyN5hExOg6+TB19H/Lw==", "dev": true, "requires": { - "@commitlint/types": "^12.1.1", + "@commitlint/types": "^12.1.4", "conventional-changelog-angular": "^5.0.11", "conventional-commits-parser": "^3.0.0" } }, "@commitlint/read": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-12.1.1.tgz", - "integrity": "sha512-1k0CQEoZIdixvmqZRKEcWdj2XiKS7SlizEOJ1SE99Qui5d5FlBey8eaooTGgmpR6zObpIHJehtEPzM3VzUT3qA==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-12.1.4.tgz", + "integrity": "sha512-TnPQSJgD8Aod5Xeo9W4SaYKRZmIahukjcCWJ2s5zb3ZYSmj6C85YD9cR5vlRyrZjj78ItLUV/X4FMWWVIS38Jg==", "dev": true, "requires": { - "@commitlint/top-level": "^12.1.1", - "@commitlint/types": "^12.1.1", + "@commitlint/top-level": "^12.1.4", + "@commitlint/types": "^12.1.4", "fs-extra": "^9.0.0", "git-raw-commits": "^2.0.0" }, @@ -1568,9 +1562,9 @@ } }, "@commitlint/resolve-extends": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.1.1.tgz", - "integrity": "sha512-/DXRt0S0U3o9lq5cc8OL1Lkx0IjW0HcDWjUkUXshAajBIKBYSJB8x/loNCi1krNEJ8SwLXUEFt5OLxNO6wE9yQ==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.1.4.tgz", + "integrity": "sha512-R9CoUtsXLd6KSCfsZly04grsH6JVnWFmVtWgWs1KdDpdV+G3TSs37tColMFqglpkx3dsWu8dsPD56+D9YnJfqg==", "dev": true, "requires": { "import-fresh": "^3.0.0", @@ -1580,27 +1574,27 @@ } }, "@commitlint/rules": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-12.1.1.tgz", - "integrity": "sha512-oCcLF/ykcJfhM2DeeaDyrgdaiuKsqIPNocugdPj2WEyhSYqmx1/u18CV96LAtW+WyyiOLCCeiZwiQutx3T5nXg==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-12.1.4.tgz", + "integrity": "sha512-W8m6ZSjg7RuIsIfzQiFHa48X5mcPXeKT9yjBxVmjHvYfS2FDBf1VxCQ7vO0JTVIdV4ohjZ0eKg/wxxUuZHJAZg==", "dev": true, "requires": { - "@commitlint/ensure": "^12.1.1", - "@commitlint/message": "^12.1.1", - "@commitlint/to-lines": "^12.1.1", - "@commitlint/types": "^12.1.1" + "@commitlint/ensure": "^12.1.4", + "@commitlint/message": "^12.1.4", + "@commitlint/to-lines": "^12.1.4", + "@commitlint/types": "^12.1.4" } }, "@commitlint/to-lines": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.1.1.tgz", - "integrity": "sha512-W23AH2XF5rI27MOAPSSr0TUDoRe7ZbFoRtYhFnPu2MBmcuDA9Tmfd9N5sM2tBXtdE26uq3SazwKqGt1OoGAilQ==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.1.4.tgz", + "integrity": "sha512-TParumvbi8bdx3EdLXz2MaX+e15ZgoCqNUgqHsRLwyqLUTRbqCVkzrfadG1UcMQk8/d5aMbb327ZKG3Q4BRorw==", "dev": true }, "@commitlint/top-level": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.1.1.tgz", - "integrity": "sha512-g7uRbr81QEIg+pbii0OkE17Zh/2C/f6dSmiMDVRn1S0+hNHR1bENCh18hVUKcV/qKTUsKkFlhhWXM9mQBfxQJw==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.1.4.tgz", + "integrity": "sha512-d4lTJrOT/dXlpY+NIt4CUl77ciEzYeNVc0VFgUQ6VA+b1rqYD2/VWFjBlWVOrklxtSDeKyuEhs36RGrppEFAvg==", "dev": true, "requires": { "find-up": "^5.0.0" @@ -1652,9 +1646,9 @@ } }, "@commitlint/types": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-12.1.1.tgz", - "integrity": "sha512-+qGH+s2Lo6qwacV2X3/ZypZwaAI84ift+1HBjXdXtI/q0F5NtmXucV3lcQOTviMTNiJhq4qWON2fjci2NItASw==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-12.1.4.tgz", + "integrity": "sha512-KRIjdnWNUx6ywz+SJvjmNCbQKcKP6KArhjZhY2l+CWKxak0d77SOjggkMwFTiSgLODOwmuLTbarR2ZfWPiPMlw==", "dev": true, "requires": { "chalk": "^4.0.0" @@ -1712,21 +1706,21 @@ } }, "@discoveryjs/json-ext": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz", - "integrity": "sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.3.tgz", + "integrity": "sha512-Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==", "dev": true }, "@eslint/eslintrc": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.1.tgz", - "integrity": "sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", + "integrity": "sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", "espree": "^7.3.0", - "globals": "^12.1.0", + "globals": "^13.9.0", "ignore": "^4.0.6", "import-fresh": "^3.2.1", "js-yaml": "^3.13.1", @@ -1735,12 +1729,12 @@ }, "dependencies": { "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { - "type-fest": "^0.8.1" + "type-fest": "^0.20.2" } }, "ignore": { @@ -1750,9 +1744,9 @@ "dev": true }, "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true } } @@ -1770,28 +1764,28 @@ "dev": true }, "@nodelib/fs.scandir": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", - "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "requires": { - "@nodelib/fs.stat": "2.0.3", + "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true }, "@nodelib/fs.walk": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", - "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", + "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", "dev": true, "requires": { - "@nodelib/fs.scandir": "2.1.3", + "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" } }, @@ -1831,9 +1825,9 @@ } }, "@octokit/graphql": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.6.1.tgz", - "integrity": "sha512-2lYlvf4YTDgZCTXTW4+OX+9WTLFtEUc6hGm4qM1nlZjzxj+arizM4aHWzBVBCxY9glh7GIs0WEuiSgbVzv8cmA==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.6.2.tgz", + "integrity": "sha512-WmsIR1OzOr/3IqfG9JIczI8gMJUMzzyx5j0XXQ4YihHtKlQc+u35VpVoOXhlKAlaBntvry1WpAzPl/a+s3n89Q==", "dev": true, "requires": { "@octokit/request": "^5.3.0", @@ -1842,9 +1836,9 @@ } }, "@octokit/openapi-types": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-7.0.0.tgz", - "integrity": "sha512-gV/8DJhAL/04zjTI95a7FhQwS6jlEE0W/7xeYAzuArD0KVAVWDLP2f3vi98hs3HLTczxXdRK/mF0tRoQPpolEw==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-7.2.3.tgz", + "integrity": "sha512-V1ycxkR19jqbIl3evf2RQiMRBvTNRi+Iy9h20G5OP5dPfEF6GJ1DPlUeiZRxo2HJxRr+UA4i0H1nn4btBDPFrw==", "dev": true }, "@octokit/plugin-paginate-rest": { @@ -1873,14 +1867,14 @@ } }, "@octokit/request": { - "version": "5.4.15", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.15.tgz", - "integrity": "sha512-6UnZfZzLwNhdLRreOtTkT9n57ZwulCve8q3IT/Z477vThu6snfdkBuhxnChpOKNGxcQ71ow561Qoa6uqLdPtag==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.5.0.tgz", + "integrity": "sha512-jxbMLQdQ3heFMZUaTLSCqcKs2oAHEYh7SnLLXyxbZmlULExZ/RXai7QUWWFKowcGGPlCZuKTZg0gSKHWrfYEoQ==", "dev": true, "requires": { "@octokit/endpoint": "^6.0.1", "@octokit/request-error": "^2.0.0", - "@octokit/types": "^6.7.1", + "@octokit/types": "^6.16.1", "is-plain-object": "^5.0.0", "node-fetch": "^2.6.1", "universal-user-agent": "^6.0.0" @@ -1910,49 +1904,24 @@ } }, "@octokit/types": { - "version": "6.14.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.14.2.tgz", - "integrity": "sha512-wiQtW9ZSy4OvgQ09iQOdyXYNN60GqjCL/UdMsepDr1Gr0QzpW6irIKbH3REuAHXAhxkEk9/F2a3Gcs1P6kW5jA==", + "version": "6.16.2", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.16.2.tgz", + "integrity": "sha512-wWPSynU4oLy3i4KGyk+J1BLwRKyoeW2TwRHgwbDz17WtVFzSK2GOErGliruIx8c+MaYtHSYTx36DSmLNoNbtgA==", "dev": true, "requires": { - "@octokit/openapi-types": "^7.0.0" + "@octokit/openapi-types": "^7.2.3" } }, "@release-it/conventional-changelog": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@release-it/conventional-changelog/-/conventional-changelog-2.0.1.tgz", - "integrity": "sha512-q67D3Jod935kZt6wThsDeOmhY+RWYPMY7nYyl0YxiXK8vVZzD+9z957fXGz+8Uk3iugmgDaucht7VxTaZlu6nA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@release-it/conventional-changelog/-/conventional-changelog-3.0.0.tgz", + "integrity": "sha512-8viDnZaCkImYTxnZqJeO/8BhCrXDfsPhhtUbTJx1ZX/TbcsmR49Zr+MoKIKWJKfeRTvXMa/NNyO//9FRQa2XbA==", "dev": true, "requires": { "concat-stream": "^2.0.0", "conventional-changelog": "^3.1.24", "conventional-recommended-bump": "^6.1.0", "prepend-file": "^2.0.0" - }, - "dependencies": { - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } } }, "@rollup/pluginutils": { @@ -2011,9 +1980,9 @@ "dev": true }, "@types/eslint": { - "version": "7.2.10", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.10.tgz", - "integrity": "sha512-kUEPnMKrqbtpCq/KTaGFFKAcz6Ethm2EjCoKIDaCmfRBWLbFuTcOJfTlorwbnboXBzahqWLgUp1BQeKHiJzPUQ==", + "version": "7.2.13", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.13.tgz", + "integrity": "sha512-LKmQCWAlnVHvvXq4oasNUMTJJb2GwSyTY8+1C7OH5ILR8mPLaljv1jxL1bXW3xB3jFbQxTKxJAvI8PyjB09aBg==", "dev": true, "requires": { "@types/estree": "*", @@ -2122,9 +2091,9 @@ "dev": true }, "@types/react": { - "version": "17.0.5", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.5.tgz", - "integrity": "sha512-bj4biDB9ZJmGAYTWSKJly6bMr4BLUiBrx9ujiJEoP9XIDY9CTaPGxE5QWN/1WjpPLzYF7/jRNnV2nNxNe970sw==", + "version": "17.0.9", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.9.tgz", + "integrity": "sha512-2Cw7FvevpJxQrCb+k5t6GH1KIvmadj5uBbjPaLlJB/nZWUj56e1ZqcD6zsoMFB47MsJUTFl9RJ132A7hb3QFJA==", "dev": true, "requires": { "@types/prop-types": "*", @@ -2133,9 +2102,9 @@ } }, "@types/react-dom": { - "version": "17.0.4", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.4.tgz", - "integrity": "sha512-Wb6rlnPJfqbhpkvYN39y1NM/pOGGPzzIRquu0RdUMvTwgXNvASFO7pdtrtvyxGTQNb9wzBaQxXAWDdEqegZw2A==", + "version": "17.0.6", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.6.tgz", + "integrity": "sha512-MGTI+TudxAnGTj8aco8mogaPSJGK2Whje7OZh1CxNLRyhJpTZg/pGQpIbCT0eCVFQyH7UFpdvCqQEThHIp/gsA==", "dev": true, "requires": { "@types/react": "*" @@ -2157,21 +2126,30 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.23.0.tgz", - "integrity": "sha512-tGK1y3KIvdsQEEgq6xNn1DjiFJtl+wn8JJQiETtCbdQxw1vzjXyAaIkEmO2l6Nq24iy3uZBMFQjZ6ECf1QdgGw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.1.tgz", + "integrity": "sha512-aoIusj/8CR+xDWmZxARivZjbMBQTT9dImUtdZ8tVCVRXgBUuuZyM5Of5A9D9arQPxbi/0rlJLcuArclz/rCMJw==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.23.0", - "@typescript-eslint/scope-manager": "4.23.0", - "debug": "^4.1.1", + "@typescript-eslint/experimental-utils": "4.26.1", + "@typescript-eslint/scope-manager": "4.26.1", + "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", - "lodash": "^4.17.15", - "regexpp": "^3.0.0", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "lodash": "^4.17.21", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" }, "dependencies": { + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -2184,62 +2162,82 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.23.0.tgz", - "integrity": "sha512-WAFNiTDnQfrF3Z2fQ05nmCgPsO5o790vOhmWKXbbYQTO9erE1/YsFot5/LnOUizLzU2eeuz6+U/81KV5/hFTGA==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.26.1.tgz", + "integrity": "sha512-sQHBugRhrXzRCs9PaGg6rowie4i8s/iD/DpTB+EXte8OMDfdCG5TvO73XlO9Wc/zi0uyN4qOmX9hIjQEyhnbmQ==", "dev": true, "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.23.0", - "@typescript-eslint/types": "4.23.0", - "@typescript-eslint/typescript-estree": "4.23.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.26.1", + "@typescript-eslint/types": "4.26.1", + "@typescript-eslint/typescript-estree": "4.26.1", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" } }, "@typescript-eslint/parser": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.23.0.tgz", - "integrity": "sha512-wsvjksHBMOqySy/Pi2Q6UuIuHYbgAMwLczRl4YanEPKW5KVxI9ZzDYh3B5DtcZPQTGRWFJrfcbJ6L01Leybwug==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.26.1.tgz", + "integrity": "sha512-q7F3zSo/nU6YJpPJvQveVlIIzx9/wu75lr6oDbDzoeIRWxpoc/HQ43G4rmMoCc5my/3uSj2VEpg/D83LYZF5HQ==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.23.0", - "@typescript-eslint/types": "4.23.0", - "@typescript-eslint/typescript-estree": "4.23.0", - "debug": "^4.1.1" + "@typescript-eslint/scope-manager": "4.26.1", + "@typescript-eslint/types": "4.26.1", + "@typescript-eslint/typescript-estree": "4.26.1", + "debug": "^4.3.1" + }, + "dependencies": { + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + } } }, "@typescript-eslint/scope-manager": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.23.0.tgz", - "integrity": "sha512-ZZ21PCFxPhI3n0wuqEJK9omkw51wi2bmeKJvlRZPH5YFkcawKOuRMQMnI8mH6Vo0/DoHSeZJnHiIx84LmVQY+w==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.26.1.tgz", + "integrity": "sha512-TW1X2p62FQ8Rlne+WEShyd7ac2LA6o27S9i131W4NwDSfyeVlQWhw8ylldNNS8JG6oJB9Ha9Xyc+IUcqipvheQ==", "dev": true, "requires": { - "@typescript-eslint/types": "4.23.0", - "@typescript-eslint/visitor-keys": "4.23.0" + "@typescript-eslint/types": "4.26.1", + "@typescript-eslint/visitor-keys": "4.26.1" } }, "@typescript-eslint/types": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.23.0.tgz", - "integrity": "sha512-oqkNWyG2SLS7uTWLZf6Sr7Dm02gA5yxiz1RP87tvsmDsguVATdpVguHr4HoGOcFOpCvx9vtCSCyQUGfzq28YCw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.26.1.tgz", + "integrity": "sha512-STyMPxR3cS+LaNvS8yK15rb8Y0iL0tFXq0uyl6gY45glyI7w0CsyqyEXl/Fa0JlQy+pVANeK3sbwPneCbWE7yg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.23.0.tgz", - "integrity": "sha512-5Sty6zPEVZF5fbvrZczfmLCOcby3sfrSPu30qKoY1U3mca5/jvU5cwsPb/CO6Q3ByRjixTMIVsDkqwIxCf/dMw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.1.tgz", + "integrity": "sha512-l3ZXob+h0NQzz80lBGaykdScYaiEbFqznEs99uwzm8fPHhDjwaBFfQkjUC/slw6Sm7npFL8qrGEAMxcfBsBJUg==", "dev": true, "requires": { - "@typescript-eslint/types": "4.23.0", - "@typescript-eslint/visitor-keys": "4.23.0", - "debug": "^4.1.1", - "globby": "^11.0.1", + "@typescript-eslint/types": "4.26.1", + "@typescript-eslint/visitor-keys": "4.26.1", + "debug": "^4.3.1", + "globby": "^11.0.3", "is-glob": "^4.0.1", - "semver": "^7.3.2", - "tsutils": "^3.17.1" + "semver": "^7.3.5", + "tsutils": "^3.21.0" }, "dependencies": { + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -2252,12 +2250,12 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.23.0.tgz", - "integrity": "sha512-5PNe5cmX9pSifit0H+nPoQBXdbNzi5tOEec+3riK+ku4e3er37pKxMKDH5Ct5Y4fhWxcD4spnlYjxi9vXbSpwg==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.1.tgz", + "integrity": "sha512-IGouNSSd+6x/fHtYRyLOM6/C+QxMDzWlDtN41ea+flWuSF9g02iqcIlX8wM53JkfljoIjP0U+yp7SiTS1onEkw==", "dev": true, "requires": { - "@typescript-eslint/types": "4.23.0", + "@typescript-eslint/types": "4.26.1", "eslint-visitor-keys": "^2.0.0" } }, @@ -2414,24 +2412,24 @@ } }, "@webpack-cli/configtest": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz", - "integrity": "sha512-WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.4.tgz", + "integrity": "sha512-cs3XLy+UcxiP6bj0A6u7MLLuwdXJ1c3Dtc0RkKg+wiI1g/Ti1om8+/2hc2A2B60NbBNAbMgyBMHvyymWm/j4wQ==", "dev": true }, "@webpack-cli/info": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.4.tgz", - "integrity": "sha512-ogE2T4+pLhTTPS/8MM3IjHn0IYplKM4HbVNMCWA9N4NrdPzunwenpCsqKEXyejMfRu6K8mhauIPYf8ZxWG5O6g==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.3.0.tgz", + "integrity": "sha512-ASiVB3t9LOKHs5DyVUcxpraBXDOKubYu/ihHhU+t1UPpxsivg6Od2E2qU4gJCekfEddzRBzHhzA/Acyw/mlK/w==", "dev": true, "requires": { "envinfo": "^7.7.3" } }, "@webpack-cli/serve": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz", - "integrity": "sha512-xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.5.1.tgz", + "integrity": "sha512-4vSVUiOPJLmr45S8rMGy7WDvpWxfFxfP/Qx/cxZFCfvoypTYpPPL1X8VIZMe0WTA+Jr7blUxwUSEZNkjoMTgSw==", "dev": true }, "@xtuc/ieee754": { @@ -2652,9 +2650,9 @@ } }, "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -2665,14 +2663,14 @@ "has-symbols": "^1.0.2", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "unbox-primitive": "^1.0.1" }, "dependencies": { "has-symbols": { @@ -2680,6 +2678,12 @@ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", "dev": true + }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true } } }, @@ -2701,19 +2705,27 @@ "dev": true }, "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" + }, + "dependencies": { + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true + } } }, "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object.assign": { @@ -2781,9 +2793,9 @@ }, "dependencies": { "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -2794,14 +2806,14 @@ "has-symbols": "^1.0.2", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "unbox-primitive": "^1.0.1" }, "dependencies": { "call-bind": { @@ -2840,13 +2852,13 @@ "dev": true }, "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" }, "dependencies": { "call-bind": { @@ -2861,10 +2873,16 @@ } } }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true + }, "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object.assign": { @@ -2987,12 +3005,6 @@ "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", "dev": true }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, "async-retry": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.1.tgz", @@ -3039,13 +3051,13 @@ } }, "babel-plugin-polyfill-corejs2": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.0.tgz", - "integrity": "sha512-9bNwiR0dS881c5SHnzCmmGlMkJLl0OUZvxrxHo9w/iNoRuqaPjqlvBf4HrovXtQs/au5yKkpcdgfT1cC5PAZwg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz", + "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==", "dev": true, "requires": { "@babel/compat-data": "^7.13.11", - "@babel/helper-define-polyfill-provider": "^0.2.0", + "@babel/helper-define-polyfill-provider": "^0.2.2", "semver": "^6.1.1" }, "dependencies": { @@ -3058,22 +3070,22 @@ } }, "babel-plugin-polyfill-corejs3": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.0.tgz", - "integrity": "sha512-zZyi7p3BCUyzNxLx8KV61zTINkkV65zVkDAFNZmrTCRVhjo1jAS+YLvDJ9Jgd/w2tsAviCwFHReYfxO3Iql8Yg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.2.tgz", + "integrity": "sha512-l1Cf8PKk12eEk5QP/NQ6TH8A1pee6wWDJ96WjxrMXFLHLOBFzYM4moG80HFgduVhTqAFez4alnZKEhP/bYHg0A==", "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.2.0", + "@babel/helper-define-polyfill-provider": "^0.2.2", "core-js-compat": "^3.9.1" } }, "babel-plugin-polyfill-regenerator": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.0.tgz", - "integrity": "sha512-J7vKbCuD2Xi/eEHxquHN14bXAW9CXtecwuLrOIDJtcZzTaPzV1VdEfoUf9AzcRBMolKUQKM9/GVojeh0hFiqMg==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz", + "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==", "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.2.0" + "@babel/helper-define-polyfill-provider": "^0.2.2" } }, "balanced-match": { @@ -3162,9 +3174,9 @@ "dev": true }, "before-after-hook": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.1.tgz", - "integrity": "sha512-/6FKxSTWoJdbsLDF8tdIjaRiFXiE6UHsEHE3OPI/cwPURCVi1ukP0gmLn7XWEiFk5TcwQjjY5PWsU+j+tgXgmw==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.2.tgz", + "integrity": "sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ==", "dev": true }, "big.js": { @@ -3336,12 +3348,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -3656,9 +3662,9 @@ } }, "normalize-url": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", - "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true } } @@ -3723,9 +3729,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001222", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001222.tgz", - "integrity": "sha512-rPmwUK0YMjfMlZVmH6nVB5U3YJ5Wnx3vmT5lnRO3nIKO8bJ+TRWMbGuuiSugDJqESy/lz+1hSrlQEagCtoOAWQ==", + "version": "1.0.30001235", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001235.tgz", + "integrity": "sha512-zWEwIVqnzPkSAXOUlQnPW2oKoYb2aLQ4Q5ejdjBcnH63rfypaW34CxaeBn1VMya2XaEU3P/R2qHpWyj+l0BT1A==", "dev": true }, "chalk": { @@ -3768,9 +3774,9 @@ "dev": true }, "ci-info": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.1.1.tgz", - "integrity": "sha512-kdRWLBIJwdsYJWYJFtAFFYxybguqeF91qpZaggjG5Nf8QKdizFG2hjqvaTXbxFIcYbSaD74KpAXv6BSm17DHEQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", + "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", "dev": true }, "cipher-base": { @@ -3983,13 +3989,13 @@ "dev": true }, "commitlint": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/commitlint/-/commitlint-12.1.1.tgz", - "integrity": "sha512-mAA0n62vKBe+70dCcji3YSVJNI9zOa3yqZ5z1KtTUwiyNkVlwscZnUSjYLofwfKNGxy3HXE5CD41kOMpRdhzcw==", + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/commitlint/-/commitlint-12.1.4.tgz", + "integrity": "sha512-SHmNe3eQrVIzxt0x5yyir8AKu6fB0DDf2Vs4Hvij5/T2ckJ22YQsLEpl1vPFKq6YPTmERjNxTgB2Dp2QQ3YTzg==", "dev": true, "requires": { - "@commitlint/cli": "^12.1.1", - "@commitlint/types": "^12.1.1" + "@commitlint/cli": "^12.1.4", + "@commitlint/types": "^12.1.4" } }, "commondir": { @@ -4067,10 +4073,35 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, + "concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "concurrently": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-6.1.0.tgz", - "integrity": "sha512-jy+xj49pvqeKjc2TAVXRIhrgPG51eBKDZti0kZ41kaWk9iLbyWBjH6KMFpW7peOLkEymD+ZM83Lx6UEy3N/M9g==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-6.2.0.tgz", + "integrity": "sha512-v9I4Y3wFoXCSY2L73yYgwA9ESrQMpRn80jMcqMgHx720Hecz2GZAvTI6bREVST6lkddNypDKRN22qhK0X8Y00g==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -4146,12 +4177,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -4164,12 +4189,6 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "string-width": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", @@ -4326,29 +4345,6 @@ "conventional-changelog-jquery": "^3.0.11", "conventional-changelog-jshint": "^2.0.9", "conventional-changelog-preset-loader": "^2.3.4" - }, - "dependencies": { - "conventional-changelog-angular": { - "version": "5.0.12", - "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz", - "integrity": "sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw==", - "dev": true, - "requires": { - "compare-func": "^2.0.0", - "q": "^1.5.1" - } - }, - "conventional-changelog-conventionalcommits": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.5.0.tgz", - "integrity": "sha512-buge9xDvjjOxJlyxUnar/+6i/aVEVGA7EEh4OafBCXPlLUQPGbRUBhBUveWRxzvR8TEjhKEP4BdepnpG2FSZXw==", - "dev": true, - "requires": { - "compare-func": "^2.0.0", - "lodash": "^4.17.15", - "q": "^1.5.1" - } - } } }, "conventional-changelog-angular": { @@ -4413,21 +4409,6 @@ "through2": "^4.0.0" }, "dependencies": { - "conventional-commits-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.1.tgz", - "integrity": "sha512-OG9kQtmMZBJD/32NEw5IhN5+HnBqVjy03eC+I71I0oQRFA5rOgA4OtPOYG7mz1GkCfCNxn3gKIX8EiHJYuf1cA==", - "dev": true, - "requires": { - "JSONStream": "^1.0.4", - "is-text-path": "^1.0.1", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0", - "trim-off-newlines": "^1.0.0" - } - }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", @@ -4437,32 +4418,19 @@ "locate-path": "^2.0.0" } }, - "git-raw-commits": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.10.tgz", - "integrity": "sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ==", - "dev": true, - "requires": { - "dargs": "^7.0.0", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - } - }, "hosted-git-info": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.0.tgz", - "integrity": "sha512-fqhGdjk4av7mT9fU/B01dUtZ+WZSc/XEXMoLXDVZukiQRXxeHSSz3AqbeWRJHtF8EQYHlAgB1NSAHU0Cm7aqZA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", + "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", "dev": true, "requires": { "lru-cache": "^6.0.0" } }, "is-core-module": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, "requires": { "has": "^1.0.3" @@ -4491,14 +4459,14 @@ } }, "normalize-package-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.1.tgz", - "integrity": "sha512-D/ttLdxo71msR4FF3VgSwK4blHfE3/vGByz1NCeE7/Dh8reQOKNJJjk5L10mLq9jxa+ZHzT1/HLgxljzbXE7Fw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", + "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", "dev": true, "requires": { - "hosted-git-info": "^4.0.0", - "resolve": "^1.17.0", - "semver": "^7.3.2", + "hosted-git-info": "^4.0.1", + "resolve": "^1.20.0", + "semver": "^7.3.4", "validate-npm-package-license": "^3.0.1" } }, @@ -4526,6 +4494,16 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, "path-type": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", @@ -4535,6 +4513,12 @@ "pify": "^3.0.0" } }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, "read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -4582,17 +4566,6 @@ "read-pkg": "^3.0.0" } }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "resolve": { "version": "1.20.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", @@ -4604,37 +4577,19 @@ } }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "dev": true, "requires": { "lru-cache": "^6.0.0" } }, - "split2": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "requires": { - "readable-stream": "^3.0.0" - } - }, "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true - }, - "through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "requires": { - "readable-stream": "3" - } } } }, @@ -4708,31 +4663,11 @@ "through2": "^4.0.0" }, "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "requires": { - "readable-stream": "3" - } } } }, @@ -4754,98 +4689,27 @@ "requires": { "JSONStream": "^1.0.4", "is-text-path": "^1.0.1", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0", - "trim-off-newlines": "^1.0.0" - } - }, - "conventional-recommended-bump": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz", - "integrity": "sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.3.4", - "conventional-commits-filter": "^2.0.7", - "conventional-commits-parser": "^3.2.0", - "git-raw-commits": "^2.0.8", - "git-semver-tags": "^4.1.1", - "meow": "^8.0.0", - "q": "^1.5.1" - }, - "dependencies": { - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "conventional-commits-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.1.tgz", - "integrity": "sha512-OG9kQtmMZBJD/32NEw5IhN5+HnBqVjy03eC+I71I0oQRFA5rOgA4OtPOYG7mz1GkCfCNxn3gKIX8EiHJYuf1cA==", - "dev": true, - "requires": { - "JSONStream": "^1.0.4", - "is-text-path": "^1.0.1", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0", - "trim-off-newlines": "^1.0.0" - } - }, - "git-raw-commits": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.10.tgz", - "integrity": "sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ==", - "dev": true, - "requires": { - "dargs": "^7.0.0", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "split2": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "requires": { - "readable-stream": "^3.0.0" - } - }, - "through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "requires": { - "readable-stream": "3" - } - } + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0", + "trim-off-newlines": "^1.0.0" + } + }, + "conventional-recommended-bump": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz", + "integrity": "sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==", + "dev": true, + "requires": { + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^2.3.4", + "conventional-commits-filter": "^2.0.7", + "conventional-commits-parser": "^3.2.0", + "git-raw-commits": "^2.0.8", + "git-semver-tags": "^4.1.1", + "meow": "^8.0.0", + "q": "^1.5.1" } }, "convert-source-map": { @@ -4876,9 +4740,9 @@ "dev": true }, "core-js-compat": { - "version": "3.11.3", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.11.3.tgz", - "integrity": "sha512-oNjHN/qUHOA0dPv+v5prqHfeSvIEJrk3hYVoaUK4MNzL9U433uu0MN+pImcdntV8o9pDq0r1v+9lTfKPjjbX/A==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.14.0.tgz", + "integrity": "sha512-R4NS2eupxtiJU+VwgkF9WTpnSfZW4pogwKHd8bclWU2sp93Pr5S1uYJI84cMOubJRou7bcfL0vmwtLslWN5p3A==", "dev": true, "requires": { "browserslist": "^4.16.6", @@ -4923,9 +4787,9 @@ }, "dependencies": { "parse-json": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", - "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -5033,15 +4897,14 @@ "dev": true }, "css-loader": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.2.4.tgz", - "integrity": "sha512-OFYGyINCKkdQsTrSYxzGSFnGS4gNjcXkKkQgWxK138jgnPt+lepxdjSZNc8sHAl5vP3DhsJUxufWIjOwI8PMMw==", + "version": "5.2.6", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.2.6.tgz", + "integrity": "sha512-0wyN5vXMQZu6BvjbrPdUJvkCzGEO24HC7IS7nW4llc6BBFC+zwR9CKtYGv63Puzsg10L/o12inMY5/2ByzfD6w==", "dev": true, "requires": { - "camelcase": "^6.2.0", "icss-utils": "^5.1.0", "loader-utils": "^2.0.0", - "postcss": "^8.2.10", + "postcss": "^8.2.15", "postcss-modules-extract-imports": "^3.0.0", "postcss-modules-local-by-default": "^4.0.0", "postcss-modules-scope": "^3.0.0", @@ -5051,12 +4914,6 @@ "semver": "^7.3.5" }, "dependencies": { - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -5120,9 +4977,9 @@ "dev": true }, "date-fns": { - "version": "2.21.3", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.21.3.tgz", - "integrity": "sha512-HeYdzCaFflc1i4tGbj7JKMjM4cKGYoyxwcIIkHzNgCkX8xXDNJDZXgDDVchIWpN4eQc3lH37WarduXFZJOtxfw==", + "version": "2.22.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.22.1.tgz", + "integrity": "sha512-yUFPQjrxEmIsMqlHhAhmxkuH769baF21Kk+nZwZGyrMoyLA+LugaQtC0+Tqf9CBUUULWwUJt6Q5ySI3LJDDCGg==", "dev": true }, "date-format": { @@ -5467,14 +5324,6 @@ "requires": { "flat": "^5.0.2", "lodash": "^4.17.20" - }, - "dependencies": { - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - } } }, "deprecation": { @@ -5560,9 +5409,9 @@ "dev": true }, "dns-packet": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", - "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", + "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", "dev": true, "requires": { "ip": "^1.1.0", @@ -5709,9 +5558,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.3.727", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.727.tgz", - "integrity": "sha512-Mfz4FIB4FSvEwBpDfdipRIrwd6uo8gUDoRDF4QEYb4h4tSuI3ov594OrjU6on042UlFHouIJpClDODGkPcBSbg==", + "version": "1.3.749", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.749.tgz", + "integrity": "sha512-F+v2zxZgw/fMwPz/VUGIggG4ZndDsYy0vlpthi3tjmDZlcfbhN5mYW0evXUsBr2sUtuDANFtle410A9u/sd/4A==", "dev": true }, "elliptic": { @@ -5737,6 +5586,12 @@ } } }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", @@ -5923,28 +5778,30 @@ "dev": true }, "eslint": { - "version": "7.26.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.26.0.tgz", - "integrity": "sha512-4R1ieRf52/izcZE7AlLy56uIHHDLT74Yzz2Iv2l6kDaYvEu9x+wMB5dZArVL8SYGXSYV2YAg70FcW5Y5nGGNIg==", + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.28.0.tgz", + "integrity": "sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", - "@eslint/eslintrc": "^0.4.1", + "@eslint/eslintrc": "^0.4.2", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.0.1", "doctrine": "^3.0.0", "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^2.0.0", "espree": "^7.3.1", "esquery": "^1.4.0", "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", + "glob-parent": "^5.1.2", "globals": "^13.6.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", @@ -5953,7 +5810,7 @@ "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", - "lodash": "^4.17.21", + "lodash.merge": "^4.6.2", "minimatch": "^3.0.4", "natural-compare": "^1.4.0", "optionator": "^0.9.1", @@ -5962,7 +5819,7 @@ "semver": "^7.2.1", "strip-ansi": "^6.0.0", "strip-json-comments": "^3.1.0", - "table": "^6.0.4", + "table": "^6.0.9", "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, @@ -6003,6 +5860,12 @@ "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true } } }, @@ -6057,10 +5920,48 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, "globals": { - "version": "13.8.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.8.0.tgz", - "integrity": "sha512-rHtdA6+PDBIjeEvA91rpqzEvk/k3/i7EeNQiryiWuJH0Hw9cpyJMAt2jtbAwUaRdhD+573X4vWw6IcjKPasi9Q==", + "version": "13.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", + "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -6078,12 +5979,6 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -6126,9 +6021,9 @@ } }, "eslint-plugin-react": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.23.2.tgz", - "integrity": "sha512-AfjgFQB+nYszudkxRkTFu0UR1zEQig0ArVMPloKhxwlwkzaw/fBiH0QWcBBhZONlXqQC51+nfqFrkn4EzHcGBw==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.24.0.tgz", + "integrity": "sha512-KJJIx2SYx7PBx3ONe/mEeMz4YE0Lcr7feJTCMyyKb/341NcjuAgim3Acgan89GfPv7nxXK2+0slu0CWXYM4x+Q==", "dev": true, "requires": { "array-includes": "^3.1.3", @@ -6137,12 +6032,12 @@ "has": "^1.0.3", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.0.4", - "object.entries": "^1.1.3", + "object.entries": "^1.1.4", "object.fromentries": "^2.0.4", - "object.values": "^1.1.3", + "object.values": "^1.1.4", "prop-types": "^15.7.2", "resolve": "^2.0.0-next.3", - "string.prototype.matchall": "^4.0.4" + "string.prototype.matchall": "^4.0.5" }, "dependencies": { "doctrine": { @@ -6155,9 +6050,9 @@ } }, "is-core-module": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.3.0.tgz", - "integrity": "sha512-xSphU2KG9867tsYdLD4RWQ1VqdFl4HTO9Thf3I/3dLEfr0dbPTWKsuCKrgqMljg4nPE+Gq0VCnzT3gr0CyBmsw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", "dev": true, "requires": { "has": "^1.0.3" @@ -6186,20 +6081,12 @@ } }, "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - } + "eslint-visitor-keys": "^2.0.0" } }, "eslint-visitor-keys": { @@ -6592,9 +6479,9 @@ "dev": true }, "fast-glob": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", - "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", + "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", @@ -6624,9 +6511,9 @@ "dev": true }, "fastq": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", - "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", + "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", "dev": true, "requires": { "reusify": "^1.0.4" @@ -6920,12 +6807,6 @@ "pinkie-promise": "^2.0.0" } }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, "indent-string": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", @@ -7027,9 +6908,9 @@ } }, "get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", "dev": true }, "get-stream": { @@ -7065,14 +6946,6 @@ "requires": { "gitconfiglocal": "^1.0.0", "pify": "^2.3.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } } }, "git-semver-tags": { @@ -7166,9 +7039,9 @@ "dev": true }, "globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", + "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", "dev": true, "requires": { "array-union": "^2.1.0", @@ -7854,9 +7727,9 @@ } }, "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", @@ -7979,19 +7852,20 @@ } }, "inquirer": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", - "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.0.tgz", + "integrity": "sha512-1nKYPoalt1vMBfCMtpomsUc32wmOoWXAoq3kM/5iTfxyQ2f/BxjixQpC+mbZ7BI0JUXHED4/XPXekDVtJNpXYw==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", + "chalk": "^4.1.1", "cli-cursor": "^3.1.0", "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", "lodash": "^4.17.21", "mute-stream": "0.0.8", + "ora": "^5.3.0", "run-async": "^2.4.0", "rxjs": "^6.6.6", "string-width": "^4.1.0", @@ -8039,12 +7913,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -8057,12 +7925,6 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "string-width": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", @@ -8293,9 +8155,9 @@ } }, "is-docker": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", - "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true }, "is-extendable": { @@ -8464,9 +8326,9 @@ } }, "is-ssh": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.2.tgz", - "integrity": "sha512-elEw0/0c2UscLrNG+OAorbP539E3rhliKPg+hDMWN9VwrDXfYK+4PBEykDPfxlYYtQvl84TascnQyobfQLHEhQ==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz", + "integrity": "sha512-NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ==", "dev": true, "requires": { "protocols": "^1.1.0" @@ -8768,14 +8630,14 @@ } }, "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "version": "27.0.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.2.tgz", + "integrity": "sha512-EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg==", "dev": true, "requires": { "@types/node": "*", "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" + "supports-color": "^8.0.0" }, "dependencies": { "has-flag": { @@ -8785,9 +8647,9 @@ "dev": true }, "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "requires": { "has-flag": "^4.0.0" @@ -8802,9 +8664,9 @@ "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -8908,9 +8770,9 @@ } }, "karma": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.2.tgz", - "integrity": "sha512-fo4Wt0S99/8vylZMxNj4cBFyOBBnC1bewZ0QOlePij/2SZVWxqbyLeIddY13q6URa2EpLRW8ixvFRUMjkmo1bw==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.3.3.tgz", + "integrity": "sha512-JRAujkKWaOtO2LmyPH7K2XXRhrxuFAn9loIL9+iiah6vjz+ZLkqdKsySV9clRITGhj10t9baIfbCl6CJ5hu9gQ==", "dev": true, "requires": { "body-parser": "^1.19.0", @@ -8979,12 +8841,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "graceful-fs": { "version": "4.2.6", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", @@ -9064,9 +8920,9 @@ } }, "karma-firefox-launcher": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-2.1.0.tgz", - "integrity": "sha512-dkiyqN2R6fCWt78rciOXJLFDWcQ7QEQi++HgebPJlw1y0ycDjGNDHuSrhdh48QG02fzZKK20WHFWVyBZ6CPngg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-2.1.1.tgz", + "integrity": "sha512-VzDMgPseXak9DtfyE1O5bB2BwsMy1zzO1kUxVW1rP0yhC4tDNJ0p3JoFdzvrK4QqVzdqUMa9Rx9YzkdFp8hz3Q==", "dev": true, "requires": { "is-wsl": "^2.2.0", @@ -9241,23 +9097,6 @@ "pify": "^2.0.0", "pinkie-promise": "^2.0.0", "strip-bom": "^2.0.0" - }, - "dependencies": { - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } } }, "loader-runner": { @@ -9316,6 +9155,12 @@ "integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=", "dev": true }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, "lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", @@ -9323,12 +9168,13 @@ "dev": true }, "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "requires": { - "chalk": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "dependencies": { "ansi-styles": { @@ -9511,9 +9357,9 @@ } }, "marked": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.3.tgz", - "integrity": "sha512-5otztIIcJfPc2qGTN8cVtOJEjNJZ0jwa46INMagrYfk0EvqtRuEHLsEe0LrFS0/q+ZRKT0+kXK7P2T1AN5lWRA==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.7.tgz", + "integrity": "sha512-BJXxkuIfJchcXOJWTT2DOL+yFWifFv2yGYOUzvXg8Qz610QKw+sHCvTMYwA+qWGhlA2uivBezChZ/pBy1tWdkQ==", "dev": true }, "md5.js": { @@ -9622,13 +9468,21 @@ "dev": true }, "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", "dev": true, "requires": { "braces": "^3.0.1", - "picomatch": "^2.0.5" + "picomatch": "^2.2.3" + }, + "dependencies": { + "picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true + } } }, "miller-rabin": { @@ -9766,9 +9620,9 @@ } }, "mocha": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.4.0.tgz", - "integrity": "sha512-hJaO0mwDXmZS4ghXsvPVriOhsxQ7ofcpQdm8dE+jISUOKopitvnXFQmpRR7jd2K6VBG6E26gU3IAbXXGIbu4sQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.0.0.tgz", + "integrity": "sha512-GRGG/q9bIaUkHJB9NL+KZNjDhMBHB30zW3bZW9qOiYr+QChyLjPzswaxFWkI1q6lGlSL28EQYzAi2vKWNkPx+g==", "dev": true, "requires": { "@ungap/promise-all-settled": "1.1.2", @@ -9779,20 +9633,20 @@ "diff": "5.0.0", "escape-string-regexp": "4.0.0", "find-up": "5.0.0", - "glob": "7.1.6", + "glob": "7.1.7", "growl": "1.10.5", "he": "1.2.0", - "js-yaml": "4.0.0", - "log-symbols": "4.0.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", "minimatch": "3.0.4", "ms": "2.1.3", - "nanoid": "3.1.20", + "nanoid": "3.1.23", "serialize-javascript": "5.0.1", "strip-json-comments": "3.1.1", "supports-color": "8.1.1", "which": "2.0.2", "wide-align": "1.1.3", - "workerpool": "6.1.0", + "workerpool": "6.1.4", "yargs": "16.2.0", "yargs-parser": "20.2.4", "yargs-unparser": "2.0.0" @@ -9868,12 +9722,6 @@ "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -9890,6 +9738,20 @@ "path-exists": "^4.0.0" } }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -9903,9 +9765,9 @@ "dev": true }, "js-yaml": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", - "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "requires": { "argparse": "^2.0.1" @@ -9926,12 +9788,6 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, - "nanoid": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", - "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", - "dev": true - }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -10061,9 +9917,9 @@ "optional": true }, "nanoid": { - "version": "3.1.22", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz", - "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==", + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", "dev": true }, "nanomatch": { @@ -10140,9 +9996,9 @@ "dev": true }, "node-releases": { - "version": "1.1.71", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz", - "integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==", + "version": "1.1.73", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", + "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", "dev": true }, "normalize-package-data": { @@ -10164,9 +10020,9 @@ "dev": true }, "normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.0.1.tgz", + "integrity": "sha512-VU4pzAuh7Kip71XEmO9aNREYAdMHFGTVj/i+CaTImS8x0i1d3jUZkXhqluy/PRgjPLMgsLQulYY3PJ/aSbSjpQ==", "dev": true }, "npm-run-path": { @@ -10280,21 +10136,30 @@ } }, "object.entries": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.4.tgz", + "integrity": "sha512-h4LWKWE+wKQGhtMjZEBud7uLGhqyLwj8fpHOarZhD2uY3C9cRtk57VQ89ke3moByLXMedqs3XCHzyb4AmA2DjA==", "dev": true, "requires": { - "call-bind": "^1.0.0", + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "es-abstract": "^1.18.2" }, "dependencies": { + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -10305,39 +10170,29 @@ "has-symbols": "^1.0.2", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "unbox-primitive": "^1.0.1" }, "dependencies": { - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, "requires": { "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "has": "^1.0.3", + "has-symbols": "^1.0.1" } } } }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, "has-symbols": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", @@ -10351,31 +10206,25 @@ "dev": true }, "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" - }, - "dependencies": { - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - } + "has-symbols": "^1.0.2" } }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true + }, "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object.assign": { @@ -10395,21 +10244,9 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "dependencies": { - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - } + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" } }, "string.prototype.trimstart": { @@ -10420,18 +10257,6 @@ "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3" - }, - "dependencies": { - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - } } } } @@ -10459,9 +10284,9 @@ } }, "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -10472,14 +10297,14 @@ "has-symbols": "^1.0.2", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "unbox-primitive": "^1.0.1" }, "dependencies": { "get-intrinsic": { @@ -10508,19 +10333,25 @@ "dev": true }, "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" } }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true + }, "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object.assign": { @@ -10567,15 +10398,14 @@ } }, "object.values": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz", - "integrity": "sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz", + "integrity": "sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has": "^1.0.3" + "es-abstract": "^1.18.2" }, "dependencies": { "call-bind": { @@ -10589,9 +10419,9 @@ } }, "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -10602,14 +10432,14 @@ "has-symbols": "^1.0.2", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "unbox-primitive": "^1.0.1" }, "dependencies": { "get-intrinsic": { @@ -10638,19 +10468,25 @@ "dev": true }, "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" } }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true + }, "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object.assign": { @@ -11074,9 +10910,9 @@ "dev": true }, "normalize-url": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", - "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true }, "p-cancelable": { @@ -11164,13 +11000,12 @@ "dev": true }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "error-ex": "^1.2.0" } }, "parse-path": { @@ -11197,13 +11032,13 @@ } }, "parse-url": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-5.0.2.tgz", - "integrity": "sha512-Czj+GIit4cdWtxo3ISZCvLiUjErSo0iI3wJ+q9Oi3QuMYTI6OZu+7cewMWZ+C1YAnKhYTk6/TLuhIgCypLthPA==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-5.0.3.tgz", + "integrity": "sha512-nrLCVMJpqo12X8uUJT4GJPd5AFaTOrGx/QpJy3HNcVtq0AZSstVIsnxS5fqNPuoqMUs3MyfBoOP6Zvu2Arok5A==", "dev": true, "requires": { "is-ssh": "^1.3.0", - "normalize-url": "^3.3.0", + "normalize-url": "^6.0.1", "parse-path": "^4.0.0", "protocols": "^1.4.0" } @@ -11295,14 +11130,6 @@ "graceful-fs": "^4.1.2", "pify": "^2.0.0", "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } } }, "pbkdf2": { @@ -11325,9 +11152,9 @@ "dev": true }, "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, "pinkie": { @@ -11392,22 +11219,14 @@ "dev": true }, "postcss": { - "version": "8.2.13", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.13.tgz", - "integrity": "sha512-FCE5xLH+hjbzRdpbRb1IMCvPv9yZx2QnDarBEYSN0N0HYk+TcXsEhwdFcFb+SRWOKzKGErhIEbBK2ogyLdTtfQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz", + "integrity": "sha512-+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==", "dev": true, "requires": { "colorette": "^1.2.2", - "nanoid": "^3.1.22", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } + "nanoid": "^3.1.23", + "source-map-js": "^0.6.2" } }, "postcss-modules-extract-imports": { @@ -11446,9 +11265,9 @@ } }, "postcss-selector-parser": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.5.tgz", - "integrity": "sha512-aFYPoYmXbZ1V6HZaSvat08M97A8HqO6Pjz+PiNpw/DhuRrC72XWAdp3hL6wusDCN31sSmcZyMGa2hZEuX+Xfhg==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", "dev": true, "requires": { "cssesc": "^3.0.0", @@ -11492,9 +11311,9 @@ "dev": true }, "prettier": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.0.tgz", - "integrity": "sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.1.tgz", + "integrity": "sha512-p+vNbgpLjif/+D+DwAZAbndtRrR0md0MwfmOVN9N+2RgyACMT+7tfaRnT+WDPkqnuVwleyuBIG2XBxKDme3hPA==", "dev": true }, "prettier-linter-helpers": { @@ -11685,6 +11504,12 @@ "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", "dev": true }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -11981,9 +11806,9 @@ "dev": true }, "release-it": { - "version": "14.6.2", - "resolved": "https://registry.npmjs.org/release-it/-/release-it-14.6.2.tgz", - "integrity": "sha512-rjRe2cC59ueTUGS2rkwI5JEeN0DQlU2eeq4nrCQcwQXv5IzC+9uPd7EvoUT7VDwJ4ZNu1Oh8DZVQqrtDzVboUg==", + "version": "14.8.0", + "resolved": "https://registry.npmjs.org/release-it/-/release-it-14.8.0.tgz", + "integrity": "sha512-XCw4kzJqdKgtis97HcNZ45r5dx+tZhcG1Yu2IEBKym1SceXiLBbycLsfqJQ8z+VLimClKpDeBdJkU03Vo/yFqw==", "dev": true, "requires": { "@iarna/toml": "2.2.5", @@ -12000,7 +11825,7 @@ "globby": "11.0.3", "got": "11.8.2", "import-cwd": "3.0.0", - "inquirer": "8.0.0", + "inquirer": "8.1.0", "is-ci": "3.0.0", "lodash": "4.17.21", "mime-types": "2.1.30", @@ -12069,20 +11894,6 @@ "path-exists": "^4.0.0" } }, - "globby": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.3.tgz", - "integrity": "sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -12098,12 +11909,6 @@ "p-locate": "^5.0.0" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, "mime-db": { "version": "1.47.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", @@ -12179,12 +11984,6 @@ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, "yargs-parser": { "version": "20.2.7", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", @@ -12421,9 +12220,9 @@ } }, "rollup": { - "version": "2.47.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.47.0.tgz", - "integrity": "sha512-rqBjgq9hQfW0vRmz+0S062ORRNJXvwRpzxhFXORvar/maZqY6za3rgQ/p1Glg+j1hnc1GtYyQCPiAei95uTElg==", + "version": "2.51.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.51.0.tgz", + "integrity": "sha512-ITLt9sScNCBVspSHauw/W49lEZ0vjN8LyCzSNsNaqT67vTss2lYEfOyxltX8hjrhr1l/rQwmZ2wazzEqhZ/fUg==", "dev": true, "requires": { "fsevents": "~2.3.1" @@ -12476,10 +12275,13 @@ "dev": true }, "run-parallel": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", - "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } }, "rxjs": { "version": "6.6.7", @@ -12843,9 +12645,9 @@ }, "dependencies": { "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true } } @@ -13131,6 +12933,12 @@ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true }, + "source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true + }, "source-map-resolve": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", @@ -13418,15 +13226,16 @@ } }, "string.prototype.matchall": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.4.tgz", - "integrity": "sha512-pknFIWVachNcyqRfaQSeu/FUfpvJTe4uskUSZ9Wc1RijsPuzbZ8TyYT8WCNnntCjUEqQ3vUHMAfVj2+wLAisPQ==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.5.tgz", + "integrity": "sha512-Z5ZaXO0svs0M2xd/6By3qpeKpLKd9mO4v4q3oMEQrk8Ck4xOD5d5XeBOOjGrmVZZ/AHB1S0CgG4N5r1G9N3E2Q==", "dev": true, "requires": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "has-symbols": "^1.0.1", + "es-abstract": "^1.18.2", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.2", "internal-slot": "^1.0.3", "regexp.prototype.flags": "^1.3.1", "side-channel": "^1.0.4" @@ -13443,9 +13252,9 @@ } }, "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz", + "integrity": "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==", "dev": true, "requires": { "call-bind": "^1.0.2", @@ -13456,35 +13265,33 @@ "has-symbols": "^1.0.2", "is-callable": "^1.2.3", "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", + "is-regex": "^1.1.3", + "is-string": "^1.0.6", + "object-inspect": "^1.10.3", "object-keys": "^1.1.1", "object.assign": "^4.1.2", "string.prototype.trimend": "^1.0.4", "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" - }, - "dependencies": { - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, - "has-symbols": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", - "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", - "dev": true - } + "unbox-primitive": "^1.0.1" + } + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" } }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "dev": true + }, "is-callable": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", @@ -13492,19 +13299,25 @@ "dev": true }, "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" + "has-symbols": "^1.0.2" } }, + "is-string": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz", + "integrity": "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==", + "dev": true + }, "object-inspect": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.2.tgz", - "integrity": "sha512-gz58rdPpadwztRrPjZE9DZLOABUpTGdcANUgOwBFO1C+HZZhePoP83M65WGDmbpwFYJSWqavbl4SgDn4k8RYTA==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", + "integrity": "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==", "dev": true }, "object.assign": { @@ -13658,9 +13471,9 @@ } }, "table": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.0.tgz", - "integrity": "sha512-SAM+5p6V99gYiiy2gT5ArdzgM1dLDed0nkrWmG6Fry/bUS/m9x83BwpJUOf1Qj/x2qJd+thL6IkIx7qPGRxqBw==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", + "integrity": "sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -13672,9 +13485,9 @@ }, "dependencies": { "ajv": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.3.0.tgz", - "integrity": "sha512-RYE7B5An83d7eWnDR8kbdaIFqmKCNsP16ay1hDbJEU+sa0e3H9SebskCt0Uufem6cfAVu7Col6ubcn/W+Sm8/Q==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", + "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -13689,12 +13502,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -13780,17 +13587,17 @@ } }, "terser-webpack-plugin": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.1.tgz", - "integrity": "sha512-5XNNXZiR8YO6X6KhSGXfY0QrGrCRlSwAEjIIrlRQR4W8nP69TaJUlh3bkuac6zzgspiGPfKEHcY295MMVExl5Q==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz", + "integrity": "sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==", "dev": true, "requires": { - "jest-worker": "^26.6.2", + "jest-worker": "^27.0.2", "p-limit": "^3.1.0", "schema-utils": "^3.0.0", "serialize-javascript": "^5.0.1", "source-map": "^0.6.1", - "terser": "^5.5.1" + "terser": "^5.7.0" }, "dependencies": { "commander": { @@ -13984,9 +13791,9 @@ "dev": true }, "ts-loader": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.1.2.tgz", - "integrity": "sha512-ryMgATvLLl+z8zQvdlm6Pep0slmwxFWIEnq/5VdiLVjqQXnFJgO+qNLGIIP+d2N2jsFZ9MibZCVDb2bSp7OmEA==", + "version": "9.2.3", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.3.tgz", + "integrity": "sha512-sEyWiU3JMHBL55CIeC4iqJQadI0U70A5af0kvgbNLHVNz2ACztQg0j/9x10bjjIht8WfFYLKfn4L6tkZ+pu+8Q==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -14117,77 +13924,20 @@ } }, "typedoc": { - "version": "0.20.36", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.20.36.tgz", - "integrity": "sha512-qFU+DWMV/hifQ9ZAlTjdFO9wbUIHuUBpNXzv68ZyURAP9pInjZiO4+jCPeAzHVcaBCHER9WL/+YzzTt6ZlN/Nw==", + "version": "0.21.0-beta.2", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.21.0-beta.2.tgz", + "integrity": "sha512-oCjdueR4glcSHT6ynR2q5HTpBkBM1ihf3/Wfpl0qriDJutrSg4idZovN+1jx66s+p9QmJE7yzDCXPrZ2GW/Xbw==", "dev": true, "requires": { - "colors": "^1.4.0", - "fs-extra": "^9.1.0", + "glob": "^7.1.6", "handlebars": "^4.7.7", "lodash": "^4.17.21", "lunr": "^2.3.9", - "marked": "^2.0.3", + "marked": "^2.0.7", "minimatch": "^3.0.0", "progress": "^2.0.3", - "shelljs": "^0.8.4", "shiki": "^0.9.3", "typedoc-default-themes": "^0.12.10" - }, - "dependencies": { - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true - } } }, "typedoc-default-themes": { @@ -14197,39 +13947,18 @@ "dev": true }, "typedoc-plugin-markdown": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.8.0.tgz", - "integrity": "sha512-TVyz7hnVa7MpFQ26U4kCmsCoExtVi9OHD70Tijo9d3G0qGDxRWw3X9EomPThi54CLszLEj/MNSRsVbylNc9EEQ==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.9.0.tgz", + "integrity": "sha512-s445YeUe8bH7me15T+hsHZgNmAvvF7QIpX02vFgseLGtghAwmtdZYVOqPneWoKqRv/JNpPSuyZb3CeblML9jOg==", "dev": true, "requires": { "handlebars": "^4.7.7" - }, - "dependencies": { - "handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } } }, "typescript": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz", - "integrity": "sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.2.tgz", + "integrity": "sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw==", "dev": true }, "ua-parser-js": { @@ -14239,9 +13968,9 @@ "dev": true }, "uglify-js": { - "version": "3.13.6", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.6.tgz", - "integrity": "sha512-rRprLwl8RVaS+Qvx3Wh5hPfPBn9++G6xkGlUupya0s5aDmNjI7z3lnRLB3u7sN4OmbB0pWgzhM9BEJyiWAwtAA==", + "version": "3.13.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.9.tgz", + "integrity": "sha512-wZbyTQ1w6Y7fHdt8sJnHfSIuWeDgk6B5rCb4E/AM6QNNPbOMIZph21PW5dRB3h7Df0GszN+t7RuUH6sWK5bF0g==", "dev": true }, "unbox-primitive": { @@ -14617,9 +14346,9 @@ "dev": true }, "watchpack": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", - "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz", + "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==", "dev": true, "requires": { "glob-to-regexp": "^0.4.1", @@ -14645,9 +14374,9 @@ } }, "webpack": { - "version": "5.37.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.37.0.tgz", - "integrity": "sha512-yvdhgcI6QkQkDe1hINBAJ1UNevqNGTVaCkD2SSJcB8rcrNNl922RI8i2DXUAuNfANoxwsiXXEA4ZPZI9q2oGLA==", + "version": "5.38.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.38.1.tgz", + "integrity": "sha512-OqRmYD1OJbHZph6RUMD93GcCZy4Z4wC0ele4FXyYF0J6AxO1vOSuIlU1hkS/lDlR9CDYBz64MZRmdbdnFFoT2g==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", @@ -14660,7 +14389,7 @@ "chrome-trace-event": "^1.0.2", "enhanced-resolve": "^5.8.0", "es-module-lexer": "^0.4.0", - "eslint-scope": "^5.1.1", + "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.4", @@ -14671,14 +14400,14 @@ "schema-utils": "^3.0.0", "tapable": "^2.1.1", "terser-webpack-plugin": "^5.1.1", - "watchpack": "^2.0.0", - "webpack-sources": "^2.1.1" + "watchpack": "^2.2.0", + "webpack-sources": "^2.3.0" }, "dependencies": { "acorn": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.2.4.tgz", - "integrity": "sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.3.0.tgz", + "integrity": "sha512-tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==", "dev": true }, "graceful-fs": { @@ -14688,18 +14417,18 @@ "dev": true }, "mime-db": { - "version": "1.47.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", - "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==", + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", + "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", "dev": true }, "mime-types": { - "version": "2.1.30", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz", - "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==", + "version": "2.1.31", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", + "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", "dev": true, "requires": { - "mime-db": "1.47.0" + "mime-db": "1.48.0" } }, "neo-async": { @@ -14711,15 +14440,15 @@ } }, "webpack-cli": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.0.tgz", - "integrity": "sha512-7bKr9182/sGfjFm+xdZSwgQuFjgEcy0iCTIBxRUeteJ2Kr8/Wz0qNJX+jw60LU36jApt4nmMkep6+W5AKhok6g==", + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.2.tgz", + "integrity": "sha512-mEoLmnmOIZQNiRl0ebnjzQ74Hk0iKS5SiEEnpq3dRezoyR3yPaeQZCMCe+db4524pj1Pd5ghZXjT41KLzIhSLw==", "dev": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.0.3", - "@webpack-cli/info": "^1.2.4", - "@webpack-cli/serve": "^1.4.0", + "@webpack-cli/configtest": "^1.0.4", + "@webpack-cli/info": "^1.3.0", + "@webpack-cli/serve": "^1.5.1", "colorette": "^1.2.1", "commander": "^7.0.0", "execa": "^5.0.0", @@ -15089,12 +14818,20 @@ } }, "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", + "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", "dev": true, "requires": { "async-limiter": "~1.0.0" + }, + "dependencies": { + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + } } } } @@ -15118,9 +14855,9 @@ } }, "webpack-merge": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz", - "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", "dev": true, "requires": { "clone-deep": "^4.0.1", @@ -15128,9 +14865,9 @@ } }, "webpack-sources": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz", - "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz", + "integrity": "sha512-WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==", "dev": true, "requires": { "source-list-map": "^2.0.1", @@ -15401,12 +15138,6 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -15497,9 +15228,9 @@ "dev": true }, "workerpool": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.0.tgz", - "integrity": "sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg==", + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.4.tgz", + "integrity": "sha512-jGWPzsUqzkow8HoAvqaPWTUPCrlPJaJ5tY8Iz7n1uCz3tTp6s3CDG0FF1NsX42WNlkRSW6Mr+CDZGnNoSsKa7g==", "dev": true }, "wrap-ansi": { @@ -15532,9 +15263,9 @@ } }, "ws": { - "version": "7.4.5", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.5.tgz", - "integrity": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", "dev": true }, "xdg-basedir": { @@ -15562,9 +15293,9 @@ "dev": true }, "yaml": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", - "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true }, "yargs": { diff --git a/package.json b/package.json index 194567cd..1a3105a8 100644 --- a/package.json +++ b/package.json @@ -47,48 +47,48 @@ }, "dependencies": {}, "devDependencies": { - "@babel/core": "^7.14.0", - "@babel/preset-env": "^7.14.1", - "@commitlint/cli": "^12.1.1", - "@commitlint/config-conventional": "^12.1.1", - "@release-it/conventional-changelog": "^2.0.1", + "@babel/core": "^7.14.3", + "@babel/preset-env": "^7.14.4", + "@commitlint/cli": "^12.1.4", + "@commitlint/config-conventional": "^12.1.4", + "@release-it/conventional-changelog": "^3.0.0", "@types/mocha": "^8.2.2", "@types/prismjs": "^1.16.5", - "@types/react-dom": "^17.0.4", - "@typescript-eslint/eslint-plugin": "^4.23.0", - "@typescript-eslint/parser": "^4.23.0", - "commitlint": "^12.1.1", - "concurrently": "^6.1.0", + "@types/react-dom": "^17.0.6", + "@typescript-eslint/eslint-plugin": "^4.26.1", + "@typescript-eslint/parser": "^4.26.1", + "commitlint": "^12.1.4", + "concurrently": "^6.2.0", "cross-env": "^7.0.3", - "css-loader": "^5.2.4", - "eslint": "^7.26.0", + "css-loader": "^5.2.6", + "eslint": "^7.28.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^3.4.0", - "eslint-plugin-react": "^7.23.2", + "eslint-plugin-react": "^7.24.0", "gzip-size-cli": "^5.0.0", "html-webpack-plugin": "^5.3.1", "husky": "^6.0.0", - "karma": "^6.3.2", - "karma-firefox-launcher": "^2.1.0", + "karma": "^6.3.3", + "karma-firefox-launcher": "^2.1.1", "karma-mocha": "^2.0.1", "karma-typescript": "^5.5.1", - "marked": "^2.0.3", - "mocha": "^8.4.0", - "prettier": "^2.3.0", + "marked": "^2.0.7", + "mocha": "^9.0.0", + "prettier": "^2.3.1", "prismjs": "^1.23.0", "react": "^17.0.2", "react-dom": "^17.0.2", - "release-it": "^14.6.2", - "rollup": "^2.47.0", + "release-it": "^14.8.0", + "rollup": "^2.51.0", "rollup-plugin-typescript2": "^0.30.0", "style-loader": "^2.0.0", - "ts-loader": "^9.1.2", - "typedoc": "^0.20.36", - "typedoc-plugin-markdown": "^3.8.0", - "typescript": "^4.2.4", - "uglify-js": "^3.13.6", - "webpack": "^5.37.0", - "webpack-cli": "^4.7.0", + "ts-loader": "^9.2.3", + "typedoc": "^0.21.0-beta.2", + "typedoc-plugin-markdown": "^3.9.0", + "typescript": "^4.3.2", + "uglify-js": "^3.13.9", + "webpack": "^5.38.1", + "webpack-cli": "^4.7.2", "webpack-dev-server": "^3.11.2" }, "prettier": { From 6d1bee384ee7a472439abbd37c460224f94fa402 Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Mon, 7 Jun 2021 15:47:14 -0400 Subject: [PATCH 07/12] docs: fix internal type links --- README.md | 214 +++++++++++++++++++++++++------------------------- tasks/docs.js | 15 +++- 2 files changed, 119 insertions(+), 110 deletions(-) diff --git a/README.md b/README.md index 54e891d6..ce89c34b 100644 --- a/README.md +++ b/README.md @@ -139,25 +139,27 @@ setTimeout(() => panzoom.pan(100, 100)) #### Parameters -| Name | Type | -| :--------- | :------------------------------------------------------------------------------ | -| `elem` | `HTMLElement` \| `SVGElement` | -| `options?` | `Omit`<[PanzoomOptions](#PanzoomOptions)](types.md#panzoomoptions), `"force"`\> | +| Name | Type | +| :--------- | :---------------------------------------------------- | +| `elem` | `HTMLElement` \| `SVGElement` | +| `options?` | `Omit`<[PanzoomOptions](#PanzoomOptions), `"force"`\> | #### Returns -[[PanzoomObject](#PanzoomObject) +[PanzoomObject](#PanzoomObject) #### Defined in -[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/10b285f/src/panzoom.ts#L58) +[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/0747ea4/src/panzoom.ts#L58) ## `PanzoomOptions` -Includes `MiscOptions`, `PanOnlyOptions`, and `ZoomOnlyOptions` +Includes `MiscOptions`, `PanOptions`, and `ZoomOptions` ## MiscOptions +These options can be passed to `Panzoom()`, as well as any pan or zoom function. One exception is `force`, which can only be passed to methods like `pan()` or `zoom()`, but not `Panzoom()` or `setOptions()` as it should not be set globally. + ### animate • `Optional` **animate**: `boolean` (Default: **false**) @@ -166,7 +168,7 @@ Whether to animate transitions #### Defined in -[types.ts:21](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L21) +[types.ts:21](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L21) ### canvas @@ -183,7 +185,7 @@ where the `cursor` style is applied (i.e. the parent). #### Defined in -[types.ts:32](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L32) +[types.ts:32](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L32) ### duration @@ -193,7 +195,7 @@ Duration of the transition (ms) #### Defined in -[types.ts:34](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L34) +[types.ts:34](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L34) ### easing @@ -203,7 +205,7 @@ CSS Easing used for transitions #### Defined in -[types.ts:36](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L36) +[types.ts:36](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L36) ### exclude @@ -216,7 +218,7 @@ e.g. links and buttons that should not propagate the click event. #### Defined in -[types.ts:43](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L43) +[types.ts:43](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L43) ### excludeClass @@ -229,7 +231,7 @@ e.g. links and buttons that should not propagate the click event. #### Defined in -[types.ts:50](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L50) +[types.ts:50](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L50) ### force @@ -251,7 +253,7 @@ panzoom.zoom(1, { force: true }) #### Defined in -[types.ts:66](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L66) +[types.ts:66](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L66) ### handleStartEvent @@ -299,7 +301,7 @@ Panzoom(elem, { #### Defined in -[types.ts:91](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L91) +[types.ts:91](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L91) ### noBind @@ -309,7 +311,7 @@ Skip binding the default Panzoom event listeners #### Defined in -[types.ts:95](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L95) +[types.ts:95](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L95) ### origin @@ -329,7 +331,7 @@ And again, changing this for SVG in IE doesn't work at all. #### Defined in -[types.ts:109](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L109) +[types.ts:109](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L109) ### overflow @@ -339,7 +341,7 @@ The overflow CSS value for the parent. Defaults to 'hidden' #### Defined in -[types.ts:111](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L111) +[types.ts:111](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L111) ### setTransform @@ -369,11 +371,11 @@ Set the transform using the proper prefix ##### Parameters -| Name | Type | -| :------------------ | :------------------------------------- | -| `elem` | `HTMLElement` \| `SVGElement` | -| `__namedParameters` | CurrentValues](types.currentvalues.md) | -| `_options?` | [PanzoomOptions | +| Name | Type | +| :------------------ | :---------------------------- | +| `elem` | `HTMLElement` \| `SVGElement` | +| `__namedParameters` | CurrentValues | +| `_options?` | PanzoomOptions | ##### Returns @@ -381,7 +383,7 @@ Set the transform using the proper prefix #### Defined in -[types.ts:129](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L129) +[types.ts:129](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L129) ### silent @@ -391,7 +393,7 @@ Silence all events #### Defined in -[types.ts:131](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L131) +[types.ts:131](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L131) ### startScale @@ -401,7 +403,7 @@ Scale used to set the beginning transform #### Defined in -[types.ts:137](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L137) +[types.ts:137](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L137) ### startX @@ -411,7 +413,7 @@ X Value used to set the beginning transform #### Defined in -[types.ts:133](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L133) +[types.ts:133](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L133) ### startY @@ -421,7 +423,7 @@ Y Value used to set the beginning transform #### Defined in -[types.ts:135](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L135) +[types.ts:135](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L135) ### touchAction @@ -437,7 +439,7 @@ cannot work at the same time. #### Defined in -[types.ts:147](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L147) +[types.ts:147](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L147) ## PanOptions (includes MiscOptions) @@ -459,7 +461,7 @@ empty space around the element will be shown. #### Defined in -[types.ts:166](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L166) +[types.ts:166](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L166) ### cursor @@ -469,7 +471,7 @@ The cursor style to set on the panzoom element #### Defined in -[types.ts:168](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L168) +[types.ts:168](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L168) ### disablePan @@ -481,7 +483,7 @@ The element will still pan accordingly. #### Defined in -[types.ts:174](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L174) +[types.ts:174](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L174) ### disableXAxis @@ -491,7 +493,7 @@ Pan only on the Y axis #### Defined in -[types.ts:176](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L176) +[types.ts:176](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L176) ### disableYAxis @@ -501,7 +503,7 @@ Pan only on the X axis #### Defined in -[types.ts:178](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L178) +[types.ts:178](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L178) ### panOnlyWhenZoomed @@ -511,7 +513,7 @@ Disable panning while the scale is equal to the starting value #### Defined in -[types.ts:182](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L182) +[types.ts:182](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L182) ### relative @@ -521,7 +523,7 @@ When passing x and y values to .pan(), treat the values as relative to their cur #### Defined in -[types.ts:180](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L180) +[types.ts:180](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L180) ## ZoomOptions (includes MiscOptions) @@ -533,7 +535,7 @@ Disable zooming functionality #### Defined in -[types.ts:187](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L187) +[types.ts:187](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L187) ### focal @@ -553,7 +555,7 @@ to the parent dimensions. #### Defined in -[types.ts:194](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L194) +[types.ts:194](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L194) ### maxScale @@ -563,7 +565,7 @@ The maximum scale when zooming #### Defined in -[types.ts:198](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L198) +[types.ts:198](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L198) ### minScale @@ -573,7 +575,7 @@ The minimum scale when zooming #### Defined in -[types.ts:196](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L196) +[types.ts:196](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L196) ### step @@ -583,7 +585,7 @@ The step affects zoom calculation when zooming with a mouse wheel, when pinch zo #### Defined in -[types.ts:200](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L200) +[types.ts:200](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L200) ## PanzoomObject @@ -608,7 +610,7 @@ but can be skipped with the `noBind` option. #### Defined in -[types.ts:221](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L221) +[types.ts:221](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L221) ### destroy @@ -626,7 +628,7 @@ Remove all event listeners bound to the the Panzoom element #### Defined in -[types.ts:223](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L223) +[types.ts:223](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L223) ### eventNames @@ -646,7 +648,7 @@ Pointer or Touch events. #### Defined in -[types.ts:229](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L229) +[types.ts:229](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L229) ### getOptions @@ -656,15 +658,15 @@ Returns a _copy_ of the current options object #### Type declaration -▸ (): PanzoomOptions](../modules/types.md#panzoomoptions) +▸ (): PanzoomOptions ##### Returns -[PanzoomOptions +PanzoomOptions #### Defined in -[types.ts:235](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L235) +[types.ts:235](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L235) ### getPan @@ -687,7 +689,7 @@ Get the current x/y translation #### Defined in -[types.ts:231](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L231) +[types.ts:231](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L231) ### getScale @@ -705,11 +707,11 @@ Get the current scale #### Defined in -[types.ts:233](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L233) +[types.ts:233](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L233) ### pan -• **pan**: (`x`: `string` \| `number`, `y`: `string` \| `number`, `panOptions?`: PanOptions](../modules/types.md#panoptions)) => [[CurrentValues](#CurrentValues) +• **pan**: (`x`: `string` \| `number`, `y`: `string` \| `number`, `panOptions?`: PanOptions) => [CurrentValues](#CurrentValues) Pan the Panzoom element to the given x and y coordinates @@ -726,23 +728,23 @@ panzoom.pan(10, 10, { relative: true }) ##### Parameters -| Name | Type | -| :------------ | :------------------------------------------ | -| `x` | `string` \| `number` | -| `y` | `string` \| `number` | -| `panOptions?` | PanOptions](../modules/types.md#panoptions) | +| Name | Type | +| :------------ | :------------------- | +| `x` | `string` \| `number` | +| `y` | `string` \| `number` | +| `panOptions?` | PanOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:246](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L246) +[types.ts:246](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L246) ### reset -• **reset**: (`resetOptions?`: PanzoomOptions](../modules/types.md#panzoomoptions)) => [[CurrentValues](#CurrentValues) +• **reset**: (`resetOptions?`: PanzoomOptions) => [CurrentValues](#CurrentValues) Reset the pan and zoom to startX, startY, and startScale. Animates by default, ignoring the global option. @@ -761,17 +763,17 @@ panzoom.reset({ animate: false }) ##### Parameters -| Name | Type | -| :-------------- | :-------------------------------------------------- | -| `resetOptions?` | PanzoomOptions](../modules/types.md#panzoomoptions) | +| Name | Type | +| :-------------- | :------------- | +| `resetOptions?` | PanzoomOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:259](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L259) +[types.ts:259](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L259) ### resetStyle @@ -794,7 +796,7 @@ panzoom.resetStyle() #### Defined in -[types.ts:268](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L268) +[types.ts:268](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L268) ### setOptions @@ -827,7 +829,7 @@ panzoom.setOptions({ cursor: 'default' }) #### Defined in -[types.ts:281](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L281) +[types.ts:281](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L281) ### setStyle @@ -852,11 +854,11 @@ A convenience method for setting prefixed styles on the Panzoom element #### Defined in -[types.ts:283](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L283) +[types.ts:283](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L283) ### zoom -• **zoom**: (`scale`: `number`, `zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +• **zoom**: (`scale`: `number`, `zoomOptions?`: ZoomOptions) => [CurrentValues](#CurrentValues) Zoom the Panzoom element to the given scale @@ -871,22 +873,22 @@ panzoom.zoom(2.2, { animate: true }) ##### Parameters -| Name | Type | -| :------------- | :-------------------------------------------- | -| `scale` | `number` | -| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | +| Name | Type | +| :------------- | :---------- | +| `scale` | `number` | +| `zoomOptions?` | ZoomOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:292](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L292) +[types.ts:292](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L292) ### zoomIn -• **zoomIn**: (`zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +• **zoomIn**: (`zoomOptions?`: ZoomOptions) => [CurrentValues](#CurrentValues) Zoom in using the predetermined increment set in options. Animates by default, ignoring the global option. @@ -903,21 +905,21 @@ panzoom.zoomIn({ animate: false }) ##### Parameters -| Name | Type | -| :------------- | :-------------------------------------------- | -| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | +| Name | Type | +| :------------- | :---------- | +| `zoomOptions?` | ZoomOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:303](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L303) +[types.ts:303](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L303) ### zoomOut -• **zoomOut**: (`zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +• **zoomOut**: (`zoomOptions?`: ZoomOptions) => [CurrentValues](#CurrentValues) Zoom out using the predetermined increment set in options. Animates by default, ignoring the global option. @@ -934,21 +936,21 @@ panzoom.zoomOut({ animate: false }) ##### Parameters -| Name | Type | -| :------------- | :-------------------------------------------- | -| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | +| Name | Type | +| :------------- | :---------- | +| `zoomOptions?` | ZoomOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:314](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L314) +[types.ts:314](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L314) ### zoomToPoint -• **zoomToPoint**: (`scale`: `number`, `point`: { `clientX`: `number` ; `clientY`: `number` }, `zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +• **zoomToPoint**: (`scale`: `number`, `point`: { `clientX`: `number` ; `clientY`: `number` }, `zoomOptions?`: ZoomOptions) => [CurrentValues](#CurrentValues) Zoom the Panzoom element to a focal point using the given pointer/touch/mouse event or constructed point. @@ -965,25 +967,25 @@ panzoom.zoomToPoint(1.2, pointerEvent) ##### Parameters -| Name | Type | -| :-------------- | :-------------------------------------------- | -| `scale` | `number` | -| `point` | `Object` | -| `point.clientX` | `number` | -| `point.clientY` | `number` | -| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | +| Name | Type | +| :-------------- | :---------- | +| `scale` | `number` | +| `point` | `Object` | +| `point.clientX` | `number` | +| `point.clientY` | `number` | +| `zoomOptions?` | ZoomOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:325](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L325) +[types.ts:325](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L325) ### zoomWithWheel -• **zoomWithWheel**: (`event`: `WheelEvent`, `zoomOptions?`: ZoomOptions](../modules/types.md#zoomoptions)) => [[CurrentValues](#CurrentValues) +• **zoomWithWheel**: (`event`: `WheelEvent`, `zoomOptions?`: ZoomOptions) => [CurrentValues](#CurrentValues) Zoom the Panzoom element to a focal point using the given WheelEvent @@ -1013,18 +1015,18 @@ elem.parentElement.addEventListener('wheel', function (event) { ##### Parameters -| Name | Type | -| :------------- | :-------------------------------------------- | -| `event` | `WheelEvent` | -| `zoomOptions?` | ZoomOptions](../modules/types.md#zoomoptions) | +| Name | Type | +| :------------- | :----------- | +| `event` | `WheelEvent` | +| `zoomOptions?` | ZoomOptions | ##### Returns -[[CurrentValues](#CurrentValues) +[CurrentValues](#CurrentValues) #### Defined in -[types.ts:354](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L354) +[types.ts:354](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L354) ## CurrentValues @@ -1034,7 +1036,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:211](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L211) +[types.ts:211](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L211) ### scale @@ -1042,7 +1044,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:210](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L210) +[types.ts:210](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L210) ### x @@ -1050,7 +1052,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:208](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L208) +[types.ts:208](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L208) ### y @@ -1058,7 +1060,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:209](https://github.com/timmywil/panzoom/blob/10b285f/src/types.ts#L209) +[types.ts:209](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L209) ## Events diff --git a/tasks/docs.js b/tasks/docs.js index 5b9d9b62..cae0d693 100644 --- a/tasks/docs.js +++ b/tasks/docs.js @@ -11,9 +11,13 @@ function write(filename, data) { const header = '\n---\n\n## Documentation' let data = read('../README.md').replace(new RegExp(header + '[^]+'), '') + header -// Remove links that aren't links to source function removeLinks(data) { - return data.replace(/\[([^:]+)\]\(.*?\)/g, '$1') + const d = data.replace(/\[([^\]]+)\]\([^)]+\)/g, function (all, name) { + // Links to source have colons + // Leave those alone + return name.indexOf(':') > -1 ? all : name + }) + return d } function addLinks(data) { @@ -79,8 +83,11 @@ function addDefaults(data) { } const panzoomOptions = - '\n\n## `PanzoomOptions`\n\nIncludes `MiscOptions`, `PanOnlyOptions`, and `ZoomOnlyOptions`\n\n' + - getInterfaceContent('types.miscoptions.md') + + '\n\n## `PanzoomOptions`\n\nIncludes `MiscOptions`, `PanOptions`, and `ZoomOptions`\n\n' + + getInterfaceContent( + 'types.miscoptions.md', + '## MiscOptions\n\nThese options can be passed to `Panzoom()`, as well as any pan or zoom function. One exception is `force`, which can only be passed to methods like `pan()` or `zoom()`, but not `Panzoom()` or `setOptions()` as it should not be set globally.' + ) + getInterfaceContent( 'types.panonlyoptions.md', '## PanOptions (includes [MiscOptions](#MiscOptions))' From 7dfdfa02d738646b4513d7e72d61201087d80aca Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Mon, 7 Jun 2021 15:54:19 -0400 Subject: [PATCH 08/12] docs: remove redundant type declarations for methods --- README.md | 174 ++++++++++++++++---------------------------------- src/types.ts | 6 ++ tasks/docs.js | 4 +- 3 files changed, 64 insertions(+), 120 deletions(-) diff --git a/README.md b/README.md index ce89c34b..90e2b676 100644 --- a/README.md +++ b/README.md @@ -150,7 +150,7 @@ setTimeout(() => panzoom.pan(100, 100)) #### Defined in -[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/0747ea4/src/panzoom.ts#L58) +[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/6d1bee3/src/panzoom.ts#L58) ## `PanzoomOptions` @@ -168,7 +168,7 @@ Whether to animate transitions #### Defined in -[types.ts:21](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L21) +[types.ts:21](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L21) ### canvas @@ -185,7 +185,7 @@ where the `cursor` style is applied (i.e. the parent). #### Defined in -[types.ts:32](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L32) +[types.ts:32](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L32) ### duration @@ -195,7 +195,7 @@ Duration of the transition (ms) #### Defined in -[types.ts:34](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L34) +[types.ts:34](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L34) ### easing @@ -205,7 +205,7 @@ CSS Easing used for transitions #### Defined in -[types.ts:36](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L36) +[types.ts:36](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L36) ### exclude @@ -218,7 +218,7 @@ e.g. links and buttons that should not propagate the click event. #### Defined in -[types.ts:43](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L43) +[types.ts:43](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L43) ### excludeClass @@ -231,7 +231,7 @@ e.g. links and buttons that should not propagate the click event. #### Defined in -[types.ts:50](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L50) +[types.ts:50](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L50) ### force @@ -253,7 +253,7 @@ panzoom.zoom(1, { force: true }) #### Defined in -[types.ts:66](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L66) +[types.ts:66](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L66) ### handleStartEvent @@ -285,10 +285,6 @@ Panzoom(elem, { }) ``` -#### Type declaration - -▸ (`event`): `void` - ##### Parameters | Name | Type | @@ -301,7 +297,7 @@ Panzoom(elem, { #### Defined in -[types.ts:91](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L91) +[types.ts:91](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L91) ### noBind @@ -311,7 +307,7 @@ Skip binding the default Panzoom event listeners #### Defined in -[types.ts:95](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L95) +[types.ts:95](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L95) ### origin @@ -331,7 +327,7 @@ And again, changing this for SVG in IE doesn't work at all. #### Defined in -[types.ts:109](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L109) +[types.ts:109](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L109) ### overflow @@ -341,7 +337,7 @@ The overflow CSS value for the parent. Defaults to 'hidden' #### Defined in -[types.ts:111](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L111) +[types.ts:111](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L111) ### setTransform @@ -363,10 +359,6 @@ const panzoom = Panzoom(elem, { }) ``` -#### Type declaration - -▸ (`elem`, `__namedParameters`, `_options?`): `void` - Set the transform using the proper prefix ##### Parameters @@ -383,7 +375,7 @@ Set the transform using the proper prefix #### Defined in -[types.ts:129](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L129) +[types.ts:129](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L129) ### silent @@ -393,7 +385,7 @@ Silence all events #### Defined in -[types.ts:131](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L131) +[types.ts:131](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L131) ### startScale @@ -403,7 +395,7 @@ Scale used to set the beginning transform #### Defined in -[types.ts:137](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L137) +[types.ts:137](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L137) ### startX @@ -413,7 +405,7 @@ X Value used to set the beginning transform #### Defined in -[types.ts:133](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L133) +[types.ts:133](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L133) ### startY @@ -423,7 +415,7 @@ Y Value used to set the beginning transform #### Defined in -[types.ts:135](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L135) +[types.ts:135](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L135) ### touchAction @@ -439,7 +431,7 @@ cannot work at the same time. #### Defined in -[types.ts:147](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L147) +[types.ts:147](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L147) ## PanOptions (includes MiscOptions) @@ -461,7 +453,7 @@ empty space around the element will be shown. #### Defined in -[types.ts:166](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L166) +[types.ts:166](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L166) ### cursor @@ -471,7 +463,7 @@ The cursor style to set on the panzoom element #### Defined in -[types.ts:168](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L168) +[types.ts:168](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L168) ### disablePan @@ -483,7 +475,7 @@ The element will still pan accordingly. #### Defined in -[types.ts:174](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L174) +[types.ts:174](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L174) ### disableXAxis @@ -493,7 +485,7 @@ Pan only on the Y axis #### Defined in -[types.ts:176](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L176) +[types.ts:176](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L176) ### disableYAxis @@ -503,7 +495,7 @@ Pan only on the X axis #### Defined in -[types.ts:178](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L178) +[types.ts:178](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L178) ### panOnlyWhenZoomed @@ -513,7 +505,7 @@ Disable panning while the scale is equal to the starting value #### Defined in -[types.ts:182](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L182) +[types.ts:182](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L182) ### relative @@ -523,7 +515,7 @@ When passing x and y values to .pan(), treat the values as relative to their cur #### Defined in -[types.ts:180](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L180) +[types.ts:180](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L180) ## ZoomOptions (includes MiscOptions) @@ -535,7 +527,7 @@ Disable zooming functionality #### Defined in -[types.ts:187](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L187) +[types.ts:187](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L187) ### focal @@ -555,7 +547,7 @@ to the parent dimensions. #### Defined in -[types.ts:194](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L194) +[types.ts:194](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L194) ### maxScale @@ -565,7 +557,7 @@ The maximum scale when zooming #### Defined in -[types.ts:198](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L198) +[types.ts:198](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L198) ### minScale @@ -575,7 +567,7 @@ The minimum scale when zooming #### Defined in -[types.ts:196](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L196) +[types.ts:196](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L196) ### step @@ -585,11 +577,11 @@ The step affects zoom calculation when zooming with a mouse wheel, when pinch zo #### Defined in -[types.ts:200](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L200) +[types.ts:200](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L200) ## PanzoomObject -These methods are available after initializing Panzoom +These methods are available after initializing Panzoom. ### bind @@ -600,9 +592,11 @@ This does not normally need to be called. It gets called by default when creating a new Panzoom object, but can be skipped with the `noBind` option. -#### Type declaration - -▸ (): `void` +```js +const panzoom = Panzoom(elem, { noBind: true }) +// ... +panzoom.bind() +``` ##### Returns @@ -610,7 +604,7 @@ but can be skipped with the `noBind` option. #### Defined in -[types.ts:221](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L221) +[types.ts:227](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L227) ### destroy @@ -618,17 +612,13 @@ but can be skipped with the `noBind` option. Remove all event listeners bound to the the Panzoom element -#### Type declaration - -▸ (): `void` - ##### Returns `void` #### Defined in -[types.ts:223](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L223) +[types.ts:229](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L229) ### eventNames @@ -648,7 +638,7 @@ Pointer or Touch events. #### Defined in -[types.ts:229](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L229) +[types.ts:235](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L235) ### getOptions @@ -656,17 +646,13 @@ Pointer or Touch events. Returns a _copy_ of the current options object -#### Type declaration - -▸ (): PanzoomOptions - ##### Returns PanzoomOptions #### Defined in -[types.ts:235](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L235) +[types.ts:241](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L241) ### getPan @@ -674,10 +660,6 @@ PanzoomOptions Get the current x/y translation -#### Type declaration - -▸ (): `Object` - ##### Returns `Object` @@ -689,7 +671,7 @@ Get the current x/y translation #### Defined in -[types.ts:231](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L231) +[types.ts:237](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L237) ### getScale @@ -697,17 +679,13 @@ Get the current x/y translation Get the current scale -#### Type declaration - -▸ (): `number` - ##### Returns `number` #### Defined in -[types.ts:233](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L233) +[types.ts:239](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L239) ### pan @@ -722,10 +700,6 @@ panzoom.pan(50, 100) panzoom.pan(10, 10, { relative: true }) ``` -#### Type declaration - -▸ (`x`, `y`, `panOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -740,7 +714,7 @@ panzoom.pan(10, 10, { relative: true }) #### Defined in -[types.ts:246](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L246) +[types.ts:252](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L252) ### reset @@ -757,10 +731,6 @@ panzoom.reset() panzoom.reset({ animate: false }) ``` -#### Type declaration - -▸ (`resetOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -773,7 +743,7 @@ panzoom.reset({ animate: false }) #### Defined in -[types.ts:259](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L259) +[types.ts:265](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L265) ### resetStyle @@ -786,17 +756,13 @@ and its parent (such as overflow, cursor, etc.) panzoom.resetStyle() ``` -#### Type declaration - -▸ (): `void` - ##### Returns `void` #### Defined in -[types.ts:268](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L268) +[types.ts:274](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L274) ### setOptions @@ -813,10 +779,6 @@ const panzoom = Panzoom(elem, { cursor: 'move' }) panzoom.setOptions({ cursor: 'default' }) ``` -#### Type declaration - -▸ (`options?`): `void` - ##### Parameters | Name | Type | @@ -829,7 +791,7 @@ panzoom.setOptions({ cursor: 'default' }) #### Defined in -[types.ts:281](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L281) +[types.ts:287](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L287) ### setStyle @@ -837,10 +799,6 @@ panzoom.setOptions({ cursor: 'default' }) A convenience method for setting prefixed styles on the Panzoom element -#### Type declaration - -▸ (`name`, `value`): `void` - ##### Parameters | Name | Type | @@ -854,7 +812,7 @@ A convenience method for setting prefixed styles on the Panzoom element #### Defined in -[types.ts:283](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L283) +[types.ts:289](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L289) ### zoom @@ -867,10 +825,6 @@ panzoom.zoom(2.2) panzoom.zoom(2.2, { animate: true }) ``` -#### Type declaration - -▸ (`scale`, `zoomOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -884,7 +838,7 @@ panzoom.zoom(2.2, { animate: true }) #### Defined in -[types.ts:292](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L292) +[types.ts:298](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L298) ### zoomIn @@ -899,10 +853,6 @@ panzoom.zoomIn() panzoom.zoomIn({ animate: false }) ``` -#### Type declaration - -▸ (`zoomOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -915,7 +865,7 @@ panzoom.zoomIn({ animate: false }) #### Defined in -[types.ts:303](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L303) +[types.ts:309](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L309) ### zoomOut @@ -930,10 +880,6 @@ panzoom.zoomOut() panzoom.zoomOut({ animate: false }) ``` -#### Type declaration - -▸ (`zoomOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -946,7 +892,7 @@ panzoom.zoomOut({ animate: false }) #### Defined in -[types.ts:314](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L314) +[types.ts:320](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L320) ### zoomToPoint @@ -961,10 +907,6 @@ the same way as a `pointermove` event on the Panzoom element's parent. panzoom.zoomToPoint(1.2, pointerEvent) ``` -#### Type declaration - -▸ (`scale`, `point`, `zoomOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -981,7 +923,7 @@ panzoom.zoomToPoint(1.2, pointerEvent) #### Defined in -[types.ts:325](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L325) +[types.ts:331](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L331) ### zoomWithWheel @@ -1009,10 +951,6 @@ elem.parentElement.addEventListener('wheel', function (event) { }) ``` -#### Type declaration - -▸ (`event`, `zoomOptions?`): [CurrentValues](#CurrentValues) - ##### Parameters | Name | Type | @@ -1026,7 +964,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:354](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L354) +[types.ts:360](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L360) ## CurrentValues @@ -1036,7 +974,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:211](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L211) +[types.ts:211](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L211) ### scale @@ -1044,7 +982,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:210](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L210) +[types.ts:210](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L210) ### x @@ -1052,7 +990,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:208](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L208) +[types.ts:208](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L208) ### y @@ -1060,7 +998,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:209](https://github.com/timmywil/panzoom/blob/0747ea4/src/types.ts#L209) +[types.ts:209](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L209) ## Events diff --git a/src/types.ts b/src/types.ts index 80062315..d39425e4 100644 --- a/src/types.ts +++ b/src/types.ts @@ -217,6 +217,12 @@ export interface PanzoomObject { * This does not normally need to be called. * It gets called by default when creating a new Panzoom object, * but can be skipped with the `noBind` option. + * + * ```js + * const panzoom = Panzoom(elem, { noBind: true }) + * // ... + * panzoom.bind() + * ``` */ bind: () => void /** Remove all event listeners bound to the the Panzoom element */ diff --git a/tasks/docs.js b/tasks/docs.js index cae0d693..643fe6a3 100644 --- a/tasks/docs.js +++ b/tasks/docs.js @@ -59,7 +59,7 @@ function getInterfaceContent(filename, customHeader) { .replace(/# Interface:\s*(.+)[^]+##\s*Properties/, customHeader ? customHeader : '## $1') .replace(/___/g, '') // Remove superfluous type declarations - .replace(/#### Type declaration:\n\n▸ .+/g, '') + .replace(/#### Type declaration\n\n▸ .+/g, '') // Remove double "Defined in" .replace(/(Defined in: .+)\n\nDefined in: .+/g, '$1') ) @@ -101,7 +101,7 @@ data += addDefaults(panzoomOptions) data += getInterfaceContent( 'types.panzoomobject.md', - '## PanzoomObject\n\nThese methods are available after initializing Panzoom' + '## PanzoomObject\n\nThese methods are available after initializing Panzoom.' ).replace(/CurrentValues/g, '[CurrentValues](#CurrentValues)') data += getInterfaceContent('types.currentvalues.md') From b46ecf9d1a195e785335d99498dcd0ef95f91bca Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Fri, 11 Jun 2021 15:40:19 -0400 Subject: [PATCH 09/12] chore(package): upgrade dependencies --- package-lock.json | 1180 ++++++++++++++++++++++----------------------- package.json | 8 +- 2 files changed, 579 insertions(+), 609 deletions(-) diff --git a/package-lock.json b/package-lock.json index 84f4470d..2098fa2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,26 +14,26 @@ } }, "@babel/compat-data": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.4.tgz", - "integrity": "sha512-i2wXrWQNkH6JplJQGn3Rd2I4Pij8GdHkXwHMxm+zV5YG/Jci+bCNrWZEWC4o+umiDkRrRs4dVzH3X4GP7vyjQQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.5.tgz", + "integrity": "sha512-kixrYn4JwfAVPa0f2yfzc2AWti6WRRyO3XjWW5PJAvtE11qhSayrrcrEnee05KAtNaPC+EwehE8Qt1UedEVB8w==", "dev": true }, "@babel/core": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.3.tgz", - "integrity": "sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.3", - "@babel/helper-compilation-targets": "^7.13.16", - "@babel/helper-module-transforms": "^7.14.2", - "@babel/helpers": "^7.14.0", - "@babel/parser": "^7.14.3", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.2", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.5.tgz", + "integrity": "sha512-RN/AwP2DJmQTZSfiDaD+JQQ/J99KsIpOCfBE5pL+5jJSt7nI3nYGoAXZu+ffYSQ029NLs2DstZb+eR81uuARgg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.5", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helpers": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -43,27 +43,27 @@ }, "dependencies": { "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", "dev": true, "requires": { - "@babel/highlight": "^7.12.13" + "@babel/highlight": "^7.14.5" } }, "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true }, "@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", "js-tokens": "^4.0.0" } @@ -77,43 +77,43 @@ } }, "@babel/generator": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", - "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.5.tgz", + "integrity": "sha512-y3rlP+/G25OIX3mYKKIOlQRcqj7YgrvHxOLbVmyLJ9bPmi5ttvUmpydVjcFjZphOktWuA7ovbx91ECloWTfjIA==", "dev": true, "requires": { - "@babel/types": "^7.14.2", + "@babel/types": "^7.14.5", "jsesc": "^2.5.1", "source-map": "^0.5.0" } }, "@babel/helper-annotate-as-pure": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz", - "integrity": "sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", + "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz", - "integrity": "sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz", + "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==", "dev": true, "requires": { - "@babel/helper-explode-assignable-expression": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/helper-explode-assignable-expression": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-compilation-targets": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.4.tgz", - "integrity": "sha512-JgdzOYZ/qGaKTVkn5qEDV/SXAh8KcyUVkCoSWGN8T3bwrgd6m+/dJa2kVGi6RJYJgEYPBdZ84BZp9dUjNWkBaA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz", + "integrity": "sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==", "dev": true, "requires": { - "@babel/compat-data": "^7.14.4", - "@babel/helper-validator-option": "^7.12.17", + "@babel/compat-data": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", "browserslist": "^4.16.6", "semver": "^6.3.0" }, @@ -127,26 +127,26 @@ } }, "@babel/helper-create-class-features-plugin": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.4.tgz", - "integrity": "sha512-idr3pthFlDCpV+p/rMgGLGYIVtazeatrSOQk8YzO2pAepIjQhCN3myeihVg58ax2bbbGK9PUE1reFi7axOYIOw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.5.tgz", + "integrity": "sha512-Uq9z2e7ZtcnDMirRqAGLRaLwJn+Lrh388v5ETrR3pALJnElVh2zqQmdbz4W2RUJYohAPh2mtyPUgyMHMzXMncQ==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-function-name": "^7.14.2", - "@babel/helper-member-expression-to-functions": "^7.13.12", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/helper-replace-supers": "^7.14.4", - "@babel/helper-split-export-declaration": "^7.12.13" + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-member-expression-to-functions": "^7.14.5", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.3.tgz", - "integrity": "sha512-JIB2+XJrb7v3zceV2XzDhGIB902CmKGSpSl4q2C6agU9SNLG/2V1RtFRGPG1Ajh9STj3+q6zJMOC+N/pp2P9DA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz", + "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", + "@babel/helper-annotate-as-pure": "^7.14.5", "regexpu-core": "^4.7.1" } }, @@ -175,149 +175,148 @@ } }, "@babel/helper-explode-assignable-expression": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz", - "integrity": "sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz", + "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==", "dev": true, "requires": { - "@babel/types": "^7.13.0" + "@babel/types": "^7.14.5" } }, "@babel/helper-function-name": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", - "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz", + "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.14.2" + "@babel/helper-get-function-arity": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz", + "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" } }, "@babel/helper-hoist-variables": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.13.16.tgz", - "integrity": "sha512-1eMtTrXtrwscjcAeO4BVK+vvkxaLJSPFz1w1KLawz6HLNi9bPFGBNwwDyVfiu1Tv/vRRFYfoGaKhmAQPGPn5Wg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", + "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==", "dev": true, "requires": { - "@babel/traverse": "^7.13.15", - "@babel/types": "^7.13.16" + "@babel/types": "^7.14.5" } }, "@babel/helper-member-expression-to-functions": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", - "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.5.tgz", + "integrity": "sha512-UxUeEYPrqH1Q/k0yRku1JE7dyfyehNwT6SVkMHvYvPDv4+uu627VXBckVj891BO8ruKBkiDoGnZf4qPDD8abDQ==", "dev": true, "requires": { - "@babel/types": "^7.13.12" + "@babel/types": "^7.14.5" } }, "@babel/helper-module-imports": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", - "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz", + "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==", "dev": true, "requires": { - "@babel/types": "^7.13.12" + "@babel/types": "^7.14.5" } }, "@babel/helper-module-transforms": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", - "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.5.tgz", + "integrity": "sha512-iXpX4KW8LVODuAieD7MzhNjmM6dzYY5tfRqT+R9HDXWl0jPn/djKmA+G9s/2C2T9zggw5tK1QNqZ70USfedOwA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.13.12", - "@babel/helper-replace-supers": "^7.13.12", - "@babel/helper-simple-access": "^7.13.12", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/helper-validator-identifier": "^7.14.0", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.2" + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-simple-access": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" }, "dependencies": { "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true } } }, "@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", + "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" } }, "@babel/helper-plugin-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz", - "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", "dev": true }, "@babel/helper-remap-async-to-generator": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz", - "integrity": "sha512-pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz", + "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-wrap-function": "^7.13.0", - "@babel/types": "^7.13.0" + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-wrap-function": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-replace-supers": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.4.tgz", - "integrity": "sha512-zZ7uHCWlxfEAAOVDYQpEf/uyi1dmeC7fX4nCf2iz9drnCwi1zvwXL3HwWWNXUQEJ1k23yVn3VbddiI9iJEXaTQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", + "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.13.12", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.14.2", - "@babel/types": "^7.14.4" + "@babel/helper-member-expression-to-functions": "^7.14.5", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helper-simple-access": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", - "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.5.tgz", + "integrity": "sha512-nfBN9xvmCt6nrMZjfhkl7i0oTV3yxR4/FztsbOASyTvVcoYd0TRHh7eMLdlEcCqobydC0LAF3LtC92Iwxo0wyw==", "dev": true, "requires": { - "@babel/types": "^7.13.12" + "@babel/types": "^7.14.5" } }, "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", - "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz", + "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==", "dev": true, "requires": { - "@babel/types": "^7.12.1" + "@babel/types": "^7.14.5" } }, "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz", + "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==", "dev": true, "requires": { - "@babel/types": "^7.12.13" + "@babel/types": "^7.14.5" } }, "@babel/helper-validator-identifier": { @@ -327,32 +326,32 @@ "dev": true }, "@babel/helper-validator-option": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", - "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", "dev": true }, "@babel/helper-wrap-function": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz", - "integrity": "sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz", + "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.13.0", - "@babel/types": "^7.13.0" + "@babel/helper-function-name": "^7.14.5", + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/helpers": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz", - "integrity": "sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.5.tgz", + "integrity": "sha512-xtcWOuN9VL6nApgVHtq3PPcQv5qFBJzoSZzJ/2c0QK/IP/gxVcoWSNQwFEGvmbQsuS9rhYqjILDGGXcTkA705Q==", "dev": true, "requires": { - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.14.0" + "@babel/template": "^7.14.5", + "@babel/traverse": "^7.14.5", + "@babel/types": "^7.14.5" } }, "@babel/highlight": { @@ -367,178 +366,178 @@ } }, "@babel/parser": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.4.tgz", - "integrity": "sha512-ArliyUsWDUqEGfWcmzpGUzNfLxTdTp6WU4IuP6QFSp9gGfWS6boxFCkJSJ/L4+RG8z/FnIU3WxCk6hPL9SSWeA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.5.tgz", + "integrity": "sha512-TM8C+xtH/9n1qzX+JNHi7AN2zHMTiPUtspO0ZdHflW8KaskkALhMmuMHb4bCmNdv9VAPzJX3/bXqkVLnAvsPfg==", "dev": true }, "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.13.12.tgz", - "integrity": "sha512-d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz", + "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1", - "@babel/plugin-proposal-optional-chaining": "^7.13.12" + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5" } }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.2.tgz", - "integrity": "sha512-b1AM4F6fwck4N8ItZ/AtC4FP/cqZqmKRQ4FaTDutwSYyjuhtvsGEMLK4N/ztV/ImP40BjIDyMgBQAeAMsQYVFQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.5.tgz", + "integrity": "sha512-tbD/CG3l43FIXxmu4a7RBe4zH7MLJ+S/lFowPFO7HetS2hyOZ/0nnnznegDuzFzfkyQYTxqdTH/hKmuBngaDAA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-remap-async-to-generator": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5", "@babel/plugin-syntax-async-generators": "^7.8.4" } }, "@babel/plugin-proposal-class-properties": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz", - "integrity": "sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz", + "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.13.0", - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-proposal-class-static-block": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.3.tgz", - "integrity": "sha512-HEjzp5q+lWSjAgJtSluFDrGGosmwTgKwCXdDQZvhKsRlwv3YdkUEqxNrrjesJd+B9E9zvr1PVPVBvhYZ9msjvQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz", + "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.3", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/plugin-syntax-class-static-block": "^7.12.13" + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, "@babel/plugin-proposal-dynamic-import": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.2.tgz", - "integrity": "sha512-oxVQZIWFh91vuNEMKltqNsKLFWkOIyJc95k2Gv9lWVyDfPUQGSSlbDEgWuJUU1afGE9WwlzpucMZ3yDRHIItkA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz", + "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-dynamic-import": "^7.8.3" } }, "@babel/plugin-proposal-export-namespace-from": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.2.tgz", - "integrity": "sha512-sRxW3z3Zp3pFfLAgVEvzTFutTXax837oOatUIvSG9o5gRj9mKwm3br1Se5f4QalTQs9x4AzlA/HrCWbQIHASUQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz", + "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, "@babel/plugin-proposal-json-strings": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.2.tgz", - "integrity": "sha512-w2DtsfXBBJddJacXMBhElGEYqCZQqN99Se1qeYn8DVLB33owlrlLftIbMzn5nz1OITfDVknXF433tBrLEAOEjA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz", + "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-json-strings": "^7.8.3" } }, "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.2.tgz", - "integrity": "sha512-1JAZtUrqYyGsS7IDmFeaem+/LJqujfLZ2weLR9ugB0ufUPjzf8cguyVT1g5im7f7RXxuLq1xUxEzvm68uYRtGg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz", + "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" } }, "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.2.tgz", - "integrity": "sha512-ebR0zU9OvI2N4qiAC38KIAK75KItpIPTpAtd2r4OZmMFeKbKJpUFLYP2EuDut82+BmYi8sz42B+TfTptJ9iG5Q==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz", + "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" } }, "@babel/plugin-proposal-numeric-separator": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.2.tgz", - "integrity": "sha512-DcTQY9syxu9BpU3Uo94fjCB3LN9/hgPS8oUL7KrSW3bA2ePrKZZPJcc5y0hoJAM9dft3pGfErtEUvxXQcfLxUg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz", + "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.4.tgz", - "integrity": "sha512-AYosOWBlyyXEagrPRfLJ1enStufsr7D1+ddpj8OLi9k7B6+NdZ0t/9V7Fh+wJ4g2Jol8z2JkgczYqtWrZd4vbA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.5.tgz", + "integrity": "sha512-VzMyY6PWNPPT3pxc5hi9LloKNr4SSrVCg7Yr6aZpW4Ym07r7KqSU/QXYwjXLVxqwSv0t/XSXkFoKBPUkZ8vb2A==", "dev": true, "requires": { - "@babel/compat-data": "^7.14.4", - "@babel/helper-compilation-targets": "^7.14.4", - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/compat-data": "^7.14.5", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.14.2" + "@babel/plugin-transform-parameters": "^7.14.5" } }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.2.tgz", - "integrity": "sha512-XtkJsmJtBaUbOxZsNk0Fvrv8eiqgneug0A6aqLFZ4TSkar2L5dSXWcnUKHgmjJt49pyB/6ZHvkr3dPgl9MOWRQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz", + "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" } }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.2.tgz", - "integrity": "sha512-qQByMRPwMZJainfig10BoaDldx/+VDtNcrA7qdNaEOAj6VXud+gfrkA8j4CRAU5HjnWREXqIpSpH30qZX1xivA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz", + "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", "@babel/plugin-syntax-optional-chaining": "^7.8.3" } }, "@babel/plugin-proposal-private-methods": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.13.0.tgz", - "integrity": "sha512-MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz", + "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.13.0", - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-proposal-private-property-in-object": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.0.tgz", - "integrity": "sha512-59ANdmEwwRUkLjB7CRtwJxxwtjESw+X2IePItA+RGQh+oy5RmpCh/EvVVvh5XQc3yxsm5gtv0+i9oBZhaDNVTg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-create-class-features-plugin": "^7.14.0", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/plugin-syntax-private-property-in-object": "^7.14.0" + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-create-class-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz", - "integrity": "sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz", + "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-create-regexp-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-syntax-async-generators": { @@ -560,12 +559,12 @@ } }, "@babel/plugin-syntax-class-static-block": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.12.13.tgz", - "integrity": "sha512-ZmKQ0ZXR0nYpHZIIuj9zE7oIqCx2hw9TKi+lIo73NNrMPAZGHfS92/VRV0ZmPj6H2ffBgyFHXvJ5NYsNeEaP2A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-syntax-dynamic-import": { @@ -650,372 +649,372 @@ } }, "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.0.tgz", - "integrity": "sha512-bda3xF8wGl5/5btF794utNOL0Jw+9jE5C1sLZcoK7c4uonE/y3iQiyG+KbkF3WBV/paX58VCpjhxLPkdj5Fe4w==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-syntax-top-level-await": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz", - "integrity": "sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz", - "integrity": "sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz", + "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz", - "integrity": "sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", + "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-remap-async-to-generator": "^7.13.0" + "@babel/helper-module-imports": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.14.5" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz", - "integrity": "sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz", + "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-block-scoping": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.4.tgz", - "integrity": "sha512-5KdpkGxsZlTk+fPleDtGKsA+pon28+ptYmMO8GBSa5fHERCJWAzj50uAfCKBqq42HO+Zot6JF1x37CRprwmN4g==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz", + "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-classes": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.4.tgz", - "integrity": "sha512-p73t31SIj6y94RDVX57rafVjttNr8MvKEgs5YFatNB/xC68zM3pyosuOEcQmYsYlyQaGY9R7rAULVRcat5FKJQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz", + "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-function-name": "^7.14.2", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-replace-supers": "^7.14.4", - "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/helper-annotate-as-pure": "^7.14.5", + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-optimise-call-expression": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5", + "@babel/helper-split-export-declaration": "^7.14.5", "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz", - "integrity": "sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz", + "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-destructuring": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.4.tgz", - "integrity": "sha512-JyywKreTCGTUsL1OKu1A3ms/R1sTP0WxbpXlALeGzF53eB3bxtNkYdMj9SDgK7g6ImPy76J5oYYKoTtQImlhQA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.5.tgz", + "integrity": "sha512-wU9tYisEbRMxqDezKUqC9GleLycCRoUsai9ddlsq54r8QRLaeEhc+d+9DqCG+kV9W2GgQjTZESPTpn5bAFMDww==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz", - "integrity": "sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz", + "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-create-regexp-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz", - "integrity": "sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz", + "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz", - "integrity": "sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz", + "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-for-of": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz", - "integrity": "sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz", + "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz", - "integrity": "sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz", + "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-function-name": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz", - "integrity": "sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz", + "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-member-expression-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz", - "integrity": "sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz", + "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-modules-amd": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.2.tgz", - "integrity": "sha512-hPC6XBswt8P3G2D1tSV2HzdKvkqOpmbyoy+g73JG0qlF/qx2y3KaMmXb1fLrpmWGLZYA0ojCvaHdzFWjlmV+Pw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz", + "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.14.2", - "@babel/helper-plugin-utils": "^7.13.0", + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.0.tgz", - "integrity": "sha512-EX4QePlsTaRZQmw9BsoPeyh5OCtRGIhwfLquhxGp5e32w+dyL8htOcDwamlitmNFK6xBZYlygjdye9dbd9rUlQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz", + "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.14.0", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-simple-access": "^7.13.12", + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-simple-access": "^7.14.5", "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.13.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.13.8.tgz", - "integrity": "sha512-hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz", + "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.13.0", - "@babel/helper-module-transforms": "^7.13.0", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-validator-identifier": "^7.12.11", + "@babel/helper-hoist-variables": "^7.14.5", + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-identifier": "^7.14.5", "babel-plugin-dynamic-import-node": "^2.3.3" }, "dependencies": { "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true } } }, "@babel/plugin-transform-modules-umd": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.0.tgz", - "integrity": "sha512-nPZdnWtXXeY7I87UZr9VlsWme3Y0cfFFE41Wbxz4bbaexAjNMInXPFUpRRUJ8NoMm0Cw+zxbqjdPmLhcjfazMw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz", + "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.14.0", - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-module-transforms": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz", - "integrity": "sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.5.tgz", + "integrity": "sha512-+Xe5+6MWFo311U8SchgeX5c1+lJM+eZDBZgD+tvXu9VVQPXwwVzeManMMjYX6xw2HczngfOSZjoFYKwdeB/Jvw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13" + "@babel/helper-create-regexp-features-plugin": "^7.14.5" } }, "@babel/plugin-transform-new-target": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz", - "integrity": "sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz", + "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-object-super": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz", - "integrity": "sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz", + "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.14.5" } }, "@babel/plugin-transform-parameters": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz", - "integrity": "sha512-NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz", + "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-property-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz", - "integrity": "sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz", + "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-regenerator": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.13.15.tgz", - "integrity": "sha512-Bk9cOLSz8DiurcMETZ8E2YtIVJbFCPGW28DJWUakmyVWtQSm6Wsf0p4B4BfEr/eL2Nkhe/CICiUiMOCi1TPhuQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz", + "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==", "dev": true, "requires": { "regenerator-transform": "^0.14.2" } }, "@babel/plugin-transform-reserved-words": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz", - "integrity": "sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz", + "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz", - "integrity": "sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz", + "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-spread": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz", - "integrity": "sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.5.tgz", + "integrity": "sha512-/3iqoQdiWergnShZYl0xACb4ADeYCJ7X/RgmwtXshn6cIvautRPAFzhd58frQlokLO6Jb4/3JXvmm6WNTPtiTw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1" + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5" } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz", - "integrity": "sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz", + "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-template-literals": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz", - "integrity": "sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz", + "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.13.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz", - "integrity": "sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz", + "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-unicode-escapes": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz", - "integrity": "sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz", + "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz", - "integrity": "sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz", + "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-create-regexp-features-plugin": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/preset-env": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.4.tgz", - "integrity": "sha512-GwMMsuAnDtULyOtuxHhzzuSRxFeP0aR/LNzrHRzP8y6AgDNgqnrfCCBm/1cRdTU75tRs28Eh76poHLcg9VF0LA==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.14.4", - "@babel/helper-compilation-targets": "^7.14.4", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/helper-validator-option": "^7.12.17", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.13.12", - "@babel/plugin-proposal-async-generator-functions": "^7.14.2", - "@babel/plugin-proposal-class-properties": "^7.13.0", - "@babel/plugin-proposal-class-static-block": "^7.14.3", - "@babel/plugin-proposal-dynamic-import": "^7.14.2", - "@babel/plugin-proposal-export-namespace-from": "^7.14.2", - "@babel/plugin-proposal-json-strings": "^7.14.2", - "@babel/plugin-proposal-logical-assignment-operators": "^7.14.2", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.2", - "@babel/plugin-proposal-numeric-separator": "^7.14.2", - "@babel/plugin-proposal-object-rest-spread": "^7.14.4", - "@babel/plugin-proposal-optional-catch-binding": "^7.14.2", - "@babel/plugin-proposal-optional-chaining": "^7.14.2", - "@babel/plugin-proposal-private-methods": "^7.13.0", - "@babel/plugin-proposal-private-property-in-object": "^7.14.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.12.13", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.5.tgz", + "integrity": "sha512-ci6TsS0bjrdPpWGnQ+m4f+JSSzDKlckqKIJJt9UZ/+g7Zz9k0N8lYU8IeLg/01o2h8LyNZDMLGgRLDTxpudLsA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.14.5", + "@babel/helper-compilation-targets": "^7.14.5", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-async-generator-functions": "^7.14.5", + "@babel/plugin-proposal-class-properties": "^7.14.5", + "@babel/plugin-proposal-class-static-block": "^7.14.5", + "@babel/plugin-proposal-dynamic-import": "^7.14.5", + "@babel/plugin-proposal-export-namespace-from": "^7.14.5", + "@babel/plugin-proposal-json-strings": "^7.14.5", + "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", + "@babel/plugin-proposal-numeric-separator": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.14.5", + "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", + "@babel/plugin-proposal-optional-chaining": "^7.14.5", + "@babel/plugin-proposal-private-methods": "^7.14.5", + "@babel/plugin-proposal-private-property-in-object": "^7.14.5", + "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", "@babel/plugin-syntax-json-strings": "^7.8.3", @@ -1025,46 +1024,46 @@ "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.0", - "@babel/plugin-syntax-top-level-await": "^7.12.13", - "@babel/plugin-transform-arrow-functions": "^7.13.0", - "@babel/plugin-transform-async-to-generator": "^7.13.0", - "@babel/plugin-transform-block-scoped-functions": "^7.12.13", - "@babel/plugin-transform-block-scoping": "^7.14.4", - "@babel/plugin-transform-classes": "^7.14.4", - "@babel/plugin-transform-computed-properties": "^7.13.0", - "@babel/plugin-transform-destructuring": "^7.14.4", - "@babel/plugin-transform-dotall-regex": "^7.12.13", - "@babel/plugin-transform-duplicate-keys": "^7.12.13", - "@babel/plugin-transform-exponentiation-operator": "^7.12.13", - "@babel/plugin-transform-for-of": "^7.13.0", - "@babel/plugin-transform-function-name": "^7.12.13", - "@babel/plugin-transform-literals": "^7.12.13", - "@babel/plugin-transform-member-expression-literals": "^7.12.13", - "@babel/plugin-transform-modules-amd": "^7.14.2", - "@babel/plugin-transform-modules-commonjs": "^7.14.0", - "@babel/plugin-transform-modules-systemjs": "^7.13.8", - "@babel/plugin-transform-modules-umd": "^7.14.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.12.13", - "@babel/plugin-transform-new-target": "^7.12.13", - "@babel/plugin-transform-object-super": "^7.12.13", - "@babel/plugin-transform-parameters": "^7.14.2", - "@babel/plugin-transform-property-literals": "^7.12.13", - "@babel/plugin-transform-regenerator": "^7.13.15", - "@babel/plugin-transform-reserved-words": "^7.12.13", - "@babel/plugin-transform-shorthand-properties": "^7.12.13", - "@babel/plugin-transform-spread": "^7.13.0", - "@babel/plugin-transform-sticky-regex": "^7.12.13", - "@babel/plugin-transform-template-literals": "^7.13.0", - "@babel/plugin-transform-typeof-symbol": "^7.12.13", - "@babel/plugin-transform-unicode-escapes": "^7.12.13", - "@babel/plugin-transform-unicode-regex": "^7.12.13", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.14.5", + "@babel/plugin-transform-async-to-generator": "^7.14.5", + "@babel/plugin-transform-block-scoped-functions": "^7.14.5", + "@babel/plugin-transform-block-scoping": "^7.14.5", + "@babel/plugin-transform-classes": "^7.14.5", + "@babel/plugin-transform-computed-properties": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.5", + "@babel/plugin-transform-dotall-regex": "^7.14.5", + "@babel/plugin-transform-duplicate-keys": "^7.14.5", + "@babel/plugin-transform-exponentiation-operator": "^7.14.5", + "@babel/plugin-transform-for-of": "^7.14.5", + "@babel/plugin-transform-function-name": "^7.14.5", + "@babel/plugin-transform-literals": "^7.14.5", + "@babel/plugin-transform-member-expression-literals": "^7.14.5", + "@babel/plugin-transform-modules-amd": "^7.14.5", + "@babel/plugin-transform-modules-commonjs": "^7.14.5", + "@babel/plugin-transform-modules-systemjs": "^7.14.5", + "@babel/plugin-transform-modules-umd": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.5", + "@babel/plugin-transform-new-target": "^7.14.5", + "@babel/plugin-transform-object-super": "^7.14.5", + "@babel/plugin-transform-parameters": "^7.14.5", + "@babel/plugin-transform-property-literals": "^7.14.5", + "@babel/plugin-transform-regenerator": "^7.14.5", + "@babel/plugin-transform-reserved-words": "^7.14.5", + "@babel/plugin-transform-shorthand-properties": "^7.14.5", + "@babel/plugin-transform-spread": "^7.14.5", + "@babel/plugin-transform-sticky-regex": "^7.14.5", + "@babel/plugin-transform-template-literals": "^7.14.5", + "@babel/plugin-transform-typeof-symbol": "^7.14.5", + "@babel/plugin-transform-unicode-escapes": "^7.14.5", + "@babel/plugin-transform-unicode-regex": "^7.14.5", "@babel/preset-modules": "^0.1.4", - "@babel/types": "^7.14.4", - "babel-plugin-polyfill-corejs2": "^0.2.0", - "babel-plugin-polyfill-corejs3": "^0.2.0", - "babel-plugin-polyfill-regenerator": "^0.2.0", - "core-js-compat": "^3.9.0", + "@babel/types": "^7.14.5", + "babel-plugin-polyfill-corejs2": "^0.2.2", + "babel-plugin-polyfill-corejs3": "^0.2.2", + "babel-plugin-polyfill-regenerator": "^0.2.2", + "core-js-compat": "^3.14.0", "semver": "^6.3.0" }, "dependencies": { @@ -1090,47 +1089,47 @@ } }, "@babel/runtime": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.0.tgz", - "integrity": "sha512-JELkvo/DlpNdJ7dlyw/eY7E0suy5i5GQH+Vlxaq1nsNJ+H7f4Vtv3jMeCEgRhZZQFXTjldYfQgv2qmM6M1v5wA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.5.tgz", + "integrity": "sha512-121rumjddw9c3NCQ55KGkyE1h/nzWhU/owjhw0l4mQrkzz4x9SGS1X8gFLraHwX7td3Yo4QTL+qj0NcIzN87BA==", "dev": true, "requires": { "regenerator-runtime": "^0.13.4" } }, "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", + "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==", "dev": true, "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" + "@babel/code-frame": "^7.14.5", + "@babel/parser": "^7.14.5", + "@babel/types": "^7.14.5" }, "dependencies": { "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", "dev": true, "requires": { - "@babel/highlight": "^7.12.13" + "@babel/highlight": "^7.14.5" } }, "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true }, "@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", "js-tokens": "^4.0.0" } @@ -1138,43 +1137,44 @@ } }, "@babel/traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", - "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.14.2", - "@babel/helper-function-name": "^7.14.2", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.14.2", - "@babel/types": "^7.14.2", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.5.tgz", + "integrity": "sha512-G3BiS15vevepdmFqmUc9X+64y0viZYygubAMO8SvBmKARuF6CPSZtH4Ng9vi/lrWlZFGe3FWdXNy835akH8Glg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.14.5", + "@babel/generator": "^7.14.5", + "@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.5", + "@babel/types": "^7.14.5", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", "dev": true, "requires": { - "@babel/highlight": "^7.12.13" + "@babel/highlight": "^7.14.5" } }, "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true }, "@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", "js-tokens": "^4.0.0" } @@ -1182,19 +1182,19 @@ } }, "@babel/types": { - "version": "7.14.4", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.4.tgz", - "integrity": "sha512-lCj4aIs0xUefJFQnwwQv2Bxg7Omd6bgquZ6LGC+gGMh6/s5qDVfjuCMlDmYQ15SLsWHd9n+X3E75lKIhl5Lkiw==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.5.tgz", + "integrity": "sha512-M/NzBpEL95I5Hh4dwhin5JlE7EzO5PHMAuzjxss3tiOBD46KfQvVedN/3jEPZvdRvtsK2222XfdHogNIttFgcg==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.14.0", + "@babel/helper-validator-identifier": "^7.14.5", "to-fast-properties": "^2.0.0" }, "dependencies": { "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", + "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==", "dev": true } } @@ -2091,9 +2091,9 @@ "dev": true }, "@types/react": { - "version": "17.0.9", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.9.tgz", - "integrity": "sha512-2Cw7FvevpJxQrCb+k5t6GH1KIvmadj5uBbjPaLlJB/nZWUj56e1ZqcD6zsoMFB47MsJUTFl9RJ132A7hb3QFJA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", + "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", "dev": true, "requires": { "@types/prop-types": "*", @@ -2102,9 +2102,9 @@ } }, "@types/react-dom": { - "version": "17.0.6", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.6.tgz", - "integrity": "sha512-MGTI+TudxAnGTj8aco8mogaPSJGK2Whje7OZh1CxNLRyhJpTZg/pGQpIbCT0eCVFQyH7UFpdvCqQEThHIp/gsA==", + "version": "17.0.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.7.tgz", + "integrity": "sha512-Wd5xvZRlccOrCTej8jZkoFZuZRKHzanDDv1xglI33oBNFMWrqOSzrvWFw7ngSiZjrpJAzPKFtX7JvuXpkNmQHA==", "dev": true, "requires": { "@types/react": "*" @@ -4926,21 +4926,22 @@ } }, "css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", + "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", "dev": true, "requires": { "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" + "css-what": "^5.0.0", + "domhandler": "^4.2.0", + "domutils": "^2.6.0", + "nth-check": "^2.0.0" } }, "css-what": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", - "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", + "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", "dev": true }, "cssesc": { @@ -5458,27 +5459,14 @@ } }, "dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", + "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", "dev": true, "requires": { "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", "entities": "^2.0.0" - }, - "dependencies": { - "domelementtype": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", - "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==", - "dev": true - }, - "entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==", - "dev": true - } } }, "domain-browser": { @@ -5488,28 +5476,29 @@ "dev": true }, "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", + "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", "dev": true }, "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", + "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", "dev": true, "requires": { - "domelementtype": "1" + "domelementtype": "^2.2.0" } }, "domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", + "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", "dev": true, "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" } }, "dot-case": { @@ -5682,9 +5671,9 @@ "dev": true }, "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", "dev": true }, "envinfo": { @@ -7009,9 +6998,9 @@ } }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -7487,6 +7476,18 @@ } } }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, "http-cache-semantics": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", @@ -10035,12 +10036,12 @@ } }, "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", + "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", "dev": true, "requires": { - "boolbase": "~1.0.0" + "boolbase": "^1.0.0" } }, "object-assign": { @@ -11999,16 +12000,16 @@ "dev": true }, "renderkid": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.5.tgz", - "integrity": "sha512-ccqoLg+HLOHq1vdfYNm4TBeaCDIi1FLt3wGojTDSvdewUv65oTmI3cnT2E4hRjl1gzKZIPK+KZrXzlUYKnR+vQ==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", "dev": true, "requires": { - "css-select": "^2.0.2", - "dom-converter": "^0.2", - "htmlparser2": "^3.10.1", - "lodash": "^4.17.20", - "strip-ansi": "^3.0.0" + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" }, "dependencies": { "ansi-regex": { @@ -12017,37 +12018,6 @@ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "dev": true }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dev": true, - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -12220,9 +12190,9 @@ } }, "rollup": { - "version": "2.51.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.51.0.tgz", - "integrity": "sha512-ITLt9sScNCBVspSHauw/W49lEZ0vjN8LyCzSNsNaqT67vTss2lYEfOyxltX8hjrhr1l/rQwmZ2wazzEqhZ/fUg==", + "version": "2.51.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.51.2.tgz", + "integrity": "sha512-ReV2eGEadA7hmXSzjxdDKs10neqH2QURf2RxJ6ayAlq93ugy6qIvXMmbc5cWMGCDh1h5T4thuWO1e2VNbMq8FA==", "dev": true, "requires": { "fsevents": "~2.3.1" @@ -13779,9 +13749,9 @@ "dev": true }, "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true }, "trim-off-newlines": { diff --git a/package.json b/package.json index 1a3105a8..a100979f 100644 --- a/package.json +++ b/package.json @@ -47,14 +47,14 @@ }, "dependencies": {}, "devDependencies": { - "@babel/core": "^7.14.3", - "@babel/preset-env": "^7.14.4", + "@babel/core": "^7.14.5", + "@babel/preset-env": "^7.14.5", "@commitlint/cli": "^12.1.4", "@commitlint/config-conventional": "^12.1.4", "@release-it/conventional-changelog": "^3.0.0", "@types/mocha": "^8.2.2", "@types/prismjs": "^1.16.5", - "@types/react-dom": "^17.0.6", + "@types/react-dom": "^17.0.7", "@typescript-eslint/eslint-plugin": "^4.26.1", "@typescript-eslint/parser": "^4.26.1", "commitlint": "^12.1.4", @@ -79,7 +79,7 @@ "react": "^17.0.2", "react-dom": "^17.0.2", "release-it": "^14.8.0", - "rollup": "^2.51.0", + "rollup": "^2.51.2", "rollup-plugin-typescript2": "^0.30.0", "style-loader": "^2.0.0", "ts-loader": "^9.2.3", From 2bdc5591cca0f29eaa530c92279e9ea9e3fa336c Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Fri, 11 Jun 2021 15:57:19 -0400 Subject: [PATCH 10/12] fix(contain): account for scale with contain: inside - apparently, I had done this for contain: outside, but not inside - added zoom buttons to the contain: inside example for testing --- demo/examples/ContainInside.tsx | 27 +++++++++- src/panzoom.ts | 90 ++++++++++++++++----------------- 2 files changed, 70 insertions(+), 47 deletions(-) diff --git a/demo/examples/ContainInside.tsx b/demo/examples/ContainInside.tsx index 0e8c8abb..7cc1e994 100644 --- a/demo/examples/ContainInside.tsx +++ b/demo/examples/ContainInside.tsx @@ -1,5 +1,6 @@ +import Panzoom, { PanzoomObject } from '../../src/panzoom' import React, { useEffect, useRef } from 'react' -import Panzoom from '../../src/panzoom' + import Code from '../Code' import Demo from '../Demo' @@ -7,11 +8,33 @@ const code = {`Panzoom(elem, { contain: 'inside' })`} export default function ContainInside() { const elem = useRef(null) + let panzoom: PanzoomObject useEffect(() => { - Panzoom(elem.current, { contain: 'inside' }) + panzoom = Panzoom(elem.current, { contain: 'inside' }) }, []) return ( +
+ + + + +
Date: Fri, 11 Jun 2021 16:06:39 -0400 Subject: [PATCH 11/12] fix(pinchzoom): don't call pan during pinch zoom - also ensure a startDistance is set if a move with 2 pointers somehow happens before the start for the 2nd pointer updates startDistance Fixes gh-512 --- src/panzoom.ts | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/src/panzoom.ts b/src/panzoom.ts index ec86233d..5c38900a 100644 --- a/src/panzoom.ts +++ b/src/panzoom.ts @@ -468,21 +468,31 @@ function Panzoom( addPointer(pointers, event) const current = getMiddle(pointers) if (pointers.length > 1) { + // A startDistance of 0 means + // that there weren't 2 pointers + // handled on start + if (startDistance === 0) { + startDistance = getDistance(pointers) + } // Use the distance between the first 2 pointers // to determine the current scale const diff = getDistance(pointers) - startDistance const toScale = constrainScale((diff * options.step) / 80 + startScale).scale zoomToPoint(toScale, current) + } else { + // Panning during pinch zoom can cause issues + // because the zoom has not always rendered in time + // for accurate calculations + // See https://github.com/timmywil/panzoom/issues/512 + pan( + origX + (current.clientX - startClientX) / scale, + origY + (current.clientY - startClientY) / scale, + { + animate: false + }, + event + ) } - - pan( - origX + (current.clientX - startClientX) / scale, - origY + (current.clientY - startClientY) / scale, - { - animate: false - }, - event - ) } function handleUp(event: PointerEvent) { From 8ff604bf217faf2b8faa96f5533d1185de225cfd Mon Sep 17 00:00:00 2001 From: Timmy Willison <4timmywil@gmail.com> Date: Fri, 11 Jun 2021 16:10:28 -0400 Subject: [PATCH 12/12] chore: release 4.4.1 --- README.md | 100 ++--- dist/panzoom.es.js | 756 ++++++++++++++++++++++++++++++++++++ dist/panzoom.js | 764 +++++++++++++++++++++++++++++++++++++ dist/panzoom.min.js | 6 + dist/src/css.d.ts | 65 ++++ dist/src/events.d.ts | 8 + dist/src/isAttached.d.ts | 5 + dist/src/isExcluded.d.ts | 2 + dist/src/isSVGElement.d.ts | 1 + dist/src/panzoom.d.ts | 17 + dist/src/pointers.d.ts | 17 + dist/src/shallowClone.d.ts | 1 + dist/src/types.d.ts | 356 +++++++++++++++++ package-lock.json | 2 +- package.json | 2 +- 15 files changed, 2050 insertions(+), 52 deletions(-) create mode 100644 dist/panzoom.es.js create mode 100644 dist/panzoom.js create mode 100644 dist/panzoom.min.js create mode 100644 dist/src/css.d.ts create mode 100644 dist/src/events.d.ts create mode 100644 dist/src/isAttached.d.ts create mode 100644 dist/src/isExcluded.d.ts create mode 100644 dist/src/isSVGElement.d.ts create mode 100644 dist/src/panzoom.d.ts create mode 100644 dist/src/pointers.d.ts create mode 100644 dist/src/shallowClone.d.ts create mode 100644 dist/src/types.d.ts diff --git a/README.md b/README.md index 90e2b676..9081e44a 100644 --- a/README.md +++ b/README.md @@ -150,7 +150,7 @@ setTimeout(() => panzoom.pan(100, 100)) #### Defined in -[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/6d1bee3/src/panzoom.ts#L58) +[panzoom.ts:58](https://github.com/timmywil/panzoom/blob/22fb0b3/src/panzoom.ts#L58) ## `PanzoomOptions` @@ -168,7 +168,7 @@ Whether to animate transitions #### Defined in -[types.ts:21](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L21) +[types.ts:21](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L21) ### canvas @@ -185,7 +185,7 @@ where the `cursor` style is applied (i.e. the parent). #### Defined in -[types.ts:32](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L32) +[types.ts:32](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L32) ### duration @@ -195,7 +195,7 @@ Duration of the transition (ms) #### Defined in -[types.ts:34](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L34) +[types.ts:34](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L34) ### easing @@ -205,7 +205,7 @@ CSS Easing used for transitions #### Defined in -[types.ts:36](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L36) +[types.ts:36](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L36) ### exclude @@ -218,7 +218,7 @@ e.g. links and buttons that should not propagate the click event. #### Defined in -[types.ts:43](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L43) +[types.ts:43](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L43) ### excludeClass @@ -231,7 +231,7 @@ e.g. links and buttons that should not propagate the click event. #### Defined in -[types.ts:50](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L50) +[types.ts:50](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L50) ### force @@ -253,7 +253,7 @@ panzoom.zoom(1, { force: true }) #### Defined in -[types.ts:66](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L66) +[types.ts:66](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L66) ### handleStartEvent @@ -297,7 +297,7 @@ Panzoom(elem, { #### Defined in -[types.ts:91](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L91) +[types.ts:91](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L91) ### noBind @@ -307,7 +307,7 @@ Skip binding the default Panzoom event listeners #### Defined in -[types.ts:95](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L95) +[types.ts:95](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L95) ### origin @@ -327,7 +327,7 @@ And again, changing this for SVG in IE doesn't work at all. #### Defined in -[types.ts:109](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L109) +[types.ts:109](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L109) ### overflow @@ -337,7 +337,7 @@ The overflow CSS value for the parent. Defaults to 'hidden' #### Defined in -[types.ts:111](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L111) +[types.ts:111](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L111) ### setTransform @@ -375,7 +375,7 @@ Set the transform using the proper prefix #### Defined in -[types.ts:129](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L129) +[types.ts:129](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L129) ### silent @@ -385,7 +385,7 @@ Silence all events #### Defined in -[types.ts:131](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L131) +[types.ts:131](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L131) ### startScale @@ -395,7 +395,7 @@ Scale used to set the beginning transform #### Defined in -[types.ts:137](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L137) +[types.ts:137](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L137) ### startX @@ -405,7 +405,7 @@ X Value used to set the beginning transform #### Defined in -[types.ts:133](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L133) +[types.ts:133](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L133) ### startY @@ -415,7 +415,7 @@ Y Value used to set the beginning transform #### Defined in -[types.ts:135](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L135) +[types.ts:135](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L135) ### touchAction @@ -431,7 +431,7 @@ cannot work at the same time. #### Defined in -[types.ts:147](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L147) +[types.ts:147](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L147) ## PanOptions (includes MiscOptions) @@ -453,7 +453,7 @@ empty space around the element will be shown. #### Defined in -[types.ts:166](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L166) +[types.ts:166](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L166) ### cursor @@ -463,7 +463,7 @@ The cursor style to set on the panzoom element #### Defined in -[types.ts:168](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L168) +[types.ts:168](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L168) ### disablePan @@ -475,7 +475,7 @@ The element will still pan accordingly. #### Defined in -[types.ts:174](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L174) +[types.ts:174](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L174) ### disableXAxis @@ -485,7 +485,7 @@ Pan only on the Y axis #### Defined in -[types.ts:176](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L176) +[types.ts:176](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L176) ### disableYAxis @@ -495,7 +495,7 @@ Pan only on the X axis #### Defined in -[types.ts:178](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L178) +[types.ts:178](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L178) ### panOnlyWhenZoomed @@ -505,7 +505,7 @@ Disable panning while the scale is equal to the starting value #### Defined in -[types.ts:182](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L182) +[types.ts:182](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L182) ### relative @@ -515,7 +515,7 @@ When passing x and y values to .pan(), treat the values as relative to their cur #### Defined in -[types.ts:180](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L180) +[types.ts:180](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L180) ## ZoomOptions (includes MiscOptions) @@ -527,7 +527,7 @@ Disable zooming functionality #### Defined in -[types.ts:187](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L187) +[types.ts:187](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L187) ### focal @@ -547,7 +547,7 @@ to the parent dimensions. #### Defined in -[types.ts:194](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L194) +[types.ts:194](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L194) ### maxScale @@ -557,7 +557,7 @@ The maximum scale when zooming #### Defined in -[types.ts:198](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L198) +[types.ts:198](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L198) ### minScale @@ -567,7 +567,7 @@ The minimum scale when zooming #### Defined in -[types.ts:196](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L196) +[types.ts:196](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L196) ### step @@ -577,7 +577,7 @@ The step affects zoom calculation when zooming with a mouse wheel, when pinch zo #### Defined in -[types.ts:200](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L200) +[types.ts:200](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L200) ## PanzoomObject @@ -604,7 +604,7 @@ panzoom.bind() #### Defined in -[types.ts:227](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L227) +[types.ts:227](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L227) ### destroy @@ -618,7 +618,7 @@ Remove all event listeners bound to the the Panzoom element #### Defined in -[types.ts:229](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L229) +[types.ts:229](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L229) ### eventNames @@ -638,7 +638,7 @@ Pointer or Touch events. #### Defined in -[types.ts:235](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L235) +[types.ts:235](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L235) ### getOptions @@ -652,7 +652,7 @@ PanzoomOptions #### Defined in -[types.ts:241](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L241) +[types.ts:241](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L241) ### getPan @@ -671,7 +671,7 @@ Get the current x/y translation #### Defined in -[types.ts:237](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L237) +[types.ts:237](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L237) ### getScale @@ -685,7 +685,7 @@ Get the current scale #### Defined in -[types.ts:239](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L239) +[types.ts:239](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L239) ### pan @@ -714,7 +714,7 @@ panzoom.pan(10, 10, { relative: true }) #### Defined in -[types.ts:252](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L252) +[types.ts:252](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L252) ### reset @@ -743,7 +743,7 @@ panzoom.reset({ animate: false }) #### Defined in -[types.ts:265](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L265) +[types.ts:265](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L265) ### resetStyle @@ -762,7 +762,7 @@ panzoom.resetStyle() #### Defined in -[types.ts:274](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L274) +[types.ts:274](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L274) ### setOptions @@ -791,7 +791,7 @@ panzoom.setOptions({ cursor: 'default' }) #### Defined in -[types.ts:287](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L287) +[types.ts:287](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L287) ### setStyle @@ -812,7 +812,7 @@ A convenience method for setting prefixed styles on the Panzoom element #### Defined in -[types.ts:289](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L289) +[types.ts:289](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L289) ### zoom @@ -838,7 +838,7 @@ panzoom.zoom(2.2, { animate: true }) #### Defined in -[types.ts:298](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L298) +[types.ts:298](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L298) ### zoomIn @@ -865,7 +865,7 @@ panzoom.zoomIn({ animate: false }) #### Defined in -[types.ts:309](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L309) +[types.ts:309](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L309) ### zoomOut @@ -892,7 +892,7 @@ panzoom.zoomOut({ animate: false }) #### Defined in -[types.ts:320](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L320) +[types.ts:320](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L320) ### zoomToPoint @@ -923,7 +923,7 @@ panzoom.zoomToPoint(1.2, pointerEvent) #### Defined in -[types.ts:331](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L331) +[types.ts:331](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L331) ### zoomWithWheel @@ -964,7 +964,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:360](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L360) +[types.ts:360](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L360) ## CurrentValues @@ -974,7 +974,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:211](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L211) +[types.ts:211](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L211) ### scale @@ -982,7 +982,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:210](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L210) +[types.ts:210](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L210) ### x @@ -990,7 +990,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:208](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L208) +[types.ts:208](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L208) ### y @@ -998,7 +998,7 @@ elem.parentElement.addEventListener('wheel', function (event) { #### Defined in -[types.ts:209](https://github.com/timmywil/panzoom/blob/6d1bee3/src/types.ts#L209) +[types.ts:209](https://github.com/timmywil/panzoom/blob/22fb0b3/src/types.ts#L209) ## Events diff --git a/dist/panzoom.es.js b/dist/panzoom.es.js new file mode 100644 index 00000000..c68811d1 --- /dev/null +++ b/dist/panzoom.es.js @@ -0,0 +1,756 @@ +/** +* Panzoom for panning and zooming elements using CSS transforms +* Copyright Timmy Willison and other contributors +* https://github.com/timmywil/panzoom/blob/master/MIT-License.txt +*/ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + +var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; + +/* eslint-disable no-var */ +if (typeof window !== 'undefined') { + // Support: IE11 only + if (window.NodeList && !NodeList.prototype.forEach) { + NodeList.prototype.forEach = Array.prototype.forEach; + } + // Support: IE11 only + // CustomEvent is an object instead of a constructor + if (typeof window.CustomEvent !== 'function') { + window.CustomEvent = function CustomEvent(event, params) { + params = params || { bubbles: false, cancelable: false, detail: null }; + var evt = document.createEvent('CustomEvent'); + evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail); + return evt + }; + } +} + +/** + * Utilites for working with multiple pointer events + */ +function findEventIndex(pointers, event) { + var i = pointers.length; + while (i--) { + if (pointers[i].pointerId === event.pointerId) { + return i; + } + } + return -1; +} +function addPointer(pointers, event) { + var i; + // Add touches if applicable + if (event.touches) { + i = 0; + for (var _i = 0, _a = event.touches; _i < _a.length; _i++) { + var touch = _a[_i]; + touch.pointerId = i++; + addPointer(pointers, touch); + } + return; + } + i = findEventIndex(pointers, event); + // Update if already present + if (i > -1) { + pointers.splice(i, 1); + } + pointers.push(event); +} +function removePointer(pointers, event) { + // Add touches if applicable + if (event.touches) { + // Remove all touches + while (pointers.length) { + pointers.pop(); + } + return; + } + var i = findEventIndex(pointers, event); + if (i > -1) { + pointers.splice(i, 1); + } +} +/** + * Calculates a center point between + * the given pointer events, for panning + * with multiple pointers. + */ +function getMiddle(pointers) { + // Copy to avoid changing by reference + pointers = pointers.slice(0); + var event1 = pointers.pop(); + var event2; + while ((event2 = pointers.pop())) { + event1 = { + clientX: (event2.clientX - event1.clientX) / 2 + event1.clientX, + clientY: (event2.clientY - event1.clientY) / 2 + event1.clientY + }; + } + return event1; +} +/** + * Calculates the distance between two points + * for pinch zooming. + * Limits to the first 2 + */ +function getDistance(pointers) { + if (pointers.length < 2) { + return 0; + } + var event1 = pointers[0]; + var event2 = pointers[1]; + return Math.sqrt(Math.pow(Math.abs(event2.clientX - event1.clientX), 2) + + Math.pow(Math.abs(event2.clientY - event1.clientY), 2)); +} + +var events = { + down: 'mousedown', + move: 'mousemove', + up: 'mouseup mouseleave' +}; +if (typeof window !== 'undefined') { + if (typeof window.PointerEvent === 'function') { + events = { + down: 'pointerdown', + move: 'pointermove', + up: 'pointerup pointerleave pointercancel' + }; + } + else if (typeof window.TouchEvent === 'function') { + events = { + down: 'touchstart', + move: 'touchmove', + up: 'touchend touchcancel' + }; + } +} +function onPointer(event, elem, handler, eventOpts) { + events[event].split(' ').forEach(function (name) { + elem.addEventListener(name, handler, eventOpts); + }); +} +function destroyPointer(event, elem, handler) { + events[event].split(' ').forEach(function (name) { + elem.removeEventListener(name, handler); + }); +} + +var isIE = typeof document !== 'undefined' && !!document.documentMode; +/** + * Lazy creation of a CSS style declaration + */ +var divStyle; +function createStyle() { + if (divStyle) { + return divStyle; + } + return (divStyle = document.createElement('div').style); +} +/** + * Proper prefixing for cross-browser compatibility + */ +var prefixes = ['webkit', 'moz', 'ms']; +var prefixCache = {}; +function getPrefixedName(name) { + if (prefixCache[name]) { + return prefixCache[name]; + } + var divStyle = createStyle(); + if (name in divStyle) { + return (prefixCache[name] = name); + } + var capName = name[0].toUpperCase() + name.slice(1); + var i = prefixes.length; + while (i--) { + var prefixedName = "" + prefixes[i] + capName; + if (prefixedName in divStyle) { + return (prefixCache[name] = prefixedName); + } + } +} +/** + * Gets a style value expected to be a number + */ +function getCSSNum(name, style) { + return parseFloat(style[getPrefixedName(name)]) || 0; +} +function getBoxStyle(elem, name, style) { + if (style === void 0) { style = window.getComputedStyle(elem); } + // Support: FF 68+ + // Firefox requires specificity for border + var suffix = name === 'border' ? 'Width' : ''; + return { + left: getCSSNum(name + "Left" + suffix, style), + right: getCSSNum(name + "Right" + suffix, style), + top: getCSSNum(name + "Top" + suffix, style), + bottom: getCSSNum(name + "Bottom" + suffix, style) + }; +} +/** + * Set a style using the properly prefixed name + */ +function setStyle(elem, name, value) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + elem.style[getPrefixedName(name)] = value; +} +/** + * Constructs the transition from panzoom options + * and takes care of prefixing the transition and transform + */ +function setTransition(elem, options) { + var transform = getPrefixedName('transform'); + setStyle(elem, 'transition', transform + " " + options.duration + "ms " + options.easing); +} +/** + * Set the transform using the proper prefix + */ +function setTransform(elem, _a, _options) { + var x = _a.x, y = _a.y, scale = _a.scale, isSVG = _a.isSVG; + setStyle(elem, 'transform', "scale(" + scale + ") translate(" + x + "px, " + y + "px)"); + if (isSVG && isIE) { + var matrixValue = window.getComputedStyle(elem).getPropertyValue('transform'); + elem.setAttribute('transform', matrixValue); + } +} +/** + * Dimensions used in containment and focal point zooming + */ +function getDimensions(elem) { + var parent = elem.parentNode; + var style = window.getComputedStyle(elem); + var parentStyle = window.getComputedStyle(parent); + var rectElem = elem.getBoundingClientRect(); + var rectParent = parent.getBoundingClientRect(); + return { + elem: { + style: style, + width: rectElem.width, + height: rectElem.height, + top: rectElem.top, + bottom: rectElem.bottom, + left: rectElem.left, + right: rectElem.right, + margin: getBoxStyle(elem, 'margin', style), + border: getBoxStyle(elem, 'border', style) + }, + parent: { + style: parentStyle, + width: rectParent.width, + height: rectParent.height, + top: rectParent.top, + bottom: rectParent.bottom, + left: rectParent.left, + right: rectParent.right, + padding: getBoxStyle(parent, 'padding', parentStyle), + border: getBoxStyle(parent, 'border', parentStyle) + } + }; +} + +/** + * Determine if an element is attached to the DOM + * Panzoom requires this so events work properly + */ +function isAttached(elem) { + var doc = elem.ownerDocument; + var parent = elem.parentNode; + return (doc && + parent && + doc.nodeType === 9 && + parent.nodeType === 1 && + doc.documentElement.contains(parent)); +} + +function getClass(elem) { + return (elem.getAttribute('class') || '').trim(); +} +function hasClass(elem, className) { + return elem.nodeType === 1 && (" " + getClass(elem) + " ").indexOf(" " + className + " ") > -1; +} +function isExcluded(elem, options) { + for (var cur = elem; cur != null; cur = cur.parentNode) { + if (hasClass(cur, options.excludeClass) || options.exclude.indexOf(cur) > -1) { + return true; + } + } + return false; +} + +/** + * Determine if an element is SVG by checking the namespace + * Exception: the element itself should be treated like HTML + */ +var rsvg = /^http:[\w\.\/]+svg$/; +function isSVGElement(elem) { + return rsvg.test(elem.namespaceURI) && elem.nodeName.toLowerCase() !== 'svg'; +} + +function shallowClone(obj) { + var clone = {}; + for (var key in obj) { + if (obj.hasOwnProperty(key)) { + clone[key] = obj[key]; + } + } + return clone; +} + +var defaultOptions = { + animate: false, + canvas: false, + cursor: 'move', + disablePan: false, + disableZoom: false, + disableXAxis: false, + disableYAxis: false, + duration: 200, + easing: 'ease-in-out', + exclude: [], + excludeClass: 'panzoom-exclude', + handleStartEvent: function (e) { + e.preventDefault(); + e.stopPropagation(); + }, + maxScale: 4, + minScale: 0.125, + overflow: 'hidden', + panOnlyWhenZoomed: false, + relative: false, + setTransform: setTransform, + startX: 0, + startY: 0, + startScale: 1, + step: 0.3, + touchAction: 'none' +}; +function Panzoom(elem, options) { + if (!elem) { + throw new Error('Panzoom requires an element as an argument'); + } + if (elem.nodeType !== 1) { + throw new Error('Panzoom requires an element with a nodeType of 1'); + } + if (!isAttached(elem)) { + throw new Error('Panzoom should be called on elements that have been attached to the DOM'); + } + options = __assign(__assign({}, defaultOptions), options); + var isSVG = isSVGElement(elem); + var parent = elem.parentNode; + // Set parent styles + parent.style.overflow = options.overflow; + parent.style.userSelect = 'none'; + // This is important for mobile to + // prevent scrolling while panning + parent.style.touchAction = options.touchAction; + (options.canvas ? parent : elem).style.cursor = options.cursor; + // Set element styles + elem.style.userSelect = 'none'; + elem.style.touchAction = options.touchAction; + // The default for HTML is '50% 50%' + // The default for SVG is '0 0' + // SVG can't be changed in IE + setStyle(elem, 'transformOrigin', typeof options.origin === 'string' ? options.origin : isSVG ? '0 0' : '50% 50%'); + function resetStyle() { + parent.style.overflow = ''; + parent.style.userSelect = ''; + parent.style.touchAction = ''; + parent.style.cursor = ''; + elem.style.cursor = ''; + elem.style.userSelect = ''; + elem.style.touchAction = ''; + setStyle(elem, 'transformOrigin', ''); + } + function setOptions(opts) { + if (opts === void 0) { opts = {}; } + for (var key in opts) { + if (opts.hasOwnProperty(key)) { + options[key] = opts[key]; + } + } + // Handle option side-effects + if (opts.hasOwnProperty('cursor') || opts.hasOwnProperty('canvas')) { + parent.style.cursor = elem.style.cursor = ''; + (options.canvas ? parent : elem).style.cursor = options.cursor; + } + if (opts.hasOwnProperty('overflow')) { + parent.style.overflow = opts.overflow; + } + if (opts.hasOwnProperty('touchAction')) { + parent.style.touchAction = opts.touchAction; + elem.style.touchAction = opts.touchAction; + } + if (opts.hasOwnProperty('minScale') || + opts.hasOwnProperty('maxScale') || + opts.hasOwnProperty('contain')) { + setMinMax(); + } + } + var x = 0; + var y = 0; + var scale = 1; + var isPanning = false; + zoom(options.startScale, { animate: false }); + // Wait for scale to update + // for accurate dimensions + // to constrain initial values + setTimeout(function () { + setMinMax(); + pan(options.startX, options.startY, { animate: false }); + }); + function trigger(eventName, detail, opts) { + if (opts.silent) { + return; + } + var event = new CustomEvent(eventName, { detail: detail }); + elem.dispatchEvent(event); + } + function setTransformWithEvent(eventName, opts, originalEvent) { + var value = { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: originalEvent }; + requestAnimationFrame(function () { + if (typeof opts.animate === 'boolean') { + if (opts.animate) { + setTransition(elem, opts); + } + else { + setStyle(elem, 'transition', 'none'); + } + } + opts.setTransform(elem, value, opts); + }); + trigger(eventName, value, opts); + trigger('panzoomchange', value, opts); + return value; + } + function setMinMax() { + if (options.contain) { + var dims = getDimensions(elem); + var parentWidth = dims.parent.width - dims.parent.border.left - dims.parent.border.right; + var parentHeight = dims.parent.height - dims.parent.border.top - dims.parent.border.bottom; + var elemWidth = dims.elem.width / scale; + var elemHeight = dims.elem.height / scale; + var elemScaledWidth = parentWidth / elemWidth; + var elemScaledHeight = parentHeight / elemHeight; + if (options.contain === 'inside') { + options.maxScale = Math.min(elemScaledWidth, elemScaledHeight); + } + else if (options.contain === 'outside') { + options.minScale = Math.max(elemScaledWidth, elemScaledHeight); + } + } + } + function constrainXY(toX, toY, toScale, panOptions) { + var opts = __assign(__assign({}, options), panOptions); + var result = { x: x, y: y, opts: opts }; + if (!opts.force && (opts.disablePan || (opts.panOnlyWhenZoomed && scale === opts.startScale))) { + return result; + } + toX = parseFloat(toX); + toY = parseFloat(toY); + if (!opts.disableXAxis) { + result.x = (opts.relative ? x : 0) + toX; + } + if (!opts.disableYAxis) { + result.y = (opts.relative ? y : 0) + toY; + } + if (opts.contain) { + var dims = getDimensions(elem); + var realWidth = dims.elem.width / scale; + var realHeight = dims.elem.height / scale; + var scaledWidth = realWidth * toScale; + var scaledHeight = realHeight * toScale; + var diffHorizontal = (scaledWidth - realWidth) / 2; + var diffVertical = (scaledHeight - realHeight) / 2; + if (opts.contain === 'inside') { + var minX = (-dims.elem.margin.left - dims.parent.padding.left + diffHorizontal) / toScale; + var maxX = (dims.parent.width - + scaledWidth - + dims.parent.padding.left - + dims.elem.margin.left - + dims.parent.border.left - + dims.parent.border.right + + diffHorizontal) / + toScale; + result.x = Math.max(Math.min(result.x, maxX), minX); + var minY = (-dims.elem.margin.top - dims.parent.padding.top + diffVertical) / toScale; + var maxY = (dims.parent.height - + scaledHeight - + dims.parent.padding.top - + dims.elem.margin.top - + dims.parent.border.top - + dims.parent.border.bottom + + diffVertical) / + toScale; + result.y = Math.max(Math.min(result.y, maxY), minY); + } + else if (opts.contain === 'outside') { + var minX = (-(scaledWidth - dims.parent.width) - + dims.parent.padding.left - + dims.parent.border.left - + dims.parent.border.right + + diffHorizontal) / + toScale; + var maxX = (diffHorizontal - dims.parent.padding.left) / toScale; + result.x = Math.max(Math.min(result.x, maxX), minX); + var minY = (-(scaledHeight - dims.parent.height) - + dims.parent.padding.top - + dims.parent.border.top - + dims.parent.border.bottom + + diffVertical) / + toScale; + var maxY = (diffVertical - dims.parent.padding.top) / toScale; + result.y = Math.max(Math.min(result.y, maxY), minY); + } + } + return result; + } + function constrainScale(toScale, zoomOptions) { + var opts = __assign(__assign({}, options), zoomOptions); + var result = { scale: scale, opts: opts }; + if (!opts.force && opts.disableZoom) { + return result; + } + result.scale = Math.min(Math.max(toScale, opts.minScale), opts.maxScale); + return result; + } + function pan(toX, toY, panOptions, originalEvent) { + var result = constrainXY(toX, toY, scale, panOptions); + var opts = result.opts; + x = result.x; + y = result.y; + return setTransformWithEvent('panzoompan', opts, originalEvent); + } + function zoom(toScale, zoomOptions, originalEvent) { + var result = constrainScale(toScale, zoomOptions); + var opts = result.opts; + if (!opts.force && opts.disableZoom) { + return; + } + toScale = result.scale; + var toX = x; + var toY = y; + if (opts.focal) { + // The difference between the point after the scale and the point before the scale + // plus the current translation after the scale + // neutralized to no scale (as the transform scale will apply to the translation) + var focal = opts.focal; + toX = (focal.x / toScale - focal.x / scale + x * toScale) / toScale; + toY = (focal.y / toScale - focal.y / scale + y * toScale) / toScale; + } + var panResult = constrainXY(toX, toY, toScale, { relative: false, force: true }); + x = panResult.x; + y = panResult.y; + scale = toScale; + return setTransformWithEvent('panzoomzoom', opts, originalEvent); + } + function zoomInOut(isIn, zoomOptions) { + var opts = __assign(__assign(__assign({}, options), { animate: true }), zoomOptions); + return zoom(scale * Math.exp((isIn ? 1 : -1) * opts.step), opts); + } + function zoomIn(zoomOptions) { + return zoomInOut(true, zoomOptions); + } + function zoomOut(zoomOptions) { + return zoomInOut(false, zoomOptions); + } + function zoomToPoint(toScale, point, zoomOptions, originalEvent) { + var dims = getDimensions(elem); + // Instead of thinking of operating on the panzoom element, + // think of operating on the area inside the panzoom + // element's parent + // Subtract padding and border + var effectiveArea = { + width: dims.parent.width - + dims.parent.padding.left - + dims.parent.padding.right - + dims.parent.border.left - + dims.parent.border.right, + height: dims.parent.height - + dims.parent.padding.top - + dims.parent.padding.bottom - + dims.parent.border.top - + dims.parent.border.bottom + }; + // Adjust the clientX/clientY to ignore the area + // outside the effective area + var clientX = point.clientX - + dims.parent.left - + dims.parent.padding.left - + dims.parent.border.left - + dims.elem.margin.left; + var clientY = point.clientY - + dims.parent.top - + dims.parent.padding.top - + dims.parent.border.top - + dims.elem.margin.top; + // Adjust the clientX/clientY for HTML elements, + // because they have a transform-origin of 50% 50% + if (!isSVG) { + clientX -= dims.elem.width / scale / 2; + clientY -= dims.elem.height / scale / 2; + } + // Convert the mouse point from it's position over the + // effective area before the scale to the position + // over the effective area after the scale. + var focal = { + x: (clientX / effectiveArea.width) * (effectiveArea.width * toScale), + y: (clientY / effectiveArea.height) * (effectiveArea.height * toScale) + }; + return zoom(toScale, __assign(__assign({ animate: false }, zoomOptions), { focal: focal }), originalEvent); + } + function zoomWithWheel(event, zoomOptions) { + // Need to prevent the default here + // or it conflicts with regular page scroll + event.preventDefault(); + var opts = __assign(__assign({}, options), zoomOptions); + // Normalize to deltaX in case shift modifier is used on Mac + var delta = event.deltaY === 0 && event.deltaX ? event.deltaX : event.deltaY; + var wheel = delta < 0 ? 1 : -1; + var toScale = constrainScale(scale * Math.exp((wheel * opts.step) / 3), opts).scale; + return zoomToPoint(toScale, event, opts); + } + function reset(resetOptions) { + var opts = __assign(__assign(__assign({}, options), { animate: true, force: true }), resetOptions); + scale = constrainScale(opts.startScale, opts).scale; + var panResult = constrainXY(opts.startX, opts.startY, scale, opts); + x = panResult.x; + y = panResult.y; + return setTransformWithEvent('panzoomreset', opts); + } + var origX; + var origY; + var startClientX; + var startClientY; + var startScale; + var startDistance; + var pointers = []; + function handleDown(event) { + // Don't handle this event if the target is excluded + if (isExcluded(event.target, options)) { + return; + } + addPointer(pointers, event); + isPanning = true; + options.handleStartEvent(event); + origX = x; + origY = y; + trigger('panzoomstart', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); + // This works whether there are multiple + // pointers or not + var point = getMiddle(pointers); + startClientX = point.clientX; + startClientY = point.clientY; + startScale = scale; + startDistance = getDistance(pointers); + } + function move(event) { + if (!isPanning || + origX === undefined || + origY === undefined || + startClientX === undefined || + startClientY === undefined) { + return; + } + addPointer(pointers, event); + var current = getMiddle(pointers); + if (pointers.length > 1) { + // A startDistance of 0 means + // that there weren't 2 pointers + // handled on start + if (startDistance === 0) { + startDistance = getDistance(pointers); + } + // Use the distance between the first 2 pointers + // to determine the current scale + var diff = getDistance(pointers) - startDistance; + var toScale = constrainScale((diff * options.step) / 80 + startScale).scale; + zoomToPoint(toScale, current); + } + else { + // Panning during pinch zoom can cause issues + // because the zoom has not always rendered in time + // for accurate calculations + // See https://github.com/timmywil/panzoom/issues/512 + pan(origX + (current.clientX - startClientX) / scale, origY + (current.clientY - startClientY) / scale, { + animate: false + }, event); + } + } + function handleUp(event) { + // Don't call panzoomend when panning with 2 touches + // until both touches end + if (pointers.length === 1) { + trigger('panzoomend', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); + } + // Note: don't remove all pointers + // Can restart without having to reinitiate all of them + // Remove the pointer regardless of the isPanning state + removePointer(pointers, event); + if (!isPanning) { + return; + } + isPanning = false; + origX = origY = startClientX = startClientY = undefined; + } + var bound = false; + function bind() { + if (bound) { + return; + } + bound = true; + onPointer('down', options.canvas ? parent : elem, handleDown); + onPointer('move', document, move, { passive: true }); + onPointer('up', document, handleUp, { passive: true }); + } + function destroy() { + bound = false; + destroyPointer('down', options.canvas ? parent : elem, handleDown); + destroyPointer('move', document, move); + destroyPointer('up', document, handleUp); + } + if (!options.noBind) { + bind(); + } + return { + bind: bind, + destroy: destroy, + eventNames: events, + getPan: function () { return ({ x: x, y: y }); }, + getScale: function () { return scale; }, + getOptions: function () { return shallowClone(options); }, + pan: pan, + reset: reset, + resetStyle: resetStyle, + setOptions: setOptions, + setStyle: function (name, value) { return setStyle(elem, name, value); }, + zoom: zoom, + zoomIn: zoomIn, + zoomOut: zoomOut, + zoomToPoint: zoomToPoint, + zoomWithWheel: zoomWithWheel + }; +} +Panzoom.defaultOptions = defaultOptions; + +export default Panzoom; diff --git a/dist/panzoom.js b/dist/panzoom.js new file mode 100644 index 00000000..f516dff1 --- /dev/null +++ b/dist/panzoom.js @@ -0,0 +1,764 @@ +/** +* Panzoom for panning and zooming elements using CSS transforms +* Copyright Timmy Willison and other contributors +* https://github.com/timmywil/panzoom/blob/master/MIT-License.txt +*/ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Panzoom = factory()); +}(this, (function () { 'use strict'; + + /*! ***************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */ + + var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); + }; + + /* eslint-disable no-var */ + if (typeof window !== 'undefined') { + // Support: IE11 only + if (window.NodeList && !NodeList.prototype.forEach) { + NodeList.prototype.forEach = Array.prototype.forEach; + } + // Support: IE11 only + // CustomEvent is an object instead of a constructor + if (typeof window.CustomEvent !== 'function') { + window.CustomEvent = function CustomEvent(event, params) { + params = params || { bubbles: false, cancelable: false, detail: null }; + var evt = document.createEvent('CustomEvent'); + evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail); + return evt + }; + } + } + + /** + * Utilites for working with multiple pointer events + */ + function findEventIndex(pointers, event) { + var i = pointers.length; + while (i--) { + if (pointers[i].pointerId === event.pointerId) { + return i; + } + } + return -1; + } + function addPointer(pointers, event) { + var i; + // Add touches if applicable + if (event.touches) { + i = 0; + for (var _i = 0, _a = event.touches; _i < _a.length; _i++) { + var touch = _a[_i]; + touch.pointerId = i++; + addPointer(pointers, touch); + } + return; + } + i = findEventIndex(pointers, event); + // Update if already present + if (i > -1) { + pointers.splice(i, 1); + } + pointers.push(event); + } + function removePointer(pointers, event) { + // Add touches if applicable + if (event.touches) { + // Remove all touches + while (pointers.length) { + pointers.pop(); + } + return; + } + var i = findEventIndex(pointers, event); + if (i > -1) { + pointers.splice(i, 1); + } + } + /** + * Calculates a center point between + * the given pointer events, for panning + * with multiple pointers. + */ + function getMiddle(pointers) { + // Copy to avoid changing by reference + pointers = pointers.slice(0); + var event1 = pointers.pop(); + var event2; + while ((event2 = pointers.pop())) { + event1 = { + clientX: (event2.clientX - event1.clientX) / 2 + event1.clientX, + clientY: (event2.clientY - event1.clientY) / 2 + event1.clientY + }; + } + return event1; + } + /** + * Calculates the distance between two points + * for pinch zooming. + * Limits to the first 2 + */ + function getDistance(pointers) { + if (pointers.length < 2) { + return 0; + } + var event1 = pointers[0]; + var event2 = pointers[1]; + return Math.sqrt(Math.pow(Math.abs(event2.clientX - event1.clientX), 2) + + Math.pow(Math.abs(event2.clientY - event1.clientY), 2)); + } + + var events = { + down: 'mousedown', + move: 'mousemove', + up: 'mouseup mouseleave' + }; + if (typeof window !== 'undefined') { + if (typeof window.PointerEvent === 'function') { + events = { + down: 'pointerdown', + move: 'pointermove', + up: 'pointerup pointerleave pointercancel' + }; + } + else if (typeof window.TouchEvent === 'function') { + events = { + down: 'touchstart', + move: 'touchmove', + up: 'touchend touchcancel' + }; + } + } + function onPointer(event, elem, handler, eventOpts) { + events[event].split(' ').forEach(function (name) { + elem.addEventListener(name, handler, eventOpts); + }); + } + function destroyPointer(event, elem, handler) { + events[event].split(' ').forEach(function (name) { + elem.removeEventListener(name, handler); + }); + } + + var isIE = typeof document !== 'undefined' && !!document.documentMode; + /** + * Lazy creation of a CSS style declaration + */ + var divStyle; + function createStyle() { + if (divStyle) { + return divStyle; + } + return (divStyle = document.createElement('div').style); + } + /** + * Proper prefixing for cross-browser compatibility + */ + var prefixes = ['webkit', 'moz', 'ms']; + var prefixCache = {}; + function getPrefixedName(name) { + if (prefixCache[name]) { + return prefixCache[name]; + } + var divStyle = createStyle(); + if (name in divStyle) { + return (prefixCache[name] = name); + } + var capName = name[0].toUpperCase() + name.slice(1); + var i = prefixes.length; + while (i--) { + var prefixedName = "" + prefixes[i] + capName; + if (prefixedName in divStyle) { + return (prefixCache[name] = prefixedName); + } + } + } + /** + * Gets a style value expected to be a number + */ + function getCSSNum(name, style) { + return parseFloat(style[getPrefixedName(name)]) || 0; + } + function getBoxStyle(elem, name, style) { + if (style === void 0) { style = window.getComputedStyle(elem); } + // Support: FF 68+ + // Firefox requires specificity for border + var suffix = name === 'border' ? 'Width' : ''; + return { + left: getCSSNum(name + "Left" + suffix, style), + right: getCSSNum(name + "Right" + suffix, style), + top: getCSSNum(name + "Top" + suffix, style), + bottom: getCSSNum(name + "Bottom" + suffix, style) + }; + } + /** + * Set a style using the properly prefixed name + */ + function setStyle(elem, name, value) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + elem.style[getPrefixedName(name)] = value; + } + /** + * Constructs the transition from panzoom options + * and takes care of prefixing the transition and transform + */ + function setTransition(elem, options) { + var transform = getPrefixedName('transform'); + setStyle(elem, 'transition', transform + " " + options.duration + "ms " + options.easing); + } + /** + * Set the transform using the proper prefix + */ + function setTransform(elem, _a, _options) { + var x = _a.x, y = _a.y, scale = _a.scale, isSVG = _a.isSVG; + setStyle(elem, 'transform', "scale(" + scale + ") translate(" + x + "px, " + y + "px)"); + if (isSVG && isIE) { + var matrixValue = window.getComputedStyle(elem).getPropertyValue('transform'); + elem.setAttribute('transform', matrixValue); + } + } + /** + * Dimensions used in containment and focal point zooming + */ + function getDimensions(elem) { + var parent = elem.parentNode; + var style = window.getComputedStyle(elem); + var parentStyle = window.getComputedStyle(parent); + var rectElem = elem.getBoundingClientRect(); + var rectParent = parent.getBoundingClientRect(); + return { + elem: { + style: style, + width: rectElem.width, + height: rectElem.height, + top: rectElem.top, + bottom: rectElem.bottom, + left: rectElem.left, + right: rectElem.right, + margin: getBoxStyle(elem, 'margin', style), + border: getBoxStyle(elem, 'border', style) + }, + parent: { + style: parentStyle, + width: rectParent.width, + height: rectParent.height, + top: rectParent.top, + bottom: rectParent.bottom, + left: rectParent.left, + right: rectParent.right, + padding: getBoxStyle(parent, 'padding', parentStyle), + border: getBoxStyle(parent, 'border', parentStyle) + } + }; + } + + /** + * Determine if an element is attached to the DOM + * Panzoom requires this so events work properly + */ + function isAttached(elem) { + var doc = elem.ownerDocument; + var parent = elem.parentNode; + return (doc && + parent && + doc.nodeType === 9 && + parent.nodeType === 1 && + doc.documentElement.contains(parent)); + } + + function getClass(elem) { + return (elem.getAttribute('class') || '').trim(); + } + function hasClass(elem, className) { + return elem.nodeType === 1 && (" " + getClass(elem) + " ").indexOf(" " + className + " ") > -1; + } + function isExcluded(elem, options) { + for (var cur = elem; cur != null; cur = cur.parentNode) { + if (hasClass(cur, options.excludeClass) || options.exclude.indexOf(cur) > -1) { + return true; + } + } + return false; + } + + /** + * Determine if an element is SVG by checking the namespace + * Exception: the element itself should be treated like HTML + */ + var rsvg = /^http:[\w\.\/]+svg$/; + function isSVGElement(elem) { + return rsvg.test(elem.namespaceURI) && elem.nodeName.toLowerCase() !== 'svg'; + } + + function shallowClone(obj) { + var clone = {}; + for (var key in obj) { + if (obj.hasOwnProperty(key)) { + clone[key] = obj[key]; + } + } + return clone; + } + + var defaultOptions = { + animate: false, + canvas: false, + cursor: 'move', + disablePan: false, + disableZoom: false, + disableXAxis: false, + disableYAxis: false, + duration: 200, + easing: 'ease-in-out', + exclude: [], + excludeClass: 'panzoom-exclude', + handleStartEvent: function (e) { + e.preventDefault(); + e.stopPropagation(); + }, + maxScale: 4, + minScale: 0.125, + overflow: 'hidden', + panOnlyWhenZoomed: false, + relative: false, + setTransform: setTransform, + startX: 0, + startY: 0, + startScale: 1, + step: 0.3, + touchAction: 'none' + }; + function Panzoom(elem, options) { + if (!elem) { + throw new Error('Panzoom requires an element as an argument'); + } + if (elem.nodeType !== 1) { + throw new Error('Panzoom requires an element with a nodeType of 1'); + } + if (!isAttached(elem)) { + throw new Error('Panzoom should be called on elements that have been attached to the DOM'); + } + options = __assign(__assign({}, defaultOptions), options); + var isSVG = isSVGElement(elem); + var parent = elem.parentNode; + // Set parent styles + parent.style.overflow = options.overflow; + parent.style.userSelect = 'none'; + // This is important for mobile to + // prevent scrolling while panning + parent.style.touchAction = options.touchAction; + (options.canvas ? parent : elem).style.cursor = options.cursor; + // Set element styles + elem.style.userSelect = 'none'; + elem.style.touchAction = options.touchAction; + // The default for HTML is '50% 50%' + // The default for SVG is '0 0' + // SVG can't be changed in IE + setStyle(elem, 'transformOrigin', typeof options.origin === 'string' ? options.origin : isSVG ? '0 0' : '50% 50%'); + function resetStyle() { + parent.style.overflow = ''; + parent.style.userSelect = ''; + parent.style.touchAction = ''; + parent.style.cursor = ''; + elem.style.cursor = ''; + elem.style.userSelect = ''; + elem.style.touchAction = ''; + setStyle(elem, 'transformOrigin', ''); + } + function setOptions(opts) { + if (opts === void 0) { opts = {}; } + for (var key in opts) { + if (opts.hasOwnProperty(key)) { + options[key] = opts[key]; + } + } + // Handle option side-effects + if (opts.hasOwnProperty('cursor') || opts.hasOwnProperty('canvas')) { + parent.style.cursor = elem.style.cursor = ''; + (options.canvas ? parent : elem).style.cursor = options.cursor; + } + if (opts.hasOwnProperty('overflow')) { + parent.style.overflow = opts.overflow; + } + if (opts.hasOwnProperty('touchAction')) { + parent.style.touchAction = opts.touchAction; + elem.style.touchAction = opts.touchAction; + } + if (opts.hasOwnProperty('minScale') || + opts.hasOwnProperty('maxScale') || + opts.hasOwnProperty('contain')) { + setMinMax(); + } + } + var x = 0; + var y = 0; + var scale = 1; + var isPanning = false; + zoom(options.startScale, { animate: false }); + // Wait for scale to update + // for accurate dimensions + // to constrain initial values + setTimeout(function () { + setMinMax(); + pan(options.startX, options.startY, { animate: false }); + }); + function trigger(eventName, detail, opts) { + if (opts.silent) { + return; + } + var event = new CustomEvent(eventName, { detail: detail }); + elem.dispatchEvent(event); + } + function setTransformWithEvent(eventName, opts, originalEvent) { + var value = { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: originalEvent }; + requestAnimationFrame(function () { + if (typeof opts.animate === 'boolean') { + if (opts.animate) { + setTransition(elem, opts); + } + else { + setStyle(elem, 'transition', 'none'); + } + } + opts.setTransform(elem, value, opts); + }); + trigger(eventName, value, opts); + trigger('panzoomchange', value, opts); + return value; + } + function setMinMax() { + if (options.contain) { + var dims = getDimensions(elem); + var parentWidth = dims.parent.width - dims.parent.border.left - dims.parent.border.right; + var parentHeight = dims.parent.height - dims.parent.border.top - dims.parent.border.bottom; + var elemWidth = dims.elem.width / scale; + var elemHeight = dims.elem.height / scale; + var elemScaledWidth = parentWidth / elemWidth; + var elemScaledHeight = parentHeight / elemHeight; + if (options.contain === 'inside') { + options.maxScale = Math.min(elemScaledWidth, elemScaledHeight); + } + else if (options.contain === 'outside') { + options.minScale = Math.max(elemScaledWidth, elemScaledHeight); + } + } + } + function constrainXY(toX, toY, toScale, panOptions) { + var opts = __assign(__assign({}, options), panOptions); + var result = { x: x, y: y, opts: opts }; + if (!opts.force && (opts.disablePan || (opts.panOnlyWhenZoomed && scale === opts.startScale))) { + return result; + } + toX = parseFloat(toX); + toY = parseFloat(toY); + if (!opts.disableXAxis) { + result.x = (opts.relative ? x : 0) + toX; + } + if (!opts.disableYAxis) { + result.y = (opts.relative ? y : 0) + toY; + } + if (opts.contain) { + var dims = getDimensions(elem); + var realWidth = dims.elem.width / scale; + var realHeight = dims.elem.height / scale; + var scaledWidth = realWidth * toScale; + var scaledHeight = realHeight * toScale; + var diffHorizontal = (scaledWidth - realWidth) / 2; + var diffVertical = (scaledHeight - realHeight) / 2; + if (opts.contain === 'inside') { + var minX = (-dims.elem.margin.left - dims.parent.padding.left + diffHorizontal) / toScale; + var maxX = (dims.parent.width - + scaledWidth - + dims.parent.padding.left - + dims.elem.margin.left - + dims.parent.border.left - + dims.parent.border.right + + diffHorizontal) / + toScale; + result.x = Math.max(Math.min(result.x, maxX), minX); + var minY = (-dims.elem.margin.top - dims.parent.padding.top + diffVertical) / toScale; + var maxY = (dims.parent.height - + scaledHeight - + dims.parent.padding.top - + dims.elem.margin.top - + dims.parent.border.top - + dims.parent.border.bottom + + diffVertical) / + toScale; + result.y = Math.max(Math.min(result.y, maxY), minY); + } + else if (opts.contain === 'outside') { + var minX = (-(scaledWidth - dims.parent.width) - + dims.parent.padding.left - + dims.parent.border.left - + dims.parent.border.right + + diffHorizontal) / + toScale; + var maxX = (diffHorizontal - dims.parent.padding.left) / toScale; + result.x = Math.max(Math.min(result.x, maxX), minX); + var minY = (-(scaledHeight - dims.parent.height) - + dims.parent.padding.top - + dims.parent.border.top - + dims.parent.border.bottom + + diffVertical) / + toScale; + var maxY = (diffVertical - dims.parent.padding.top) / toScale; + result.y = Math.max(Math.min(result.y, maxY), minY); + } + } + return result; + } + function constrainScale(toScale, zoomOptions) { + var opts = __assign(__assign({}, options), zoomOptions); + var result = { scale: scale, opts: opts }; + if (!opts.force && opts.disableZoom) { + return result; + } + result.scale = Math.min(Math.max(toScale, opts.minScale), opts.maxScale); + return result; + } + function pan(toX, toY, panOptions, originalEvent) { + var result = constrainXY(toX, toY, scale, panOptions); + var opts = result.opts; + x = result.x; + y = result.y; + return setTransformWithEvent('panzoompan', opts, originalEvent); + } + function zoom(toScale, zoomOptions, originalEvent) { + var result = constrainScale(toScale, zoomOptions); + var opts = result.opts; + if (!opts.force && opts.disableZoom) { + return; + } + toScale = result.scale; + var toX = x; + var toY = y; + if (opts.focal) { + // The difference between the point after the scale and the point before the scale + // plus the current translation after the scale + // neutralized to no scale (as the transform scale will apply to the translation) + var focal = opts.focal; + toX = (focal.x / toScale - focal.x / scale + x * toScale) / toScale; + toY = (focal.y / toScale - focal.y / scale + y * toScale) / toScale; + } + var panResult = constrainXY(toX, toY, toScale, { relative: false, force: true }); + x = panResult.x; + y = panResult.y; + scale = toScale; + return setTransformWithEvent('panzoomzoom', opts, originalEvent); + } + function zoomInOut(isIn, zoomOptions) { + var opts = __assign(__assign(__assign({}, options), { animate: true }), zoomOptions); + return zoom(scale * Math.exp((isIn ? 1 : -1) * opts.step), opts); + } + function zoomIn(zoomOptions) { + return zoomInOut(true, zoomOptions); + } + function zoomOut(zoomOptions) { + return zoomInOut(false, zoomOptions); + } + function zoomToPoint(toScale, point, zoomOptions, originalEvent) { + var dims = getDimensions(elem); + // Instead of thinking of operating on the panzoom element, + // think of operating on the area inside the panzoom + // element's parent + // Subtract padding and border + var effectiveArea = { + width: dims.parent.width - + dims.parent.padding.left - + dims.parent.padding.right - + dims.parent.border.left - + dims.parent.border.right, + height: dims.parent.height - + dims.parent.padding.top - + dims.parent.padding.bottom - + dims.parent.border.top - + dims.parent.border.bottom + }; + // Adjust the clientX/clientY to ignore the area + // outside the effective area + var clientX = point.clientX - + dims.parent.left - + dims.parent.padding.left - + dims.parent.border.left - + dims.elem.margin.left; + var clientY = point.clientY - + dims.parent.top - + dims.parent.padding.top - + dims.parent.border.top - + dims.elem.margin.top; + // Adjust the clientX/clientY for HTML elements, + // because they have a transform-origin of 50% 50% + if (!isSVG) { + clientX -= dims.elem.width / scale / 2; + clientY -= dims.elem.height / scale / 2; + } + // Convert the mouse point from it's position over the + // effective area before the scale to the position + // over the effective area after the scale. + var focal = { + x: (clientX / effectiveArea.width) * (effectiveArea.width * toScale), + y: (clientY / effectiveArea.height) * (effectiveArea.height * toScale) + }; + return zoom(toScale, __assign(__assign({ animate: false }, zoomOptions), { focal: focal }), originalEvent); + } + function zoomWithWheel(event, zoomOptions) { + // Need to prevent the default here + // or it conflicts with regular page scroll + event.preventDefault(); + var opts = __assign(__assign({}, options), zoomOptions); + // Normalize to deltaX in case shift modifier is used on Mac + var delta = event.deltaY === 0 && event.deltaX ? event.deltaX : event.deltaY; + var wheel = delta < 0 ? 1 : -1; + var toScale = constrainScale(scale * Math.exp((wheel * opts.step) / 3), opts).scale; + return zoomToPoint(toScale, event, opts); + } + function reset(resetOptions) { + var opts = __assign(__assign(__assign({}, options), { animate: true, force: true }), resetOptions); + scale = constrainScale(opts.startScale, opts).scale; + var panResult = constrainXY(opts.startX, opts.startY, scale, opts); + x = panResult.x; + y = panResult.y; + return setTransformWithEvent('panzoomreset', opts); + } + var origX; + var origY; + var startClientX; + var startClientY; + var startScale; + var startDistance; + var pointers = []; + function handleDown(event) { + // Don't handle this event if the target is excluded + if (isExcluded(event.target, options)) { + return; + } + addPointer(pointers, event); + isPanning = true; + options.handleStartEvent(event); + origX = x; + origY = y; + trigger('panzoomstart', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); + // This works whether there are multiple + // pointers or not + var point = getMiddle(pointers); + startClientX = point.clientX; + startClientY = point.clientY; + startScale = scale; + startDistance = getDistance(pointers); + } + function move(event) { + if (!isPanning || + origX === undefined || + origY === undefined || + startClientX === undefined || + startClientY === undefined) { + return; + } + addPointer(pointers, event); + var current = getMiddle(pointers); + if (pointers.length > 1) { + // A startDistance of 0 means + // that there weren't 2 pointers + // handled on start + if (startDistance === 0) { + startDistance = getDistance(pointers); + } + // Use the distance between the first 2 pointers + // to determine the current scale + var diff = getDistance(pointers) - startDistance; + var toScale = constrainScale((diff * options.step) / 80 + startScale).scale; + zoomToPoint(toScale, current); + } + else { + // Panning during pinch zoom can cause issues + // because the zoom has not always rendered in time + // for accurate calculations + // See https://github.com/timmywil/panzoom/issues/512 + pan(origX + (current.clientX - startClientX) / scale, origY + (current.clientY - startClientY) / scale, { + animate: false + }, event); + } + } + function handleUp(event) { + // Don't call panzoomend when panning with 2 touches + // until both touches end + if (pointers.length === 1) { + trigger('panzoomend', { x: x, y: y, scale: scale, isSVG: isSVG, originalEvent: event }, options); + } + // Note: don't remove all pointers + // Can restart without having to reinitiate all of them + // Remove the pointer regardless of the isPanning state + removePointer(pointers, event); + if (!isPanning) { + return; + } + isPanning = false; + origX = origY = startClientX = startClientY = undefined; + } + var bound = false; + function bind() { + if (bound) { + return; + } + bound = true; + onPointer('down', options.canvas ? parent : elem, handleDown); + onPointer('move', document, move, { passive: true }); + onPointer('up', document, handleUp, { passive: true }); + } + function destroy() { + bound = false; + destroyPointer('down', options.canvas ? parent : elem, handleDown); + destroyPointer('move', document, move); + destroyPointer('up', document, handleUp); + } + if (!options.noBind) { + bind(); + } + return { + bind: bind, + destroy: destroy, + eventNames: events, + getPan: function () { return ({ x: x, y: y }); }, + getScale: function () { return scale; }, + getOptions: function () { return shallowClone(options); }, + pan: pan, + reset: reset, + resetStyle: resetStyle, + setOptions: setOptions, + setStyle: function (name, value) { return setStyle(elem, name, value); }, + zoom: zoom, + zoomIn: zoomIn, + zoomOut: zoomOut, + zoomToPoint: zoomToPoint, + zoomWithWheel: zoomWithWheel + }; + } + Panzoom.defaultOptions = defaultOptions; + + return Panzoom; + +}))); diff --git a/dist/panzoom.min.js b/dist/panzoom.min.js new file mode 100644 index 00000000..3020557b --- /dev/null +++ b/dist/panzoom.min.js @@ -0,0 +1,6 @@ +/** +* Panzoom for panning and zooming elements using CSS transforms +* Copyright Timmy Willison and other contributors +* https://github.com/timmywil/panzoom/blob/master/MIT-License.txt +*/ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Panzoom=e()}(this,function(){"use strict";var C=function(){return(C=Object.assign||function(t){for(var e,n=1,o=arguments.length;n void, eventOpts?: boolean | AddEventListenerOptions): void; +export declare function destroyPointer(event: 'down' | 'move' | 'up', elem: HTMLElement | SVGElement | Document, handler: (event: PointerEvent) => void): void; diff --git a/dist/src/isAttached.d.ts b/dist/src/isAttached.d.ts new file mode 100644 index 00000000..64be8691 --- /dev/null +++ b/dist/src/isAttached.d.ts @@ -0,0 +1,5 @@ +/** + * Determine if an element is attached to the DOM + * Panzoom requires this so events work properly + */ +export default function isAttached(elem: HTMLElement | SVGElement | Document): boolean; diff --git a/dist/src/isExcluded.d.ts b/dist/src/isExcluded.d.ts new file mode 100644 index 00000000..dbf1676f --- /dev/null +++ b/dist/src/isExcluded.d.ts @@ -0,0 +1,2 @@ +import { PanzoomOptions } from './types'; +export default function isExcluded(elem: Element, options: PanzoomOptions): boolean; diff --git a/dist/src/isSVGElement.d.ts b/dist/src/isSVGElement.d.ts new file mode 100644 index 00000000..965bcf54 --- /dev/null +++ b/dist/src/isSVGElement.d.ts @@ -0,0 +1 @@ +export default function isSVGElement(elem: HTMLElement | SVGElement): boolean; diff --git a/dist/src/panzoom.d.ts b/dist/src/panzoom.d.ts new file mode 100644 index 00000000..2676ab70 --- /dev/null +++ b/dist/src/panzoom.d.ts @@ -0,0 +1,17 @@ +/** + * Panzoom for panning and zooming elements using CSS transforms + * https://github.com/timmywil/panzoom + * + * Copyright Timmy Willison and other contributors + * Released under the MIT license + * https://github.com/timmywil/panzoom/blob/master/MIT-License.txt + * + */ +import './polyfills'; +import { PanzoomObject, PanzoomOptions } from './types'; +declare function Panzoom(elem: HTMLElement | SVGElement, options?: Omit): PanzoomObject; +declare namespace Panzoom { + var defaultOptions: PanzoomOptions; +} +export { PanzoomObject, PanzoomOptions }; +export default Panzoom; diff --git a/dist/src/pointers.d.ts b/dist/src/pointers.d.ts new file mode 100644 index 00000000..7a1526c8 --- /dev/null +++ b/dist/src/pointers.d.ts @@ -0,0 +1,17 @@ +/** + * Utilites for working with multiple pointer events + */ +export declare function addPointer(pointers: PointerEvent[], event: PointerEvent): void; +export declare function removePointer(pointers: PointerEvent[], event: PointerEvent): void; +/** + * Calculates a center point between + * the given pointer events, for panning + * with multiple pointers. + */ +export declare function getMiddle(pointers: PointerEvent[]): Pick; +/** + * Calculates the distance between two points + * for pinch zooming. + * Limits to the first 2 + */ +export declare function getDistance(pointers: PointerEvent[]): number; diff --git a/dist/src/shallowClone.d.ts b/dist/src/shallowClone.d.ts new file mode 100644 index 00000000..76570a92 --- /dev/null +++ b/dist/src/shallowClone.d.ts @@ -0,0 +1 @@ +export default function shallowClone(obj: any): any; diff --git a/dist/src/types.d.ts b/dist/src/types.d.ts new file mode 100644 index 00000000..2929ceb0 --- /dev/null +++ b/dist/src/types.d.ts @@ -0,0 +1,356 @@ +import { setTransform } from './css'; +export declare type PanzoomEvent = 'panzoomstart' | 'panzoomchange' | 'panzoompan' | 'panzoomzoom' | 'panzoomreset' | 'panzoomend'; +export interface PanzoomEventDetail { + x: number; + y: number; + scale: number; + isSVG: boolean; + originalEvent: PointerEvent | TouchEvent | MouseEvent; +} +export interface MiscOptions { + /** Whether to animate transitions */ + animate?: boolean; + /** + * This option treats the Panzoom element's parent + * as a canvas. Effectively, Panzoom binds the + * down handler to the parent instead of the Panzoom + * element, so that pointer events anywhere on the "canvas" + * moves its children. See issue #472. + * + * **Note**: setting this option to `true` also changes + * where the `cursor` style is applied (i.e. the parent). + */ + canvas?: boolean; + /** Duration of the transition (ms) */ + duration?: number; + /** CSS Easing used for transitions */ + easing?: string; + /** + * Add elements to this array that should be excluded + * from Panzoom handling. + * Ancestors of event targets are also checked. + * e.g. links and buttons that should not propagate the click event. + */ + exclude?: Element[]; + /** + * Add this class to any element within the Panzoom element + * that you want to exclude from Panzoom handling. That + * element's children will also be excluded. + * e.g. links and buttons that should not propagate the click event. + */ + excludeClass?: string; + /** + * `force` should be used sparingly to temporarily + * override and ignore options such as disablePan, + * disableZoom, and panOnlyWhenZoomed. + * This option cannot be passed to the + * Panzoom constructor or setOptions (to avoid + * setting this option globally). + * + * ```js + * // Overrides disablePan and panOnlyWhenZoomed + * panzoom.pan(50, 100, { force: true }) + * // Overrides disableZoom + * panzoom.zoom(1, { force: true }) + * ``` + */ + force?: boolean; + /** + * On the first pointer event, when panning starts, + * the default Panzoom behavior is to call + * `event.preventDefault()` and `event.stopPropagation()` + * on that event. The former is almost certainly a necessity; + * the latter enables Panzoom elements within Panzoom elements. + * + * But there are some cases where the default is + * not the desired behavior. Set this option to override that behavior. + * + * ```js + * // Only call preventDefault() + * Panzoom(elem, { + * handleStartEvent: (event) => { + * event.preventDefault() + * } + * }) + * // Do nothing. + * // This can change dragging behavior on mobile. + * Panzoom(elem, { + * handleStartEvent: () => {} + * }) + * ``` + */ + handleStartEvent?: (event: Event) => void; + /** + * Skip binding the default Panzoom event listeners + */ + noBind?: boolean; + /** + * **Change this at your own risk.** + * The `transform-origin` is the origin from which transforms are applied. + * Default: `'50% 50%'` for HTML and `'0 0'` for SVG. + * The defaults are set because changing the `transform-origin` on + * SVG elements doesn't work in IE. + * + * Changing this should work with many things, but + * it will break focal point zooming, which assumes the + * defaults are set to do the more complicated calculations. + * + * And again, changing this for SVG in IE doesn't work at all. + */ + origin?: string; + /** The overflow CSS value for the parent. Defaults to 'hidden' */ + overflow?: string; + /** + * Override the transform setter. + * This is exposed mostly so the user could + * set other parts of a transform + * aside from scale and translate. + * Default is defined in src/css.ts. + * + * ```js + * // This example always sets a rotation + * // when setting the scale and translation + * const panzoom = Panzoom(elem, { + * setTransform: (elem, { scale, x, y }) => { + * panzoom.setStyle('transform', `rotate(0.5turn) scale(${scale}) translate(${x}px, ${y}px)`) + * } + * }) + * ``` + */ + setTransform?: typeof setTransform; + /** Silence all events */ + silent?: boolean; + /** X Value used to set the beginning transform */ + startX?: number; + /** Y Value used to set the beginning transform */ + startY?: number; + /** Scale used to set the beginning transform */ + startScale?: number; + /** + * This value is used to set touch-action on both the + * Panzoom element and its parent. + * It is needed because that the native scroll on mobile + * interferes with panning and pinch zooming. + * Set this to empty string to re-enable scrolling + * on mobile, but note that both scrolling and panning + * cannot work at the same time. + */ + touchAction?: string; + /** Pass through any options like data */ + [key: string]: any; +} +export interface PanOnlyOptions { + /** + * Contain the panzoom element either + * inside or outside the parent. + * Inside: The panzoom element is smaller + * than its parent and cannot be panned + * to the outside. + * Outside: The panzoom element is larger + * than its parent and cannot be panned + * to the inside. In other words, no + * empty space around the element will be shown. + * + * **Note**: the containment pan adjustment is not affected by the `disablePan` option. + */ + contain?: 'inside' | 'outside'; + /** The cursor style to set on the panzoom element */ + cursor?: string; + /** + * Disable panning functionality. + * Note: disablePan does not affect focal point zooming or the contain option. + * The element will still pan accordingly. + */ + disablePan?: boolean; + /** Pan only on the Y axis */ + disableXAxis?: boolean; + /** Pan only on the X axis */ + disableYAxis?: boolean; + /** When passing x and y values to .pan(), treat the values as relative to their current values */ + relative?: boolean; + /** Disable panning while the scale is equal to the starting value */ + panOnlyWhenZoomed?: boolean; +} +export interface ZoomOnlyOptions { + /** Disable zooming functionality */ + disableZoom?: boolean; + /** + * Zoom to the given point on the panzoom element. + * This point is expected to be relative to + * the panzoom element's dimensions and is unrelated + * to the parent dimensions. + */ + focal?: { + x: number; + y: number; + }; + /** The minimum scale when zooming */ + minScale?: number; + /** The maximum scale when zooming */ + maxScale?: number; + /** The step affects zoom calculation when zooming with a mouse wheel, when pinch zooming, or when using zoomIn/zoomOut */ + step?: number; +} +export declare type PanOptions = MiscOptions & PanOnlyOptions; +export declare type ZoomOptions = MiscOptions & ZoomOnlyOptions; +export declare type PanzoomOptions = PanOptions & ZoomOptions & MiscOptions; +export interface CurrentValues { + x: number; + y: number; + scale: number; + isSVG?: boolean; +} +export interface PanzoomObject { + /** + * Bind the default down, move, and up event listeners to the Panzoom element. + * This does not normally need to be called. + * It gets called by default when creating a new Panzoom object, + * but can be skipped with the `noBind` option. + * + * ```js + * const panzoom = Panzoom(elem, { noBind: true }) + * // ... + * panzoom.bind() + * ``` + */ + bind: () => void; + /** Remove all event listeners bound to the the Panzoom element */ + destroy: () => void; + /** + * This object exposes the event names used by Panzoom, + * depending on the current browser's support for + * Pointer or Touch events. + */ + eventNames: { + down: string; + move: string; + up: string; + }; + /** Get the current x/y translation */ + getPan: () => { + x: number; + y: number; + }; + /** Get the current scale */ + getScale: () => number; + /** Returns a _copy_ of the current options object */ + getOptions: () => PanzoomOptions; + /** + * Pan the Panzoom element to the given x and y coordinates + * + * ```js + * // Translates the element to 50px, 100px + * panzoom.pan(50, 100) + * // Pans the element right 10px and down 10px from its current position + * panzoom.pan(10, 10, { relative: true }) + * ``` + */ + pan: (x: number | string, y: number | string, panOptions?: PanOptions) => CurrentValues; + /** + * Reset the pan and zoom to startX, startY, and startScale. + * Animates by default, ignoring the global option. + * Pass `{ animate: false }` to override. + * Reset ignores the `disablePan`, `disableZoom`, and `panOnlyWhenZoomed` options. + * Pass `{ force: false }` to override. + * + * ```js + * panzoom.reset() + * panzoom.reset({ animate: false }) + * ``` + */ + reset: (resetOptions?: PanzoomOptions) => CurrentValues; + /** + * Reset the styles set on the Panzoom element + * and its parent (such as overflow, cursor, etc.) + * + * ```js + * panzoom.resetStyle() + * ``` + */ + resetStyle: () => void; + /** + * Change any number of options on a Panzoom instance. + * Setting some options will have side-effects. + * For instance, changing the cursor option + * will also set the cursor style. + * + * ```js + * const panzoom = Panzoom(elem, { cursor: 'move' }) + * // ... + * panzoom.setOptions({ cursor: 'default' }) + * ``` + */ + setOptions: (options?: PanzoomOptions) => void; + /** A convenience method for setting prefixed styles on the Panzoom element */ + setStyle: (name: string, value: string) => void; + /** + * Zoom the Panzoom element to the given scale + * + * ```js + * panzoom.zoom(2.2) + * panzoom.zoom(2.2, { animate: true }) + * ``` + */ + zoom: (scale: number, zoomOptions?: ZoomOptions) => CurrentValues; + /** + * Zoom in using the predetermined increment set in options. + * Animates by default, ignoring the global option. + * Pass `{ animate: false }` to override. + * + * ```js + * panzoom.zoomIn() + * panzoom.zoomIn({ animate: false }) + * ``` + */ + zoomIn: (zoomOptions?: ZoomOptions) => CurrentValues; + /** + * Zoom out using the predetermined increment set in options. + * Animates by default, ignoring the global option. + * Pass `{ animate: false }` to override. + * + * ```js + * panzoom.zoomOut() + * panzoom.zoomOut({ animate: false }) + * ``` + */ + zoomOut: (zoomOptions?: ZoomOptions) => CurrentValues; + /** + * Zoom the Panzoom element to a focal point using + * the given pointer/touch/mouse event or constructed point. + * The clientX/clientY values should be calculated + * the same way as a `pointermove` event on the Panzoom element's parent. + * + * ```js + * panzoom.zoomToPoint(1.2, pointerEvent) + * ``` + */ + zoomToPoint: (scale: number, point: { + clientX: number; + clientY: number; + }, zoomOptions?: ZoomOptions) => CurrentValues; + /** + * Zoom the Panzoom element to a focal point using the given WheelEvent + * + * + * This is a convenience function that may not handle all use cases. + * Other cases should handroll solutions using the `zoomToPoint` + * method or the `zoom` method's focal option. + * + * **Note**: the focal point zooming pan adjustment is not affected by the `disablePan` option. + * + * ```js + * // Bind to mousewheel + * elem.parentElement.addEventListener('wheel', panzoom.zoomWithWheel) + * // Bind to shift+mousewheel + * elem.parentElement.addEventListener('wheel', function(event) { + * if (!event.shiftKey) return + * // Panzoom will automatically use `deltaX` here instead + * // of `deltaY`. On a mac, the shift modifier usually + * // translates to horizontal scrolling, but Panzoom assumes + * // the desired behavior is zooming. + * panzoom.zoomWithWheel(event) + * }) + * ``` + */ + zoomWithWheel: (event: WheelEvent, zoomOptions?: ZoomOptions) => CurrentValues; +} diff --git a/package-lock.json b/package-lock.json index 2098fa2e..31abcc24 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@panzoom/panzoom", - "version": "4.4.0", + "version": "4.4.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index a100979f..adcf88e4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@panzoom/panzoom", - "version": "4.4.0", + "version": "4.4.1", "description": "Pan and zoom elements anywhere using native transformations", "main": "dist/panzoom.js", "module": "dist/panzoom.es.js",